对于任意一个矩阵,不同特征值对应的特征向量线性无关。
对于实对称矩阵或埃尔米特矩阵来说,不同特征值对应的特征向量必定正交(相互垂直)。
一、特征值和特征向量的几何意义
特征值和特征向量确实有很明确的几何意义,矩阵(既然讨论特征向量的问题,当然是方阵,这里不讨论广义特征向量的概念,就是一般的特征向量)乘以一个向量的结果仍是同维数的一个向量。因此,矩阵乘法对应了一个变换,把一个向量变成同维数的另一个向量。
那么变换的效果是什么呢?这当然与方阵的构造有密切的关系,比如可以取适当的二维方阵,使得这个变换的效果就是将平面上的二维变量逆时针旋转30度。这时,我们可以思考一个问题,有没有向量在这个变换下不改变方向呢?可以想一下,除了零向量,没有其他向量可以在平面上旋转30度而不改变方向的,所以这个变换对应的矩阵(或者说这个变换自身)没有特征向量(注意:特征向量不能是零向量)。
综上所述,一个变换(或者说矩阵)的特征向量就是这样一种向量,它经过这种特定的变换后保持方向不变,只是进行长度上的伸缩而已。再想想特征向量的原始定义:
可以很容易看出,cx是方阵A对向量x进行变换后的结果,显然cx和x的方向相同。而且x是特征向量的话,ax也是特征向量(a是标量且不为零),所以特征向量不是一个向量而是一个向量族。
另外,特征值只不过反映了特征向量在变换时的伸缩倍数而已。对一个变换而言,特征向量指明的方向才是很重要的,特征值不那么重要。虽然我们求这两个量时先求出特征值,但特征向量才是更本质的东西!
特征向量是指经过指定变换(与特定矩阵相乘)后不发生方向改变的那些向量,特征值是指在经过这些变换后特征向量的伸缩的倍数。
二、特征值和特征向量的计算
使用Matlab求矩阵的特征值和特征向量:
矩阵D的对角线元素存储的是A的所有特征值,而且是从小到大排列的。矩阵V的每一列存储的是相应的特征向量,因此V的最后一列存储的就是矩阵A的最大特征值对应的特征向量。
三、特征值和特征向量的性质
性质1. n阶方阵A=(aij)的所有特征根为l1,l2,…, ln(包括重根),则
性质2. 若 l 是可逆阵A的一个特征根,x为对应的特征向量,则 是A-1的一个特征根,x仍为对应的特征向量。
性质3. 若 l 是方阵A的一个特征根,x为对应的特征向量,则lm是Am的一个特征根,x仍为对应的特征向量。
性质4. 设 l1,l2,…, lm是方阵A的互不相同的特征值。xj是属于li 的特征向量( i=1,2,…,m),则 x1,x2,…,xm线性无关,即不相同特征值的特征向量线性无关 。
性质4可推广为:设 l1,l2,…, lm为方阵A的互不相同的特征值,x11,x12,…,x1,k1是属于l1的线性无关特征向量,……,xm1,xm2,…,xm,k1是属于lm 的线性无关特征向量。则向量组 x11,x12,…,x1,k1,…, xm1,xm2,…,xm,k1也是线性无关的。即对于互不相同特征值,取他们各自的线性无关的特征向量,则把这些特征向量合在一起的向量组仍是线性无关的。
注:
埃尔米特矩阵(Hermitian matrix)(又称“自共轭矩阵”)是共轭对称的方阵。埃尔米特矩阵中每一个第i行第j列的元素都与第j行第i列的元素共轭相等。
实战:
>> s = rand(5,5)
s =
0.4154 0.9708 0.2140 0.4120 0.6833
0.3050 0.9901 0.6435 0.7446 0.2126
0.8744 0.7889 0.3200 0.2679 0.8392
0.0150 0.4387 0.9601 0.4399 0.6288
0.7680 0.4983 0.7266 0.9334 0.1338
>> [v,d]=eig(s) 注意此处特征向量是列向量
v =
-0.4227 -0.4722 -0.4188 - 0.1682i -0.4188 + 0.1682i -0.1582
-0.4516 0.1951 -0.0102 - 0.2302i -0.0102 + 0.2302i -0.5438
-0.4854 -0.3016 -0.3792 + 0.4338i -0.3792 - 0.4338i -0.1948
-0.4010 -0.2272 0.6253 0.6253 0.6335
-0.4701 0.7722 0.1425 - 0.0057i 0.1425 + 0.0057i 0.4899
d =
2.8494 0 0 0 0
0 -0.7683 0 0 0
0 0 -0.0162 + 0.4947i 0 0
0 0 0 -0.0162 - 0.4947i 0
0 0 0 0 0.2506
s*v(:,1)
ans =
-1.2043
-1.2869
-1.3831
-1.1425
-1.3395
2.8494*v(:,1)
ans =
-1.2043
-1.2869
-1.3831
-1.1425
-1.3395
s*v(:,1) = 2.8494*v(:,1)