幂法和反幂法求矩阵特征值课程设计(编辑修改稿)内容摘要:

的特征向量。 由于用 A1 代替 A 作幂法计算,因此该方法称为反幂法,反幂法的迭代格式为 v )(k = A1 u )1(k ,mk =max(v )(k ), u )(k = v )(k / mk ( 2) 对于反幂法的定理 按式( 2)计算出的 mk 和 u )(k 满足: klimmk =n1 , klim u )(k = )max(nnxx 在式( 2)中,需要用到 A1 ,这给计算带来很大的不方便,因此,把( 2)式的第一式改为求解线性方程组 A v )(k = u )1(k ( 3) 但由于在反幂法中,每一步迭代都需求解线性方程组( 3)式,迭代做了大量的重复计算,为了节省工作量,可事先把矩阵 A 作 LU 分解,即 A=LU 所以线性方程组( 3)改为 Ly )(k =u )1(k ,Uv)(k =y)(k 四、算 法程序设计代码 幂法程序, 在 matlab 中建立一个 M 文件并保存。 % function [m,u,index,k]=pow(A,u,ep,it_max) if nargin4 it_max=1000。 end if nargin3 ep=1e5。 end n=length(A)。 index=0。 k=0。 m1=0。 m0=0。 I=eye(n)。 T=Am0*I。 while k=it_max v=T*u。 [vmax,i]=max(abs(v))。 m=v(i)。 u=v/m。 if abs(mm1)ep。 index=1。 break。 end m=m+m0。 m1=m。 k=k+1。 end 在 matlab 输入面板,输入 A=rand( 4); %产生一个 4 维随机矩阵 B=A+A’; u=[1 1 1 1]’。 %设立初始向量 [m,u,index,k]=pow(B, u,ep,it_max)%最多 可省略 2 个参数 程序结束。 在 M 文件中可以通过改变 m0 的值改变原点位移,从而达到原点位移加速。 反幂法程序设计代码 : 在 matlab 中建立一个 M 文件并保存。 % function[m,u,index,k]=pow_inv(A,u,ep,it_max) if nargin4 it_max=1000。 end if nargin3 ep=1e5。 end n=length(A)。 index=0。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。