插值和拟合区别.ppt

上传人:小飞机 文档编号:6495299 上传时间:2023-11-06 格式:PPT 页数:31 大小:838.50KB
返回 下载 相关 举报
插值和拟合区别.ppt_第1页
第1页 / 共31页
插值和拟合区别.ppt_第2页
第2页 / 共31页
插值和拟合区别.ppt_第3页
第3页 / 共31页
插值和拟合区别.ppt_第4页
第4页 / 共31页
插值和拟合区别.ppt_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《插值和拟合区别.ppt》由会员分享,可在线阅读,更多相关《插值和拟合区别.ppt(31页珍藏版)》请在三一办公上搜索。

1、数据拟合,用插值的方法对一函数进行近似,要求所得到的插值多项式经过已知插值节点;在n比较大的情况下,插值多项式往往是高次多项式,这也就容易出现振荡现象(龙格现象),即虽然在插值节点上没有误差,但在插值节点之外插值误差变得很大,从“整体”上看,插值逼近效果将变得“很差”。数据拟合是求一个简单的函数,例如是一个低次多项式,不要求通过已知的这些点,而是要求在整体上“尽量好”的逼近原函数。,多项式拟合,n次多项式:曲线与数据点的残差为:残差的平方和为:为使其最小,可令R关于cj的偏导数为零,即,或矩阵形式,多项式拟合MATLAB命令:polyfit格式:p=polyfit(x,y,n),x0=0:.1

2、:1;y0=(x0.2-3*x0+5).*exp(-5*x0).*sin(x0);p3=polyfit(x0,y0,3);vpa(poly2sym(p3),10)ans=2.839962923*x3-4.789842696*x2+1.943211631*x+.5975248921e-1,例,绘制拟合曲线:x=0:.01:1;ya=(x.2-3*x+5).*exp(-5*x).*sin(x);y1=polyval(p3,x);plot(x,y1,x,ya,x0,y0,o),p6=polyfit(x0,y0,6);y2=polyval(p6,x);vpa(poly2sym(p6),10),就不同的

3、次数进行拟合:p4=polyfit(x0,y0,4);y2=polyval(p4,x);p5=polyfit(x0,y0,5);y3=polyval(p5,x);p8=polyfit(x0,y0,8);y4=polyval(p8,x);plot(.),拟合最高次数为8的多项式:vpa(poly2sym(p8),5)ans=-8.2586*x8+43.566*x7-101.98*x6+140.22*x5-125.29*x4+74.450*x3-27.672*x2+4.9869*x+.42037e-6Taylor幂级数展开:syms x;y=(x2-3*x+5)*exp(-5*x)*sin(x);

4、vpa(taylor(y,9),5)ans=5.*x-28.*x2+77.667*x3-142.*x4+192.17*x5-204.96*x6+179.13*x7-131.67*x8,多项式拟合的效果并不一定总是很精确的。x0=-1+2*0:10/10;y0=1./(1+25*x0.2);x=-1:.01:1;ya=1./(1+25*x.2);p3=polyfit(x0,y0,3);y1=polyval(p3,x);p5=polyfit(x0,y0,5);y2=polyval(p5,x);p8=polyfit(x0,y0,8);y3=polyval(p8,x);p10=polyfit(x0,y

5、0,10);y4=polyval(p10,x);plot(x,ya,x,y1,x,y2,-.,x,y3,-,x,y4,:),例,用Taylor幂级数展开效果将更差。syms x;y=1/(1+25*x2);p=taylor(y,x,10)p=1-25*x2+625*x4-15625*x6+390625*x8多项式拟合效果 x1=-1:0.01:1;ya=1./(1+25*x1.2);y1=subs(p,x1);plot(x1,ya,-,x1,y1),曲线拟合方法,该方程的最小二乘解为:,其中,例,x=0,0.2,0.4,0.7,0.9,0.92,0.99,1.2,1.4,1.48,1.5;y=

