xk??kk????????kn2?1?a1u1?a2??u2?????an??un??????1??1?????所以
k?11????2???n??a1u1?a2??u2?????an??un??????1??1???kk
?当k??时,mk?xk???1 (5.10)
因此当k充分大时,mk就是按模最大的特征值?1的近似值。
利用式(5.9)可得
yk?xkxk??Ayk?1xkk??Axk?1xk?
?xk?1?????Ax0xk?xk?1????x0 (5.11)
?另一方面,有
Ax0k??Ay0x0k?1k???Ay0k?1k?x0x0?
?AAy0y1?x0??Ax1??
?Ak?1x1?x0? (5.12)
? ? ?xk?xk?1????x0?
将式(5.12)代入式(5.11),有
kk????????kn2?1?a1u1?a2??u2???an??un??????1??1???yk?Ax0Ax0k?k?????2???n???a1u1?an??u2???an??un?????1???1???k1kk
?从而
当k??时,yk?u1u1? (5.13)
这说明归一化向量序列?yk?收敛于按模最大的特征值所对应的特征向量。因此,当k充分大时,?yk?就是特征向量u1的近似值。
6
5.1.4 幂法的计算步骤
为节省篇幅,这里仅介绍?1??2??3????n。 1.输入
矩阵的阶n,系数aij(i?1,?,n;j?1,?,n),初始向量y0=(1,1,?,1),允许误差epT
2.输出
特征值?和特征向量yi(i?1,2,?,n) 3.计算步骤
1)给出迭代先导条件 计算公式 s?2ep 对应语句 s=2*ep;
2)用幂法求按模最大特征值及特征向量 计算公式 式(5.7) 对应语句
while(s>ep)
{ for(j=1;j<=n;j++)
x[i]=x[i]+a[i][j]*y[j]; m=fabs(x[1]); p=1;
for(i=2;i<=n;i++) if(fabs(x[i])>m) { m=fabs(x[i]); P=i; }
S=0;
for(i=1;i<=n;i++) s=s+(x[i]-m*y[i]); for(i=1;i<=n;i++) y[i]=x[i]/m;
}
5.1.5 幂法的计算实例
例2 用幂法求矩阵
?2?1A????12??0?1的按模最大特征值和相应的特征向量(ep?10?4)。
解 取xT0?(1,1,1),用幂法迭代公式
7
0??1?? 2?? mk?max(xk)?xk yk?xkmk?xkxk??
k?0,1,???
xk?1?Αyk 计算结果如表5.2所示。
表5.2 幂法迭代公式计算结果表
k xi(k)0 1.000 0 1 2.000 0 2 3.000 0 3 2.500 0 4 2.428 6 -3.128 6 -2.428 6 3.428 570 5 2.416 7 -3.416 7 2.416 7 3.416 7 0.707 3 -1.000 0 0.707 3 6 2.414 6 -3.414 6 2.414 6 3.414 6 0.707 1 -1.000 0 0.707 1 1.000 0 -2.000 0 -4.000 0 -3.500 0 1.000 0 2.000 0 3.000 0 2.500 0 1.000 0 2.000 0 4.000 0 3.500 0 mk 1.000 0 1.000 0 0.750 0 0.714 3 0.708 3 ?k?-1.000 0 yi 0.000 0 -1.000 0 -1.000 0 -1.000 0 1.000 0 1.000 0 0.750 0 0.714 3 0.708 3 T所以?1?m6?3.414634,u1?y6?(0.707143,?1,0.707143)。事实上,矩阵A的最大特征值
为?1?2?2,其对应的特征向量u1?(22,?1,22)。
T 5.2 逆幂法
逆幂法的功能是求A按模最小特征值和和特征向量。
设A为非奇异方阵,?1??2??????n为A的特征值,u1,???,un为其相应的特征向量,则A?1的特征值为
1?1???1?1?2?n其相应的特征向量仍为u1,???,un。A?1按模最大特征值的倒数则为阵A按
模最小特征值。
5.2.1 逆幂法的计算公式
取x?0,计算向量序列
xk?1?A?1xk,k?0,1,??? (5.14)
它等价于
Axk?1?xk,k?0,1,??? (5.15)
8
这样一来,我们可以通过反迭代过程,即通过解方程组(5.14)求得xk?1。
当?n?1??n,an?0,k充分大时,则有
?n?xix(k)(k?1)i,un?xk?1 (5.15)
在实际计算中,为了减少运算量,可先将A作三角分解
A?LU
然后再解两个三角形方程组就可以了,再考虑到防止数据溢出,即得逆幂法的实际迭代步骤如下: (1)对A作LU分解 (2)解方程组
LUx(k?1)?y(k)
即解
?Lz(k?1)?y(k)?(k?1)(k?1)?z?Ux?(k) x?(k)??y(k)||x||???y(0)?(1,1,?,1)T或y(0)?(1,0,?,0)T?令
?maxxi(k)?x(pk)?imk??(k)(k)??xp??maxxi?ixpx(k)p(k)?0 ?0?min?1mk
迭代条件为
||x(k)?mky(k)||??
5.2.2 逆幂法的计算步骤
逆幂法的迭代过程与幂法一样,前面已经介绍过LU骤。
例1 用逆幂法求矩阵
?2?A??1??0??12?10???1 ?2??分解法,这里不再详细叙述逆幂法的计算步
按模最小特征值及相应特征向量。(精度??0.05) 解 先对A作三角分解A?LU
9
??1?1L????2???0?01?23?0??0???1?????2?U??0????0??1320?0???1? ??4??3?取x0?(1,0,0)T,用逆幂法迭代公式
yk?xkxk?;Lzk?yk;Uxk?1?zk k?0,1,???
得计算结果如表5.3所示。
表 5.3 逆幂法迭代公式计算结果
k xi(k)0 1.000 000 0.000 000 0.000 000 1 0.250 000 0.500 000 0.750 000 0.750 000 0.333 333 0.666 667 1.000 000 0.333 333 0.833 333 1.555 551 1m52 0.500 000 1.333 333 1.166 667 1.333 333 0.375 000 1.000 000 0.875 000 0.375 000 1.875 000 1.666 667 3 0.937 500 1.500 000 1.250 000 1.500 000 0.625 000 1.000 000 0.833 333 0.625 000 1.312 500 1.708 333 4 1.177 083 1.729 167 1.281 250 1.729 160 0.680 722 1.000 000 0.749 640 0.680 722 1.340 361 1.634 538 5 1.180 722 1.710 843 1.225 904 1.710 843 mk 1.000 000 1.000 000 yi(k) 0.000 000 0.000 000 1.000 000 0.500 000 0.333 333 zi(k) 从上表可看出,?min??0.5845作为按模最小的特征值的近似值,
x(5)?(1.1807,1.7108,1.2590)作为相应的特征向量的近似值,而A的按模最小的特征值的理论值为
T2?2?0.5859.
~?5.2.4 用逆幂法求在附近的特征值的计算公式 ~设与?最接近的特征值为?i,即有
?|?|????|,j?i,j?1,?,n |?i??j?I,它的特征值及相应特征向量为 作矩阵A???和u,j?1,???,n ?j??j??j 10
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库第五章 求矩阵特征值和特征向量(2)在线全文阅读。
相关推荐: