第3讲数学建模的插值法.ppt_第1页
第3讲数学建模的插值法.ppt_第2页
第3讲数学建模的插值法.ppt_第3页
第3讲数学建模的插值法.ppt_第4页
第3讲数学建模的插值法.ppt_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1,数学建模与数学实验,插 值,2,实验目的,实验内容,2、掌握用数学软件包求解插值问题。,1、了解插值的基本内容。,1一维插值,2二维插值,3实验作业,3,拉格朗日插值,分段线性插值,三次样条插值,一 维 插 值,一、插值的定义,二、插值的方法,三、用Matlab解插值问题,返回,4,返回,二维插值,一、二维插值定义,二、网格节点插值法,三、用Matlab解插值问题,最邻近插值,分片线性插值,双线性插值,网格节点数据的插值,散点数据的插值,5,一维插值的定义,6,返回,7,称为拉格朗日插值基函数。,已知函数f(x)在n+1个点x0,x1,xn处的函数值为 y0,y1,yn 。求一n次多项式函数Pn(x),使其满足: Pn(xi)=yi,i=0,1,n.,解决此问题的拉格朗日插值多项式公式如下,其中Li(x) 为n次多项式:,拉格朗日(Lagrange)插值,8,拉格朗日(Lagrange)插值,特别地:,两点一次(线性)插值多项式:,三点二次(抛物)插值多项式:,9,拉格朗日多项式插值的 这种振荡现象叫 Runge现象,采用拉格朗日多项式插值:选取不同插值节点个数n+1,其中n为插值多项式的次数,当n分别取2,4,6,8,10时,绘出插值结果图形.,例,返回,To Matlab lch(larg1),10,分段线性插值,计算量与n无关; n越大,误差越小.,11,To MATLAB xch11,xch12,xch13,xch14,返回,例,用分段线性插值法求插值,并观察插值误差.,1.在-6,6中平均选取5个点作插值(xch11),4.在-6,6中平均选取41个点作插值(xch14),2.在-6,6中平均选取11个点作插值(xch12),3.在-6,6中平均选取21个点作插值(xch13),12,比分段线性插值更光滑。,在数学上,光滑程度的定量描述是:函数(曲线)的k阶导数存在且连续,则称该曲线具有k阶光滑性。 光滑性的阶次越高,则越光滑。是否存在较低次的分段多项式达到较高阶光滑性的方法?三次样条插值就是一个很好的例子。,三次样条插值,13,三次样条插值,g(x)为被插值函数。,14,例,用三次样条插值选取11个基点计算插值(ych),返回,To MATLAB ych(larg1),15,用MATLAB作插值计算,一维插值函数:,yi=interp1(x,y,xi,method),nearest :最邻近插值linear : 线性插值; spline : 三次样条插值; cubic : 立方插值。 缺省时: 分段线性插值。,注意:所有的插值方法都要求x是单调的,并且xi不能够超过x的范围。,16,例:在1-12的12小时内,每隔1小时测量一次温度,测得的温度依次为:5,8,9,15,25,29,31,30,22,25,27,24。试估计每隔1/10小时的温度值。,hours=1:12; temps=5 8 9 15 25 29 31 30 22 25 27 24; h=1:0.1:12; t=interp1(hours,temps,h,spline); plot(hours,temps,+,h,t,hours,temps,r:) %作图 xlabel(Hour),ylabel(Degrees Celsius) %摄氏度,17,二维插值的定义,第一种(网格节点):,18,已知 mn个节点,19,第二种(散乱节点):,20,返回,21,注意:最邻近插值一般不连续。具有连续性的最简单的插值是分片线性插值。,最邻近插值,二维或高维情形的最邻近插值,与被插值点最邻近的 节点的函数值即为所求。,返回,22,将四个插值点(矩形的四个顶点)处的函数值依次简记为:,分片线性插值,f (xi, yj)=f1,f (xi+1, yj)=f2,f (xi+1, yj+1)=f3,f (xi, yj+1)=f4,23,插值函数为:,第二片(上三角形区域):(x, y)满足,插值函数为:,注意:(x, y)当然应该是在插值节点所形成的矩形区域内。显然,分片线性插值函数是连续的;,分两片的函数表达式如下:,第一片(下三角形区域): (x, y)满足,返回,24,双线性插值是一片一片的空间二次曲面构成。 双线性插值函数的形式如下:,其中有四个待定系数,利用该函数在矩形的四个顶点(插值节点)的函数值,得到四个代数方程,正好确定四个系数。,双线性插值,返回,25,要求x0,y0单调;x,y可取为矩阵,或x取行向量,y取为列向量,x,y的值分别不能超出x0,y0的范围。,z=interp2(x0,y0,z0,x,y,method),用MATLAB作网格节点数据的插值,nearest 最邻近插值 linear 双线性插值 cubic 双三次插值 缺省时, 双线性插值,26,例:测得平板表面3*5网格点处的温度分别为: 82 81 80 82 84 79 63 61 65 81 84 84 82 85 86 试作出平板表面的温度分布曲面z=f(x,y)的图形。,输入以下命令: x=1:5; y=1:3; temps=82 81 80 82 84;79 63 61 65 81;84 84 82 85 86; mesh(x,y,temps),1.先在三维坐标画出原始数据,画出粗糙的温度分布曲图.,2以平滑数据,在x、y方向上每隔0.2个单位的地方进行插值.,27,再输入以下命令: xi=1:0.2:5; yi=1:0.2:3; zi=interp2(x,y,temps,xi,yi,cubic); mesh(xi,yi,zi) 画出插值后的温度分布曲面图.,28,插值函数griddata格式为:,cz =griddata(x,y,z,cx,cy,method),用MATLAB作散点数据的插值计算,要求cx取行向量,cy取为列向量。,nearest 最邻近插值 linear 双线性插值 cubic 双三次插值 v4- Matlab提供的插值方法 缺省时, 双线性插值,29,例 在某海域测得一些点(x,y)处的水深z由下表给出,船的吃水深度为5英尺,在矩形区域(75,200)*(-50,150)里的哪些地方船要避免进入。,30,To MATLAB hd1,4.作出水深小于5的海域范围,即z=5的等高线.,3.作海底曲面图,31,clear x=129 140 103.5 88 185.5 195 105.5 157.5 107.5 77 81 162 162 117.5; y=7.5 141.5 23 147 22.5 137.5 85.5 -6.5 -81 3 56.5 -66.5 84 -33.5; z=-4 -8 -6 -8 -6 -8 -8 -9 -9 -8 -8 -9 -4 -9; cx=75:0.5:200; cy=-50:0.5:150; cz=griddata(x,y,z,cx,cy,cubic); meshz(cx,cy,cz),rotate3d xlabel(X),ylabel(Y),zlabel(Z) %pause figure(2),contour(cx,cy,cz,-5 -5);%等高线内部的深度小于5米 grid hold on plot(x,y,+) xlabel(X),ylabel(Y),32,1、已知飞机下轮廓线上数据如下,求x每改变0.1时的y值。,作业,33,通过此例对最近邻点插值、双线性插值方法和双三次插值方法

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论