好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

幂法求多项式方程的模最大根matlab实现.docx

4页
  • 卖家[上传人]:pu****.1
  • 文档编号:458247706
  • 上传时间:2022-08-16
  • 文档格式:DOCX
  • 文档大小:37.11KB
  • / 4 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 幂法求多项式方程的模最大根matlab实现幂法求多项式方程的模最大根matlab实现 要求:利用matlab编写通用子程序,利用幂法求多项式方程的解: f(x)=xn+an-1xn-1+¼¼+a1x+a0=0 思想: 1.首先要将多项式转化成矩阵形式通过老师上课讲的内容将上述多项式转化成为如家格式的矩阵: 0¼¼¼¼-a01¼¼¼¼-a2¼¼¼¼¼¼¼¼0¼¼1-an-1此矩阵的特征值,就是上述多项式的解 2.幂法的思想就不多介绍了,书上讲的很详细,主要运用书上6.2.6的迭代公式: yk=Auk-1, mk=mj,yk的模最大分量 (k)uk=yk/mk,实验代码:详见附录1 实验结果: x+x-5x+3=0 32解: 其中m是模最大特征值,x是m对应的特征向量,s是迭代次数15精度为1e-5 x-3x-1=0 结果: 3其中:m是模最大特征值,x是m对应的特征向量,s是迭代次数为57,精度为1e-5. x8+101x7+208.01x6+10891.01x5+9802.08x4+79108.9x-99902x+790x-1000=032结果: 其中:m是模最大特征值,x是m对应的特征向量,s是迭代次数12次,精度为1e-10. 结论:幂法求多项式模最大根的效果还是很不错的,迭代次数也不多,收敛比较快。

      附录1 幂法: function [m,x,s]=powermethod(n,a,eps) %A转化后的矩阵 %x0迭代初向量 %l模最大特征值 %n为最高次幂 A=zeros(n); %v为主特征向量 M = 500000; %迭代步数限制 l = 0; for i=1:n A(i,n)=-a(i); end for i=2:n for j=1:n-1 if i-j==1 A(i,j)=1; end end end s=0; n=max(size(A)); u=ones(n,1); y=ones(n,1);%初始化,初始值是多少不重要 beta1=0; eta=norm(u,2); y=u./eta; u=A*y; beta2=y'*u; while s<=M if abs((beta2-beta1)/beta1)>eps beta1=beta2; eta=norm(u,2); y=u./eta; u=A*y; beta2=y'*u; end s=s+1; if(abs((beta2-beta1)/beta1)<=eps) break; end end if s<=M m=beta2; x=y; else m=beta2; x=y; end 。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.