网站大量收购独家精品文档,联系QQ:2885784924

第20章MATLAB多项式回归与数据插值重点.ppt

  1. 1、本文档共63页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 华文行楷,字号88,颜色红,位于每一章的第一节的最前面。 不使用动画 * 【例20.3-1续】针对例20.3-1中的数据,调用interp1函数作一维插值。 ylin = interp1(x0,y0,x); yspl = interp1(x0,y0,x,spline); plot(x0,y0,ko); hold on; plot(x,f,k, linewidth,2); plot(x,ylin,:, linewidth,2); plot(x,yspl,r-., linewidth,2); xlabel(X); ylabel($$f(x)=\frac{1}{1+25x^2}$$,Interpreter,latex); legend(插值节点,原函数图像,分段线性插值,三次样条插值) * 【例20.3-2】在加工机翼的过程中,已有机翼断面轮廓线上的20组坐标点数据,如表20.3-2所列,其中(x, y1) 和(x, y2) 分别对应轮廓线的上下线。假设需要得到 x坐标每改变0.1时的y 坐标,试通过插值方法计算加工所需的全部数据,并绘制机翼断面轮廓线,求加工断面的面积。 0 3 5 7 9 11 12 13 14 15 0 1.8 2.2 2.7 3.0 3.1 2.9 2.5 2.0 1.6 0 1.2 1.7 2.0 2.1 2.0 1.8 1.2 1.0 1.6 * x0 = [0,3,5,7,9,11,12,13,14,15]; y01 = [0,1.8,2.2,2.7,3.0,3.1,2.9,2.5,2.0,1.6]; y02 = [0,1.2,1.7,2.0,2.1,2.0,1.8,1.2,1.0,1.6]; x = 0:0.1:15; ysp1 = interp1(x0,y01,x,spline); pp = interp1(x0,y02,spline,pp); ysp2 = ppval(pp,x); xx = [x,fliplr(x)]; ysp = [ysp1,fliplr(ysp2)]; plot([x0,x0],[y01,y02],o); hold on; plot(xx,ysp,r,linewidth,2); xlabel(X); ylabel(Y); legend(插值节点,三次样条插值,location,northwest); % 截面面积: S1 = trapz(x,ysp1)-trapz(x,ysp2) S2 = trapz(xx,ysp) * 三、spline函数 yy = spline(x, Y, xx) 自变量观测值向量 因变量观测值向量 用户指定的插值点横坐标 1. spline函数的用法 计算得到的近似函数值 * 四、csape和csapi函数 pp = csape( x, y, conds) 自变量观测值向量 因变量观测值向量 边界条件参数 1. csape函数的用法 分段多项式形式的插值结果 conds参数取值 说 明 complete或 clamped 给定端点处的一阶导数值,默认为拉格朗日边界条件 not-a-knot 非纽结边界条件,csapi函数使用的就是这种边界条件 periodic 周期边界条件 second 给定端点处的二阶导数值。默认为[0, 0],同variational情形 variational 设定端点处的二阶导数值为0 * values = csapi(x, y, xx) 2. csapi函数的用法 自变量观测值向量 因变量观测值向量 用户指定的插值点横坐标 计算得到的近似函数值 * * fun = @(x)sin(pi*x/2).*(x=-1x1) + x.*exp(1-x.^2).*(x=1 | x-1); %%----------------区间[0,1]上的三次样条插值------------------ x01 = linspace(0,1,6); y01 = fun(x01); x1 = linspace(0,1,20); pp1 = csape(x01,[1,y01,0],complete); y1 = fnval(pp1,x1); %%----------------区间[1,3]上的三次样条插值------------------ x02 = linspace(1,3,8); y02 = fun(x02); x2 = linspace(1,3,30); pp2 = csape(x02,[0,y02,0.01],[1,2]); y2 = fnval(pp2,x2); %%-----------------------绘图------------------

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档