首页 数学建模实验报告(3)插值

数学建模实验报告(3)插值

举报
开通vip

数学建模实验报告(3)插值数学模型实验报告 ——插值 专业: 姓名: 李 学号: 姓名: 刘 学号: 姓名: 汪 学号: 数学模型实验报告(插值) 1、​ 实验目的: 1、了解插值的基本内容。 2、掌握用数学软件包求解插值问题。 二、实验内容: (一)一维插值 一、插值的定义 已知 n+1个节点 其中 互不相同,不妨设 求任一插值点 处的插值 构造一个(相对简单的)函数 通过全部节点, 即 再用 计算插值,即 二、插值的方法 拉格朗日(Lagrange)插值 已知函数f(x)在n+1个点x0,x1,…,xn处的函数值为 y0,y1,…,yn...

数学建模实验报告(3)插值
数学模型实验报告 ——插值 专业: 姓名: 李 学号: 姓名: 刘 学号: 姓名: 汪 学号: 数学模型实验报告(插值) 1、​ 实验目的: 1、了解插值的基本 内容 财务内部控制制度的内容财务内部控制制度的内容人员招聘与配置的内容项目成本控制的内容消防安全演练内容 。 2、掌握用数学软件包求解插值问题。 二、实验内容: (一)一维插值 一、插值的定义 已知 n+1个节点 其中 互不相同,不妨设 求任一插值点 处的插值 构造一个(相对简单的)函数 通过全部节点, 即 再用 计算插值,即 二、插值的方法 拉格朗日(Lagrange)插值 已知函数f(x)在n+1个点x0,x1,…,xn处的函数值为 y0,y1,…,yn 。求一n次多项式函数Pn(x),使其满足: Pn(xi)=yi,i=0,1,…,n. 解决此问题的拉格朗日插值多项式公式如下 其中Li(x) 为n次多项式: 称为拉格朗日插值基函数。 特别地: 两点一次(线性)插值多项式: 三点二次(抛物)插值多项式: 例 采用拉格朗日多项式插值:选取不同插值节点个数n+1,其中n为插值多项式的次数,当n分别取2,4,6,8,10时,绘出插值结果图形. 拉格朗日多项式插值的这种振荡现象叫 Runge现象 解: 编写M文件程序如下: m=101; x=-5:10/(m-1):5; y=1./(1+x.^2);z=0*x; plot(x,z,'r',x,y,'LineWidth',1.5), gtext('y=1/(1+x^2)'),pause n=3; x0=-5:10/(n-1):5; y0=1./(1+x0.^2); y1=lagr1(x0,y0,x); hold on, plot(x,y1,'b'),gtext('n=2'), pause,hold off n=5; x0=-5:10/(n-1):5; y0=1./(1+x0.^2); y2=lagr1(x0,y0,x); hold on, plot(x,y2,'b:'),gtext('n=4'), pause,hold off n=7; x0=-5:10/(n-1):5; y0=1./(1+x0.^2); y3=lagr1(x0,y0,x);hold on, plot(x,y3,'r'),gtext('n=6'), pause,hold off n=9; x0=-5:10/(n-1):5; y0=1./(1+x0.^2); y4=lagr1(x0,y0,x);hold on, plot(x,y4,'r:'),gtext('n=8'), pause,hold off n=11; x0=-5:10/(n-1):5; y0=1./(1+x0.^2); y5=lagr1(x0,y0,x);hold on, plot(x,y5,'m'),gtext('n=10') 分段线性插值 计算量与n无关; n越大,误差越小. 例 用分段线性插值法求插值,并观察插值误差. 1.​ 在[-6,6]中平均选取5个点作插值 2.​ 在[-6,6]中平均选取11个点作插值 3.​ 在[-6,6]中平均选取21个点作插值 4.​ 在[-6,6]中平均选取41个点作插值 解: 编写M文件程序如下: x=linspace(-6,6,100); y=1./(x.^2+1); x1=linspace(-6,6,5);%第三个参数表示插值点的个数,可分别改为11,21,41 y1=1./(x1.^2+1); plot(x,y,x1,y1,x1,y1,'o','LineWidth',1.5), gtext('n=4'), 运行结果如下图: 结果分析:插值点越多越接近原函数 三次样条插值 比分段线性插值更光滑。 在数学上,光滑程度的定量描述是:函数(曲线)的k阶导数存在且连续,则称该曲线具有k阶光滑性。 光滑性的阶次越高,则越光滑。是否存在较低次的分段多项式达到较高阶光滑性的方法?三次样条插值就是一个很好的例子。 g(x)为被插值函数。 例 用三次样条插值选取11个基点计算插值(ych) 解: 编写M文件程序如下: x0=linspace(-5,5,11); y0=1./(1+x0.^2); x=linspace(-5,5,100); y=interp1(x0,y0,x,'spline'); x1=linspace(-5,5,100); y1=1./(1+x1.^2); plot(x1,y1,'k',x0,y0,'+',x,y,'r'); 运行结果如右图: 用MATLAB作插值计算 3、​ 用Matlab解插值问题 一维插值函数:yi=interp1(x,y,xi,'method') yi xi:处的插值结果 x,y:插值节点 xi:被插值点 'method':插值方法 注意:所有的插值方法都要求x是单调的,并且xi不能够超过x的范围。 例:在1-12的11小时内,每隔1小时测量一次温度,测得的温度依次为:5,8,9,15,25,29,31,30,22,25,27,24。试估计每隔1/10小时的温度值。 解: 编写M文件程序如下: 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') 运行结果如右图: 例: 已知飞机下轮廓线上数据如下,求x每改变0.1时的y值。 X 0 3 5 7 9 11 12 13 14 15 Y 0 1.2 1.7 2.0 2.1 2.0 1.8 1.2 1.0 1.6 解: 编写M文件程序如下: x0=[0 3 5 7 9 11 12 13 14 15 ]; y0=[0 1.2 1.7 2.0 2.1 2.0 1.8 1.2 1.0 1.6 ]; x=0:0.1:15; y1=lagr1(x0,y0,x); y2=interp1(x0,y0,x); y3=interp1(x0,y0,x,'spline'); subplot(3,1,1) plot(x0,y0,'k+',x,y1,'r') grid title('lagrange') subplot(3,1,2) plot(x0,y0,'k+',x,y2,'r') grid title('piecewise linear') subplot(3,1,3) plot(x0,y0,'k+',x,y3,'r') grid title('spline') 运行结果如右图:
本文档为【数学建模实验报告(3)插值】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_059366
暂无简介~
格式:doc
大小:347KB
软件:Word
页数:7
分类:理学
上传时间:2011-05-18
浏览量:137