逆幂法求解矩阵的最小特征值及对应的特征向量
1.算法实现
逆幂法也采用迭代运算得到特征值和对应特征向量,具体步骤见下,
2. 实例及matlab应用
clear;clc;
A=[5.2 4.8 7.8 4.9
6 4.4 8.8 5.0
5.7 5.7 7.8 6.9
5.4 5 6.4 4.4]
x0=[1;1;1;1]
eps=1e-8
N=20 %迭代次数
[t,y]=invmi(A,x0,eps,N) % t 为所求特征值,y是对应特征向量
function [s,y]=invmi(A,x0,eps,n)
k=1; r=0;
y=x0./max(abs(x0));
[L,U]=lu(A);
z=L\y;
x=U\z;
u=max(x);
s=1/u;
if abs(u-r)<eps
return
end
while abs(u-r)>eps && k<n
k=k+1;
r=u;
y=x./max(abs(x));
z=L\y;
x=U\z;
u=max(x);
end
[m,index]=max(abs(x));
s=1/x(index);
end