6、2.88;2.2576;1.9683;1.9258;2.0862;2.109;2.1979;2.5409;2.9627;3.155;3.2052;A=ones(size(x),exp(-3*x),cos(-2*x).*exp(-4*x),x.2;c=Ay;c1=cc1=1.2200 2.3397-0.6797 0.8700,图形显示 x0=0:0.01:1.5;A1=ones(size(x0)exp(-3*x0),cos(-2*x0).*exp(-4*x0)x0.2;y1=A1*c;plot(x0,y1,x,y,x),数据分析 x=1.1052,1.2214,1.3499,1.4918,1.6

7、487,1.8221,2.0138,.2.2255,2.4596,2.7183,3.6693;y=0.6795,0.6006,0.5309,0.4693,0.4148,0.3666,0.3241,.0.2864,0.2532,0.2238,0.1546;plot(x,y,x,y,*),例,分别对x,y进行对数变换:x1=log(x);y1=log(y);plot(x1,y1),A=x1,ones(size(x1);c=Ay1c=-1.2339-0.2630 exp(c(2)ans=0.7687,x=0:0.1:1;y=(x.2-3*x+5).*exp(-5*x).*sin(x);n=8;A=;

8、for i=1:n+1,A(:,i)=x.(n+1-i);end c=Ay;vpa(poly2sym(c),5)ans=-8.2586*x8+43.566*x7-101.98*x6+140.22*x5-125.29*x4+74.450*x3-27.672*x2+4.9869*x+.42037e-6,例,最小二乘曲线拟合,格式:a,jm=lsqcurvefit(Fun,a0,x,y),例,x=0:.1:10;y=0.12*exp(-0.213*x)+0.54*exp(-0.17*x).*sin(1.23*x);,f=inline(a(1)*exp(-a(2)*x)+a(3)*exp(-a(4)*

9、x).*sin(a(5)*x),a,x);xx,res=lsqcurvefit(f,1,1,1,1,1,x,y);xx,res,Optimization terminated successfully:Relative function value changing by less than OPTIONS.TolFunans=0.1197 0.2125 0.5404 0.1702 1.2300res=7.1637e-007,修改最优化选项:ff=optimset;ff.TolFun=1e-20;ff.TolX=1e-15;%修改精度限制 xx,res=lsqcurvefit(f,1,1,1,

10、1,1,x,y,ff);xx,resOptimization terminated successfully:Relative function value changing by less than OPTIONS.TolFunans=0.1200 0.2130 0.5400 0.1700 1.2300res=9.5035e-021,绘制曲线:x1=0:0.01:10;y1=f(xx,x1);plot(x1,y1,x,y,o),例,x=0.1:0.1:1;y=2.3201,2.6470,2.9707,3.2885,3.6008,3.9090,4.2147,4.5191,4.8232,5.12

11、75;,function y=c8f3(a,x)y=a(1)*x+a(2)*x.2.*exp(-a(3)*x)+a(4);,a=lsqcurvefit(c8f3,1;2;2;3,x,y);aMaximum number of function evaluations exceeded;increase options.MaxFunEvalsans=2.4575 2.4557 1.4437 2.0720,绘制曲线:y1=c8f3(a,x);plot(x,y,x,y1),B样条函数及其MATLAB表示,格式 S=spapi(k,x,y),例,x0=0,0.4,1,2,pi;y0=sin(x0);ezplot(sin(t),0,pi);hold on sp1=csapi(x0,y0);fnplt(sp1,-);%三次分段多项式样条插值 sp2=spapi(5,x0,y0);fnplt(sp2,:)%5 次 B 样条插值,y=sin(t),x=0:.12:1;y=(x.2-3*x+5).*exp(-5*x).*sin(x);ezplot(x2-3*x+5)*exp(-5*x)*sin(x),0,1),hold on sp1=csapi(x,y);fnplt(sp1,-);sp2=spapi(5,x,y);fnplt(sp2,:),

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号