数值分析:Ch10.数值算法实现.ppt
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数值 分析 Ch10 算法 实现
- 资源描述:
-
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,Ch10.,数值算法实现,1.,线性方程组解法,1,、三角形线性方程组解法,以上三角形线性方程组 为例。,回代:,%,文件,uptri,.m,function u=,uptri,(a,b),n=size(a,1);,x(n)=b(n),/,a(n,n);,for i=n-1:-1:1,s=0;,for j=i+1:n,s=s+a(i,j)*x(j);,end,x(i)=(b(i)s),/,a(i,i);,end,u=x;,求解,2,、,顺序,Gauss,消去法,(,1,),消去过程:,第,k,步,计算,(,2,)回代过程:,%,文件,gauss.m,function u=gauss(a,b),n=length(b);,for k=1:n 1,for i=k+1:n,mult,=a(i,k),/,a(k,k);,for j=k+1:n,%if abs(a(k,k),1e6,a(i,j)=a(i,j),mult,*a(k,j);,%else,%,disp,(,顺序,Gauss,消去法失败,);,%,pause,;,%exit,;,%end,end,可,去掉%,,判断主元是否为0,b(i)=b(i),mult,*b(k);,end,end,x(n)=b(n),/,a(n,n);,for i=n-1:-1:1,s=0;,for j=i+1:n,s=s+a(i,j)*x(j);,end,x(i)=(b(i)s),/,a(i,i);,end,u=x;,回代,例:,%,主文件,main.m,a=6,-2,2,4;12,-8,6,10;,3,-13,9,3;-6,4,1,-18;,b=16,26,-19,-34;,x=gauss(a,b);,disp,(,方程组解为,:,);,x,则有,:,main,方程组解为,:,x=,3,1 -2 1,3,、,Jacobi,迭代法,%,jacobi,.m,function y=,jacobi,(a,b,x0),D=,diag,(,diag,(a);,U=-,triu,(a,1);,L=-,tril,(a,-1);,B=D,(L+U);,f=D,b;,y=B*x0+f;n=1;,while norm(y x0)=1.0e 6,x0=y;,y=B*x0+f;n=n+1;,end,y,n,例,:,P249,例,7.21,a=10,-1,0;-1,10,-2;0,-2,10;,b=9;7;6;,jacobi,(a,b,0;0;0),y=,0.9958,0.9579,0.7916,n=,11,解,向量,迭代次数,2.,方程求根,1,、二分法,%,erfen,.m,function y=,erfen,(fun,a,b,esp,),if,nargin,4,esp,=1e 4;end,if,feval,(fun,a)*,feval,(fun,b),esp,if,feval,(fun,a)*,feval,(fun,c)0,b=c;c=(a+b)/2;,elseif feval,(fun,c)*,feval,(fun,b),erfen,(,fc,0,10,0.05),n=,56,ans,=,1.6180,先,编写函数,2,、不动点,迭代法,%,iterate.m,function y=iterate(x),x1=g(x);,n=1;,while (abs(x1 x)=1.0e 6)&(n iterate(3),x1=,3.7331,n=,22,初值不同,迭代步数会不同,迭代函数,3,、牛顿,迭代法,%,newton.m,function y=newton(x0),x1=x0,fc,(x0)/,df,(x0);,n=1;,while(abs(x1 x0)=1.0e 6)&(n newton(0)newton(10),x1=x1=,-0.4590 3.7331,n=n=,6 12,比,不动点,迭代快,习题三,1,、编写下三角形方程组前推法的函数;,2,、编写,Jacobi,迭代分量形式,的函数;,3,、利用牛顿,迭代法,求解,计算方法,P114,习题,4.7,,写出各函数和命令文件。,下 次 见,3.,插值方法,以牛顿插值为例。,已知函数 在互异点 上的值为,。,n,次,Newton,插值多项式,为:,定义,设函数 在互异点 上的值为,。定义:,1,),一阶均差,为,2,),二阶均差,为,3,)递推下去,,k,阶均差,为,例:,已知,f(x)=,sqrt,(2x)+,ln,(x),节点,x,1,=0.5,x,2,=1,x,3,=1.5,x,4,=2.0,求,Newton,插值多项式,并计算其在,x=0.75,x=1.75,处的,值。比较与原函数的误差。,%,f.m,function y=f(x),y=,sqrt,(2*x)+log(x);,%j0.m,function r=j0(x),r=f(x);,%j1.m,function r=j1(x1,x2),r=(j0(x1)-j0(x2)/(x1-x2);,原函数,0 阶均差(原函数),1 阶均差,%j2.m,function r=j2(x1,x2,x3),r=(j1(x1,x2)-j1(x2,x3)/(x1-x3);,%j3.m,function r=j3(x1,x2,x3,x4),r=(j2(x1,x2,x3)-j2(x2,x3,x4)/(x1-x4);,2 阶均差,3 阶均差,%newton.m,function r=newton(t),x=0.5,1.0,1.5,2.0 ;,r=j0(x(1)+j1(x(1),x(2).*(t-x(1)+j2(x(1),x(2),x(3).*(t-x(1).*(t-x(2)+j3(x(1),x(2),x(3),x(4).*(t-x(1).*(t-x(2).*(t-x(3);,插值函数,%,main.m,disp,(x=0.75,处值与误差,);,t=0.75;l=,newton,(t),e=abs(f(t)-l),disp,(x=1.75,处值与误差,);,t=1.75;l=,newton,(t),e=abs(f(t)-l),row=0.5:0.1:2.0;,y=f(row);,N=,newton,(row);,plot(row,y,b-,row,N,r-);,legend(,原函数,插值函数,);,main,x=0.75,处值与误差,l=,0.9221,e=,0.0150,x=1.75,处值与误差,l=,2.4228,e=,0.0077,4.,曲线拟合的最小二乘法,1,、多项式拟合,2,、一般情形,1,、多项式拟,合,已知,(,x,i,y,i,),(i=1,m),polyfit(x,y,n),x=x,1,x,2,x,m,y=y,1,y,2,y,m,多项式次数,例,:,用三次多项式在,0,5,上拟合,e,x,x=0:0.1:5;,y=exp(x);,p=polyfit(x,y,3);,s=,polyval,(p,x);,plot(x,y,b*,x,s,“r-),legend(,原曲线,拟合曲线,),axis(0,5,0,52 ),拟合函数,2,、一般情形,对应于解超定方程组,用矩阵除法实现,例:用,y=a+bx,2,拟合给定的一组数据:,解:使 最小。,对应的,超定方程组为:,即,Matlab,实现:,u=A y (,见,P228,例,7.8),记为,Au=y,5.,数值积分,复化梯形公式的实现,:,trapz,(y)*h,即,y=f(x,0,),f(,x,n,),例,:,P233,例,7.10,%fun.m,function y=fun(t),y=exp(-0.5*t).*sin(t+pi/6);,d=pi/1000;t=0:d:3*pi;,y=fun(t);,z=,trapz,(y)*d,z=,0.90084027660688,被积,函数,5.,常微分方程数值解法,以,Euler,法为例。,例,:,取步长,h=0.2,%,f.m,function r=f(x,y),r=y-x+1;,%orig.m,function r=,orig,(x,y),r=x+exp(x);,右端函数,准确解,%,euler.m Euler,方法的函数,function X,Y =euler(a,b,h,c),%c=y,0,n=round(b-a)/h)+1;%,计算点的个数,x=zeros(n,1);%,设定,x,维数,y=zeros(n,1);%,设定,y,维数,x(1)=a;,y(1)=c;%,初始条件,str,=,sprintf,(x0=%g,y0=%g n,x(1),y(1);,disp,(,str,);%,显示初始条件,%,对每个点用,Euler,公式计算,for i=1:n-1,y(i+1)=y(i)+h*f(x(i),y(i);,x(i+1)=x(i)+h;,str,=,sprintf,(%d x=%g y=%g e=%g,i,x(i+1),y(i+1),abs(y(i+1)-,orig,(x(i+1);,disp,(,str,);%,显示计算结果与误差,end,X=x;,Y=y;%,返回计算结果,%,主文件,main.m,clear;%,清除内存变量,a=0;b=5;h=0.2;c=1;%,输入参数值,X,Y =,euler,(a,b,h,c);%,调用,Euler,函数,%,绘图,plot(X,orig,(X),b-,X,Y,r-);,legend(,精确解,数值解,);,main,x0=0,y0=1,1 x=0.2 y=1.4 e=0.0214028,2 x=0.4 y=1.84 e=0.0518247,25 x=5 y=100.396 e=53.0169,谢 谢,See You Next Time!,展开阅读全文
咨信网温馨提示:1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。




数值分析:Ch10.数值算法实现.ppt



实名认证













自信AI助手
















微信客服
客服QQ
发送邮件
意见反馈



链接地址:https://www.zixin.com.cn/doc/11203588.html