关于n对角矩阵数据结构_思考(1)矩阵的特征值、特征向量、代数重数、几何重数与相似对角化...
·
本文为原创,如有错误疏漏,烦请指出。如需转载,请联系笔者,Dr.shenyue@http://gmail.com。
一、方阵的特征值和特征向量
问题思考:
某个特征值
探索
- 对于n维单位矩阵
,我们知道任何一个向量x,有
。所以对于单位矩阵,对应于特征值1的eigenspace——
的维数是n。
- 单位矩阵是eigenspace正好等于n,一般的对角矩阵是怎样?
,对于特征值2,它的特征向量是
,a、b可以是任意取值(可以相等,可以不相等,但不能同时为0)值,所以特征值2的特征空间为2维,它的eigenspace——
的基为
和
。对于特征值4,它的特征向量是
,eigenspace——
维数为1,基为
。所以两个eigenspace——
和
不同特征值的eigenspace是线性无关的(因为如果不是线性无关的,那么该特征向量会同时是两个特征值的,所以只能是线性无关)。一共是2+1=3维,恰好等于n,而且我们发现
- 以上可看出对角矩阵的所有eigenspace的维数加起来等于
。假设A的特征值
的eigenspace——
有
维(可能
,可能
),
的eigenspace——
有
维(可能
,可能
),以此类推。再假设所有r个eigenspace合起来有n维,也就是
。所有r个eigenspace合起来一共n维的空间中,任选一组基
, 显然
到
都是
的列向量。由于
,重新写为
其中
可能为0,可能不为0。令
(n阶方阵),重写上式
。因为
中的列向量都是线性无关的,也就是n阶方阵P的秩rank(P)=n,所以A矩阵可以通过
进行相似对角化。显然如果
,而是
,那么P矩阵就是
的矩阵,P不再是n阶方阵,rank(P)=
,所以矩阵P不可逆,也就无法通过
对A矩阵进行相似对角化。
- 因此只有当所有特征值对应的特征空间(不同的特征值,对应的特征向量一定线性不相关)合起来的维数为n时,才可以相似对角化。而且我们从上面可知,不同的
的书写顺序,对应的对角矩阵里面
的顺序也不同。
- 我们知道
,
。多项式
中,
的次数为
特征值次(又叫做
Algebraic multiplicity,因为它是代数多项式中的代数重数
的次数),
有
次,以此类推。假设
的eigenspace——
的维数
特征值(又叫做
Geometric multiplicity,因为它是几何空间中向量的维数),那么问题来了,特征值的几何重数
的代数重数是否等于它的几何重数?答案是代数重数
几何重数,即。例如:特征值为2,
。
,所以
的维数为
(多项式的
的次数) 。
- 既然
,所以
。因为
,也就是所有特征值对应的eigenspace合起来的
个基向量组成的矩阵
,不是方阵,所以无法有
,也就是无法通过有
进行相似对角化。Jordan Canonical Form Theorem告诉我们是由于r个特征空间维数的和
退而求其次,可以将A矩阵相似变换成m个Jordan block(约当块)的对角形式:,无法相似对角化,但是我们可以
,其中第i
个约当块为
。那么问题来了,把n阶方阵A相似变换成约当块对角型
的n阶
长什么样?除了r个特征值对应的
个基向量,剩下的
个列向量是什么?
- 可进行相似对角化的矩阵A,它对角化后
的每个对角元
都对应
矩阵的某个特征值的eigenspace中的一个基向量(当然了,基向量组又可以自己去选),特征值
就对应P矩阵的
个基,特征值
就对应P矩阵的
个基,以此类推。那么对于不可相似对角化而只能相似约当块对角化
每个Jordan block也对应某个特征值的eigenspace中的一个基向量,所以如果特征值的矩阵A,
的eigenspace有3维,那么
就对应3个Jordan block。所以如果把n阶方阵A相似变换成约当块对角型
的约当块的个数一共为
,也就是所有eigenspace合起来的维数
,注意这里m并不等于特征值的个数
,也不是
。
- 假设特征值
的eigenspace——
有
2维,就对应有
,那么2个约当块
的第一个约当块是
,size=3。还是
,size=2。还是
,size=1?或者是其他的size呢?怎么算出它的size呢?
的第二个约当块
又是什么size呢,又怎么算出它的size呢?不过有一点我们可以推断的是,由于A与
相似,所以
所以特征值,
的
(几何重数) 个约当块的size之和一定等于
也就是(代数重数) ,
的次数。我们在这里理清了几何重数与代数重数的关系。显然如果特征值的约当块全是size=1的,那么特征值
代数重数=几何重数。只要特征值的
有一个约当块的size
2,那么特征值
的 代数重数
几何重数。如果约当块全是size=1的,那么特征值
的 代数重数=几何重数。
- 我们知道
,由于
其中*代表可能为0或者1。假设特征值
的代数重数为11,那么
的对角线上有11个0;特征值
的几何重数为5,所以对应有5个约当块,这5个约当块加起来的size等于
对角线上0的个数=11。
=5 (也就是几何重数),说明有5个至少size为1的约当块;
=9,说明有9-5=4个至少size为2的约当块;
=11,说明有(11-9)个至少size为3的约当块。由于
恰好等于代数重数11,到头了,说明特征值
没有比3更大size的约当块,说明特征值
对应的5个约当块中最大的size为3。所以size为3的约当块有11-9=2个,size为2的约当块有(9-5)-(11-9)=2个,size为1的约当块为5-(9-5)=1个。2+2+1=5个约当块,也就是特征值
的几何重数为5。
- 另一个角度,任取某个特征值
的eigenspace的某个基
,那么我们有
。如果能找到
使得
有解,也就是
的解,也就是线性齐次方程
的解至少有1维,也就是
的零空间维数
至少为1,说明对应于
的Jordan block的size至少为2;如果进一步,能找到
使得
,也就是
的零空间维数
至少为1维,那么对应
的Jordan block的size至少为3,一直这么找下去,直到找不到变量满足为止。如果最大size的Jordan block为
,我们设它对应的最底层的变量为u,也就是找不到下一个变量
满足
,我们往上推。因为u是由
一级一级推过来的,重写成
,一直到
。因为
是
的eigenspace的某个基,所以
,由
,我们有
。
- 假设A矩阵有两个特征值
和
。对于特征值
,假设
的解有2维,也就是
的eigenspace有2维,所以对应
的Jordan block一共有2个。任意选取
eigenspace的一组基
、
。假设对于
的Jordan block的size为3,也就是能找到
,却无法找到
满足
,所以
,也就是
对于
的Jordan block的size为 1,也就是无法找到
满足
,
。对于特征值
,假设
的解只有1维,也就是
的eigenspace有1维,所以对应
的Jordan block只有1个。任意选取
eigenspace的基
,假设对于
我们发现Jordan block的size为2,也就是能找到
满足
,却无法找到
满足
,所以
,
最后我们有使得A矩阵约当块对角化的P矩阵:
这样我们就找到了P阵。类似,我们可以把P矩阵里的向量进行别的排序。
叫做
的特征向量
的广义特征向量,
的广义特征空间维数是2。
叫做
的特征向量
的广义特征向量,
的广义特征空间维数是1。
- 之所以称
为
的特征向量,而
为
的广义特征向量,不是特征向量,是因为
由
,加上
,我们代入到
,我们有
。
- 特别补充:如果实矩阵
有复数根,由于A是实数矩阵,所以多项式
复数的根永远会成对出现,相应地特征向量也是成对出现。假设复数根为
(注意a,b是标量常数),它特征空间假设只有1维(几何空间),对应的jordan block只有一个,取特征向量为
(注意
)。
- 假设
广义特征向量为两维,对应的2+4i的jordan block为
。
所以最后总结回答问题:每一个特征值,都对应一个eigenspace,那么A的所有特征空间(eigenspace)的维数加起来是不是恰好等于n?A的所有eigenspace会不会小于n?
答案:1. 对于可对角化的n维方阵矩阵A,当它有0特征值时,如果0特征值的eigenspace维数=a,那么它的所有非零特征值的eigenspace合起来的维数=n-a。A的所有eigenspace的维数是a+n-a=n,恰好等于n。
2. 对于只能约当块对角化的n维方阵A,当它有0特征值时,如果0特征值的Jordan block有a个,也就是0特征值的eigenspace的维数为a,0特征值的a个Jordan block广义特征向量的维数加起来为b,其他各个非零特征值的eigenspace维数加起来为c,这c个Jordan block的广义特征空间的维数加起来为d,这时a+b+c+d=n,A的所有eigenspace的维数是a+c<n。
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)