好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

数学建模 数学实验---插值及案例.pdf

34页
  • 卖家[上传人]:suns****4568
  • 文档编号:89443959
  • 上传时间:2019-05-25
  • 文档格式:PDF
  • 文档大小:2.21MB
  • / 34 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 插值在工程实践和科学实验中有着非常广泛而又插值在工程实践和科学实验中有着非常广泛而又 十分重要的应用,例如,信息技术中的图像重建、图十分重要的应用,例如,信息技术中的图像重建、图 像放大中为避免图像的扭曲失真的插值补点、建筑工像放大中为避免图像的扭曲失真的插值补点、建筑工 程的外观设计化学工程实验数据与模型的分析、天程的外观设计化学工程实验数据与模型的分析、天 文观测数据、地理信息数据的处理如文观测数据、地理信息数据的处理如( (天气预报)以天气预报)以 及社会经济现象的统计分析等等及社会经济现象的统计分析等等 插值方法在数学建模竞赛中也发挥着重要的作用,插值方法在数学建模竞赛中也发挥着重要的作用, 历年很多赛题中如与图形处理有关的问题很多与插值历年很多赛题中如与图形处理有关的问题很多与插值 有关系,例如有关系,例如9898年美国赛年美国赛A A题,生物组织切片的三维题,生物组织切片的三维 插值处理,插值处理,9494年年A A题逢山开路,山体海拔高度的插值题逢山开路,山体海拔高度的插值 计算,计算, 20052005年的雨量预报的评价的插值计算等年的雨量预报的评价的插值计算等 在工程实践和科学实验中,常常需要从一组实在工程实践和科学实验中,常常需要从一组实 验观测数据,揭示自变量验观测数据,揭示自变量x与因变量与因变量y之间的关系,使之间的关系,使 所得到的近似函数与已知数据有较高的拟合精度。

      通所得到的近似函数与已知数据有较高的拟合精度通 常可以采用两种方法:曲线插值和拟合.常可以采用两种方法:曲线插值和拟合. 若要求这个近似函数经过已知的所有数据点,则若要求这个近似函数经过已知的所有数据点,则 称此类问题为称此类问题为插值问题插值问题 (不需要函数表达式)(不需要函数表达式) 注:注:插值问题插值问题不一定得到近似函数的表达形式,仅不一定得到近似函数的表达形式,仅 通过插值方法找到未知点对应的值通过插值方法找到未知点对应的值 二、二、基本概念基本概念 选用不同类型的插值函数选用不同类型的插值函数,,逼近的效逼近的效 果就不同果就不同,,一般有:一般有:  拉格朗日插值拉格朗日插值((lagrange插值插值))  分段线性插值分段线性插值  Hermite  三次样条插值三次样条插值 插值方法插值方法 四、四、插值方法及插值方法及MATLAB求解求解 MATLABMATLAB自身提供了如下内部的功能函数自身提供了如下内部的功能函数: 一维插值函数:一维插值函数:interp1() 二维插值函数:二维插值函数:intep2() 三维插值函数:三维插值函数: interp3() n维插值函数:维插值函数: intern()  MATLABMATLAB实现插值实现插值 用用MATLAB作一维插值计算作一维插值计算 一维插值一维插值的实现的实现:: yi=interp1(x,,y,,xi,,'method') 插值方法插值方法 需要插值节点需要插值节点 已知插值节点已知插值节点 xi的插的插 值结果值结果 ‘nearest’ 最邻近插值;最邻近插值; ‘‘linear’ 线性插值;线性插值; ‘‘spline’ 三次样条插值;三次样条插值; ‘‘cubic’ 立方插值;立方插值; 缺省时缺省时 分段线性插值.分段线性插值. 注意:所有的插值方注意:所有的插值方 法都要求法都要求x是单调的,是单调的, 并且并且xi不能够超过不能够超过x的的 范围.范围. ‘nearest’:最近点插值,插值点处的值取与该插 值点距离最近的数据点函数值; ‘linear’:分段线性插值,用直线连接数据点,插 值点的值取对应直线上的值; ‘spline’:三次样条函数插值,该方法用三次样条 曲线通过数据点,插值点处的值取对应曲线上的值; ‘cubic’or‘pchip’:分段三次Hermite插值,确 定三次Hermite函数,根据该函数确定插值点的函数 值。

      缺省时 表示分段线性插值 参数‘参数‘method’的进一步说明’的进一步说明 x=0:6; y=cos(x); xi=0:.25:6; yi1=interp1(x,y,xi,'nearest'); yi2=interp1(x,y,xi,'linear'); yi3=interp1(x,y,xi,'spline'); yi4=interp1(x,y,xi,‘pchip‘or’cubic’); plot(x,y,'ro',xi,yi1,'--',xi,yi2,'-',xi,yi3,'k.-',xi,yi4,'m:') legend(‘原始数据’,‘最近点插值’,‘线性插值’,’样 条插值‘,’立方插值’) 例例 用以上用以上4种方法对种方法对y=cosx在在[0,6]上的一维插值效果进行比较上的一维插值效果进行比较 例例 从从1 1点点1212点点的的1111小时内,每隔小时内,每隔1 1小时测量一次温度,小时测量一次温度, 测得的温度的数值依次为:测得的温度的数值依次为:5 5,,8 8,,9 9,,1515,,2525,,2929,, 3131,,3030,,2222,,2525,,2727,,2424.试估计每隔.试估计每隔1/101/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’)          x y 机翼下机翼下 轮廓线轮廓线 X X 0 0 3 3 5 5 7 7 9 9 11 11 12 12 13 13 14 14 15 15 Y Y 0 0 1.21.2 1.71.7 2.02.0 2.12.1 2.02.0 1.81.8 1.21.2 1.01.0 1.61.6 练习练习 已知飞机下轮廓线上数据如下,求已知飞机下轮廓线上数据如下,求x每改变每改变0.1时的时的y 值.值. 注:注:要求要求x0, ,y0单调;单调;x,, y可取可取为矩阵,或为矩阵,或x取行向取行向 量,量,y取为列向量,取为列向量,x,y的的 值分别不能超出值分别不能超出x0, ,y0 0的范的范 围.围. z=interp2(x0,y0,z0,x,y,’method’) 被插值点 插值方法 用用MATLAB作二维插值计算作二维插值计算 插值节点 被插值点 的函数值 ‘nearest’ 最邻近插值;最邻近插值; ‘‘linear’ 双线性插值;双线性插值; ‘‘cubic’ 双三次插值;双三次插值; 缺省时缺省时 双线性插值双线性插值. . 插值节点为网格节点数据的实现:插值节点为网格节点数据的实现: t=t=- -2:0.5:22:0.5:2 [x,y]=meshgrid(t);[x,y]=meshgrid(t); z=x.*exp(z=x.*exp(- -x.^2x.^2- -y.^2);y.^2); [x1,y1]=meshgrid([x1,y1]=meshgrid(- -2:0.1:2);2:0.1:2); z1=x1.*exp(z1=x1.*exp(- -x1.^2x1.^2- -y1.^2);y1.^2); figure(1)figure(1) subplot(1,2,1),mesh(x,y,z),title(‘subplot(1,2,1),mesh(x,y,z),title(‘数据点数据点') ') subplot(1,2,2),mesh(x1,y1,z1),title(‘subplot(1,2,2),mesh(x1,y1,z1),title(‘函数图象函数图象') ') 例例 用以上用以上4种方法对种方法对 在在[-2,2 ]上的二维多项上的二维多项 式插值效果进行比较。

      式插值效果进行比较 22 ()xy zxe   [xi,yi]=meshgrid([xi,yi]=meshgrid(- -2:.125:2);2:.125:2); zi1=interp2(x,y,z,xi,yi,'nearest');zi1=interp2(x,y,z,xi,yi,'nearest'); zi2=interp2(x,y,z,xi,yi,'linear');zi2=interp2(x,y,z,xi,yi,'linear'); zi3=interp2(x,y,z,xi,yi,'spline');zi3=interp2(x,y,z,xi,yi,'spline'); zi4=interp2(x,y,z,xi,yi,'cubic');zi4=interp2(x,y,z,xi,yi,'cubic'); figure(2)figure(2) subplot(221subplot(221),mesh(xi,yi,zi1),title(‘),mesh(xi,yi,zi1),title(‘最近点插值最近点插值') ') subplot(222),mesh(xi,yi,zi2),title(‘subplot(222),mesh(xi,yi,zi2),title(‘线性插值线性插值') ') subplot(223),mesh(xi,yi,zi3),title(‘subplot(223),mesh(xi,yi,zi3),title(‘样条插值样条插值') ') subplot(224),mesh(xi,yi,zi4),title(‘subplot(224),mesh(xi,yi,zi4),title(‘立方插值立方插值') ') 例例 测得平板表面测得平板表面3 3××5 5网格点处的温度分别为:网格点处的温度分别为: 82 81 80 82 8482 81 80 82 84 79 63 61 65 8179 63 61 65 81 84 84 82 85 8684 84 82 85 86 试作出平板表面的温度分布曲面试作出平板表面的温度分布曲面z= =f( (x, ,y) )的图形.的图形. 输入以下命令:输入以下命令: y=1:5; x=1:3; temps=[82 81 80 82 84;79 63 61 65 81;84 84 82 85 86]; mesh(x,y,temps) 解:解:1.先在先在三维坐标画出原始数据三维坐标画出原始数据,画出粗糙的温度分布曲,画出粗糙的温度分布曲 线图线图. 再输入以下命令再输入以下命令: xi=1:0.2:5; yi=1:0.2:3; zi=interp2(x,y,temps,xi,yi’,'cubic'); mesh(xi,yi,zi) 画出插值后的温度分布曲面图画出插值后的温度分布曲面图. 2.以平滑数据.以平滑数据,在在 x、、y方向上每隔方向上每隔0.2个单位的地方进行插值个单位的地方进行插值. 练习练习 山区地貌山区地貌问题问题 在某山区测得一些地点的高程如下表。

      平面区域为在某山区测得一些地点的高程如下表平面区域为 1200=x=4000,1200=y=3600) 试作出该山区的地貌图和等高线图,并对几种插值方法进行比较试作出该山区的地貌图和等高线图,并对几种插值方法进行比较 X Y 1200 1600 2000 2400 2800 3200 3600 4000 1200 1130 1250 1280 1230 1040 900 500。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.