利用矩阵初等变换进行对角化

利用矩阵初等变换进行对角化目录矩阵初等变换对角化证明矩阵初等变换记某矩阵为 其中为维度为 n 的行向量 则行初等变换有以下三种 1 交换两行的位置 2 3 同样的 对应的列初等变换就是把行向量换成列向量即可 为什么这些变换被称为矩阵的初等变换呢 或者说这些操作有什么特点呢 如果我们把矩阵看成一个多元一次齐次线性方程组的系数矩阵的话 那么很显然 这些操作并不会改变该方程组的解空间 即加入某个向量是变换前的解 那么一定也是变换后的解 反

目录

矩阵初等变换

对角化

证明


矩阵初等变换

        记某矩阵为\begin{pmatrix} \alpha_{1}\\ ...\\ \alpha_{n} \end{pmatrix},其中\alpha_{1},...,\alpha_{n}为维度为n的行向量。则行初等变换有以下三种:

1. 交换两行的位置;

2. \alpha_{i}=k\cdot \alpha_{i}

3. \alpha_{i}=k\cdot \alpha_{j}+\alpha_{i}

同样的,对应的列初等变换就是把行向量换成列向量即可。

        为什么这些变换被称为矩阵的初等变换呢?或者说这些操作有什么特点呢?

        如果我们把矩阵看成一个多元一次齐次线性方程组的系数矩阵的话,那么很显然,这些操作并不会改变该方程组的解空间,即加入某个向量是变换前的解,那么一定也是变换后的解,反之亦然。因此,矩阵的初等变换(无论是行初等变换还是列初等变换)实际上就是不会改变解空间的简单变换(解空间实际上就是核空间)。这一特点对矩阵的后续研究有重要的意义。

对角化

命题:对于秩为k的nxn的矩阵A,一定可以通过矩阵初等变换成如下形式:

\begin{pmatrix} 1 &... &0 & ... &b_{1,n} \\ ...&... &... &... &... \\ 0& ...& 1 & ...& b_{k,n}\\ ...&... &... & ..& ...\\ 0 &... &0 &... &0 \end{pmatrix}=\begin{pmatrix} E_{k,k} &B_{k,n-k} \\ O_{n-k,k} & O_{n-k,n-k} \end{pmatrix}

即可以通过矩阵初等变换,让矩阵对角化。其中E_{k,k}表示kxk的单位矩阵,O_{i,j}表示ixj的元素为0的矩阵,B_{i,j}表示ixj的任意矩阵。

证明

1. 由于矩阵的秩为k,那么该方程组只有k个有效方程,并且这k个有效方程的系数向量是线性无关的。因为根据秩的定义,这n个方程都可以由这k个方程的线性组合得到,即这n个方程的解和这k个有效方程的解是完全一样的,因此,我们可以很容易的通过初等变换将系数矩阵变换成如下的形式:

\begin{pmatrix} M_{k,n}\\ O_{n-k,n} \end{pmatrix}

2. 接下来,我们只要证明M_{k,n}可以转成(E_{k,k},B_{k,n-k})即可。

a. 首先我们看第一个行向量\alpha_{1},由于是线性无关非零向量,因此必存在非零元素\alpha_{1,i},将第i列通过列初等变换和第一列进行互换,再将该行除以\alpha_{1,i},便将第一行第一列变成了1;然后将第一列除了第一个元素外的任意元素,记为\alpha_{j,1}都减去\alpha_{j,1}\cdot \alpha_{1},便可以将第一列除了第一个元素外,其他元素都变成0。

b. 然后再看变换后得到的第二个行向量,可知必存在非零元素。因为如果是全零的向量,那么因为该向量只经过初等变换,也就是跟其他行向量的线性组合得到的,由此可以推出该向量和其他行向量是线性相关的,这个和前提矛盾,因此必存在非零元素。同样的,将该非零元素所在的列和第二列互换,然后重复a的操作即可。直至第k个行向量,就可以将M_{k,n}转成(E_{k,k},B_{k,n-k})

        这里需要强调的是,假设上述操作已经进行到第i个行向量了,由于经过上述操作后,第i行的第1到i-1的元素全都是0,因此第i行和其他行的线性组合并不会影响到其他行的第1到i-1列的元素的值,也就是对之前进行的a,b操作得到的结果不会造成影响。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/233634.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • python字典和json字符串相互转化的方法_pythonjson文件存储

    python字典和json字符串相互转化的方法_pythonjson文件存储序列化与反序列化按照某种规则,把内存中的数据保存到文件中,文件是一个字节序列,所以必须要把内存数据转换成为字节序列,输出到文件,这就是序列化;反之,从文件的字节恢复到内存,就是反序列化;pytho

    2022年7月29日
    10
  • 【转载】究竟啥才是互联网架构“高可用”

    【转载】究竟啥才是互联网架构“高可用”

    2021年11月20日
    48
  • 通过pycharm安装python_JAVA开发环境

    通过pycharm安装python_JAVA开发环境Python开发环境搭建与helloWorld测试1.去官网下载然后傻瓜式安装2.下载开发IDE:这里选用pychram下载地址:pychram官网新建一个工厂后写简单的helloworld然后:找到你工程的文件,Helloworld.py最后点击OK即可看运行结果:pycha…

    2022年8月27日
    4
  • Linux 操作系统原理 — 操作系统的本质「建议收藏」

    Linux 操作系统原理 — 操作系统的本质「建议收藏」目录文章目录目录操作系统的起源操作系统和高级编程语言使硬件抽象化操作系统的起源在操作系统尚不存在的年代,人们通过各种按钮来控制计算机,这一过程非常麻烦。于是,有人开发出了仅仅具有加载和运行功能的监控程序(Supervisor),这就是操作系统的原型。通过监控程序,程序员可以根据需要将各种应用程序加载到内存中运行。虽然仍旧比较麻烦,但现在开发的工作量得到了很大的缓解。随着时代的发展,人们…

    2025年7月1日
    4
  • spin_lock & mutex_lock的差别?

    spin_lock & mutex_lock的差别?

    2021年11月13日
    55
  • python ddos攻击_DDoS攻击工具

    python ddos攻击_DDoS攻击工具DDoS攻击工具综合性工具综合性工具除了可以进行DDoS攻击外,还可用于其他的用途,例如:端口扫描、安全审计、防火墙等。实际上,大部分综合性工具开发的原始目的并不是用于DDoS,而是“网络检查或测试工具”Hping?Hping是一个编码和解码TCP/IP协议的命令行开发工具,常用于测试网络及主机的安全,同时也可以做安全审计、防火墙测试等工具的标配工具;Hping的命令行就像常用的ping命令,不…

    2022年7月27日
    18

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号