《应用计算方法教程》atlab作业一.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《应用计算方法教程》atlab作业一

作业一 1-1实验目的:寻求高效算法 实验内容:设,给出两个算法,求,写出MATLAB程序,并统计计算法计算量。若要计算量不超过20flop,应如何设计算法? 算法一 算法: 令,依次计算,最后用。 程序: n=1023; t=1+1/n; t0=t; for i=1:10 t=t^2; end t=t/t0; disp(t); 界面: 计算量:12flop 算法二 算法: 直接计算t的1023次方。 程序: n=1023; t=1+1/n; x=t^1023; disp(x); 界面: 计算量:1024flop 若要计算量不超过20flop,采用第一种算法较合适。 作业二 3-5 实验目的:应用不同迭代法求解代数方程 实验内容:分别采用二分法、Newton法、Newton下山法、割线法求解方程 在[0.1,1]中的根;精确到。 二分法 算法: 为连续函数,且由题意可知[0.1,1]为含根区间,令a=0.1,b=1,取p=(a+b)/2。若f(p)=0则p是方程f(x)=0的解;若f(a)f(p)0则根在(a,p)内,取a1=a,b1=p;否则根在区间(p,b)内,取a1=p,b1=b。重复上述过程直到达到精度要求为止。 程序: function y=f_3_5(x) y=600*x^4-550*x^3+200*x^2-20*x-1; function [p,k]=lab3_5_Bisection(max,a,b,e) for k=1:max p=(b+a)/2; if f_3_5(p)==0 || (b-a)/2e break; elseif f_3_5(a)*f_3_5(p)0 a=p; else b=p; end end 界面: Newton法 算法: 建立牛顿迭代格式 直到小于精度要求时迭代结束,将作为结果输出。 程序: function y=f2_3_5(x) y=600*4*x^3-550*3*x^2+400*x-20; function [p,k]=lab3_5_Newton(max,p0,e) for k=1:max p=p0-f_3_5(p0)/f2_3_5(p0); if abs(p-p0)e break; end p0=p; end 界面: Newton下山法 算法: 建立迭代格式 其中是下山因子,在每步迭代中依次取1,1/2,1/4,…直到满足精度要求。 程序: function [p,k]=lab3_5_Newton2(max,p0,tol,e) for k=1:max y=1; p=p0-y*f_3_5(p0)/f2_3_5(p0); while (abs(f_3_5(p))=abs(f_3_5(p0)) ye) y=y/2; p=p0-y*f_3_5(p0)/f2_3_5(p0); end if abs(p-p0)tol break; end p0=p; end 界面: 割线法 算法: 建立迭代格式 直到小于精度要求时迭代结束,将作为结果输出。 程序: function [p,k]=lab3_5_Secant(max,a,b,e) for k=1:max p=b-f_3_5(b)*(b-a)/(f_3_5(b)-f_3_5(a)); if abs(p-b)e break; end a=b; b=p; end 界面: 作业三 4-2 实验目的:熟悉LU分解法求解方程。 实验内容:用MATLAB编程做Doolittle分解,求解方程组。 算法: 对进行Doolittle分解使得,则线性方程组的求解问题就转化为对三角形方程组的求解。Doolittle分解过程为: 然后依次求解和: 程序: function [L,U,x]=lab4_2(a,b) n=length(a); L=eye(n); U(1,:)=a(1,:); for k=2:n if U(k-1,k-1)==0 disp(·??aê§°ü); return; end L(k:n,k-1)=a(k:n,k-1)/U(k-1,k-1); U(k,k:n)=a(k,k:n)-L(k,1:k-1)*U(1:k-1,k:n); if kn a(k+1:n,k)=a(k+1:n,k)-L(k+1:n,1:k-

文档评论(0)

189****1013 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档