【matlab】 幂法 求解最大特征值
一. 算法:
1.输入矩阵A,初始向量x误差限ep,最大迭代次数N
2.置 k = 1, m1 = 0;
3.求Xr-> norm(x) abs(Xr)=max[Xi] 1<=i<=n
4.计算 y = x/norm(u)
5. 若m1-m 小于误差限 输出结果,停止 否则 to6
6.若k<N k++ norm(x) = m1
二.程序:
A = [-6.9,14,0; -5,10.1,0; -1,0,-0.1]; N=100; ep=1e-4; n=length(A); u=ones(n,1); index=0; k=0; m1=0; while k<=N v=A*u; m=max(abs(v)); u=v/m if abs(m-m1)<ep index=1; break; end m1=m; k=k+1; end m %特征值 u/norm(u) %特征向量 [vv,ll]=eig(A); %matlab求解的特征值和特征向量 [mm,ii]=max(abs(diag(ll))); m_matlab=mm v_matlab=vv(:,ii)
相关推荐
wwwdownmacom 2020-09-14
wanff0 2020-07-26
cuiguanjun 2020-07-26
HongAndYi 2020-07-04
知识小屋 2020-06-24
wanff0 2020-06-14
cuiguanjun 2020-06-13
liqing 2020-06-13
algorithmlixuan 2020-06-12
faustcao 2020-06-12
GerwelsJI 2020-06-09
zyazky 2020-06-08
cuiguanjun 2020-06-05
Canethui 2020-05-31
Canethui 2020-05-30
zyazky 2020-05-29
zyazky 2020-05-19
zyazky 2020-05-17