数值分析大作业三、四、五、六、七分解.docx

数值分析大作业三、四、五、六、七分解.docx

  1. 1、本文档共36页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
大作业 三给定初值及容许误差,编制牛顿法解方程f(x)=0的通用程序.解:Matlab程序如下:函数m文件:fu.mfunction Fu=fu(x)Fu=x^3/3-x;end函数m文件:dfu.mfunction Fu=dfu(x)Fu=x^2-1;end用Newton法求根的通用程序Newton.mclear;x0=input(请输入初值x0:);ep=input(请输入容许误差:);flag=1;while flag==1 x1=x0-fu(x0)/dfu(x0);if abs(x1-x0)epflag=0;endx0=x1;endfprintf(方程的一个近似解为:%f\n,x0);寻找最大δ值的程序:Find.mcleareps=input(请输入搜索精度:);ep=input(请输入容许误差:);flag=1;k=0;x0=0;while flag==1 sigma=k*eps;x0=sigma; k=k+1; m=0; flag1=1;while flag1==1 m=10^3 x1=x0-fu(x0)/dfu(x0);if abs(x1-x0)ep flag1=0;end m=m+1; x0=x1;endif flag1==1||abs(x0)=ep flag=0; endendfprintf(最大的sigma值为:%f\n,sigma);2.求下列方程的非零根解:Matlab程序为:主程序clearclcformat longx0=765;N=100;errorlim=10^(-5);x=x0-f(x0)/subs(df(),x0);n=1;while nNx=x0-f(x0)/subs(df(),x0);if abs(x-x0)errorlimn=n+1;elsebreak;endx0=x;enddisp([迭代次数: n=,num2str(n)])disp([所求非零根: 正根x1=,num2str(x), 负根x2=,num2str(-x)])(2)子函数 非线性函数ffunction y=f(x)y=log((513+0.6651*x)/(513-0.6651*x))-x/(1400*0.0918);end子函数 非线性函数的一阶导数dffunction y=df()syms x1y=log((513+0.6651*x1)/(513-0.6651*x1))-x1/(1400*0.0918);y=diff(y);end运行结果如下:迭代次数: n=5所求非零根: 正根x1=767.3861 负根x2=-767.3861大作业 四分析:(1)输出插值多项式。 (2)在区间[-5,5]内均匀插入99个节点,计算这些节点上函数f(x)的近似值,并在同一张图上画出原函数和插值多项式的图形。 (3)观察龙格现象,计算插值函数在各节点处的误差,并画出误差图。解:Matlab程序代码如下:%此函数实现y=1/(1+4*x^2)的n次Newton插值,n由调用函数时指定%函数输出为插值结果的系数向量(行向量)和插值多项式function [t y]=func5(n)x0=linspace(-5,5,n+1);y0=1./(1.+4.*x0.^2);b=zeros(1,n+1);for i=1:n+1 s=0;for j=1:i t=1;for k=1:iif k~=j t=(x0(j)-x0(k))*t;end;end; s=s+y0(j)/t;end; b(i)=s;end;t=linspace(0,0,n+1);for i=1:n s=linspace(0,0,n+1); s(n+1-i:n+1)=b(i+1).*poly(x0(1:i)); t=t+s;end;t(n+1)=t(n+1)+b(1);y=poly2sym(t);10次插值运行结果: [b Y]=func5(10)b = Columns 1 through 4 -0.0000 0.0000 0.0027 -0.0000 Columns 5 through 8 -0.0514 -0.0000 0.3920 -0.0000 Columns 9 through 11 -1.1433 0.0000 1.0000Y = - (7319042784910035*x^10)/147573952589676412928 + x^9/18446744073709551616 + (256*x^8)/

文档评论(0)

ee88870 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档