matlab幂法与反幂法,数值分析幂法与反幂法matlab程序.doc

数值分析幂法与反幂法matlab程序

数值分析幂法与反幂法 matlab程序随机产生一对称矩阵,对不同的原点位移和初值(至少取3个)分别使用幂法求计算矩阵的主特征值及主特征向量,用反幂法求计算矩阵的按模最小特征值及特征向量。要求1)比较不同的原点位移和初值说明收敛性2)给出迭代结果,生成DOC文件。3)程序清单,生成M文件。wo解答:>> A=rand(5) %随机产生5*5矩阵 求随机矩阵A = 0.7094 0.1626 0.5853 0.6991 0.1493 0.7547 0.1190 0.2238 0.8909 0.2575 0.2760 0.4984 0.7513 0.9593 0.8407 0.6797 0.9597 0.2551 0.5472 0.2543 0.6551 0.3404 0.5060 0.1386 0.8143>> B=A+A' %A矩阵和A的转置相加,得到随机对称矩阵BB = 1.4187 0.9173 0.8613 1.3788 0.8044 0.9173 0.2380 0.7222 1.8506 0.5979 0.8613 0.7222 1.5025 1.2144 1.3467 1.3788 1.8506 1.2144 1.0944 0.3929 0.8044 0.5979 1.3467 0.3929 1.6286

B=

编写幂法、反幂法程序:function [m,u,index,k]=pow(A,u,ep,it_max)% 求矩阵最大特征值的幂法,其中% A为矩阵;% ep为精度要求,缺省为1e-5;% it_max为最大迭代次数,缺省为100;% m为绝对值最大的特征值;% u为对应最大特征值的特征向量;% index,当index=1时,迭代成功,当index=0时,迭代失败if nargin<4 it_max=100;endif nargin<3 ep=1e-5;endn=length(A);index=0;k=0;m1=0;m0=0.01; % 修改移位参数,原点移位法加速收敛,为0时,即为幂法I=eye(n)T=A-m0*Iwhile k<=it_max v=T*u; [vmax,i]=max(abs(v)); m=v(i); u=v/m; if abs(m-m1)

修改输入的m0的值,所得结果:幂法:muindexk05.27101100.55.27101130.35.27101110.15.271011005.2710190.000015.27101290.0000055.2710190.0000015.27101905.27101100.0000

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值