函数的数值逼近-插值.doc

上传人:灯火****19 文档编号:135116535 上传时间:2020-06-12 格式:DOC 页数:15 大小:566.50KB
返回 下载 相关 举报
函数的数值逼近-插值.doc_第1页
第1页 / 共15页
函数的数值逼近-插值.doc_第2页
第2页 / 共15页
函数的数值逼近-插值.doc_第3页
第3页 / 共15页
函数的数值逼近-插值.doc_第4页
第4页 / 共15页
函数的数值逼近-插值.doc_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《函数的数值逼近-插值.doc》由会员分享,可在线阅读,更多相关《函数的数值逼近-插值.doc(15页珍藏版)》请在金锄头文库上搜索。

1、课程名称 计算方法 实验项目名称 函数的数值逼近插值 实验成绩 指导老师(签名 ) 日期 2011-9-16 一. 实验目的和要求1 掌握用Matlab计算Lagrange、分段线性、三次样条三种插值的方法,改变节点的数目,对三种插值结果进行初步分析。2 通过实例学习如何用插值方法解决实际问题。二. 实验内容和原理1) 编程题2-1要求写出Matlab源程序(m文件),并对每一行语句加上适当的注释语句;2) 分析应用题2-2,2-3,2-4,2-5要求将问题的分析过程、Matlab源程序、运行结果和结果的解释、算法的分析等写在实验报告上。2-1 分析应用题用在产生5个节点。用以下五种不同的节点

2、构造Lagrange插值公式来计算处的插值,与精确值比较并进行分析。function y=lagr(x0,y0,x)n=length(x0);m=length(x);L=zeros(1,n);y=zeros(1,m);for k=1:m s=0; for i=1:n L(i)=1; for j=1:n if j=i L(i)=L(i)*(x(k)-x0(j)/(x0(i)-x0(j); end end s=s+y0(i)*L(i); end y(k)=s;end1) 用构造; x0=4,9; y0=2,3; lagr(x0,y0,5)ans = 2.2000 2) 用构造; x0=1,4,9;

3、 y0=1,2,3; lagr(x0,y0,5)ans = 2.26673) 用构造; x0=1,4,9,16; y0=1,2,3,4; lagr(x0,y0,5)ans = 2.25404) 用构造; x0=0,1,9,16; y0=0,1,3,4; lagr(x0,y0,5)ans = 2.95245) 用全部插值节点构造。 x0=0,1,4,9,16; y0=0,1,2,3,4; lagr(x0,y0,5)ans = 2.0794从结果看出,用构造时误差最小,而用构造时并没有更精确,误差还更大,所以不是用的构造点越多越准确。2-2 分析应用题意大利柑橘的产量变化如下表。使用3次样条插值来

4、估计1962年、1977年和1992年的产量。将这些结果与相对应的实际值进行比较,并说明计算的精度。实际值分别为12380,27403和32059(kg)。再利用Lagrange插值多项式重新计算。年份196519701980198519901991产量(kg)177692400125961343362903633417 x0=1965,1970,1980,1985,1990,1991; y0=17769,24001,25961,34336,29036,33417; y1=spline(x0,y0,1962)y1 = 5.1461e+003 y2=spline(x0,y0,1977)y2 =

5、2.2642e+004 y3=spline(x0,y0,1992)y3 = 4.1894e+004利用Lagrange插值多项式计算: x0=1965,1970,1980,1985,1990,1991; y0=17769,24001,25961,34336,29036,33417; y1=lagr(x0,y0,1962)y1 = -7.7765e+004 y2=lagr(x0,y0,1977)y2 = 1.5405e+004 y3=lagr(x0,y0,1992)y3 = 4.3127e+0042-3 分析应用题在区间-1,1上,在21个平均分布的节点上对函数进行估计。计算Lagrange插值

6、多项式和3次样条,并在给定的区间上将两个函数的曲线与进行比较。使用干扰数据来重复计算。注意观察,对于小扰动,Lagrange插值多项式与3次样条相比,分析哪个更敏感。 x=linspace(-1,1,21); y=sin(2*pi*x)y = Columns 1 through 10 0.0000 0.5878 0.9511 0.9511 0.5878 -0.0000 -0.5878 -0.9511 -0.9511 -0.5878 Columns 11 through 20 0 0.5878 0.9511 0.9511 0.5878 0.0000 -0.5878 -0.9511 -0.9511

7、 -0.5878 Column 21 -0.0000 x0=linspace(-1,1,11); y0=sin(2*pi*x0); y1=lagr(x0,y0,x)y1 = Columns 1 through 10 0.0000 0.6329 0.9511 0.9433 0.5878 0.0024 -0.5878 -0.9522 -0.9511 -0.5869 Columns 11 through 20 0 0.5869 0.9511 0.9522 0.5878 -0.0024 -0.5878 -0.9433 -0.9511 -0.6329 Column 21 -0.0000 y2=inter

8、p1(x0,y0,x,spline)y2 = Columns 1 through 10 0.0000 0.6494 0.9511 0.9241 0.5878 0.0048 -0.5878 -0.9434 -0.9511 -0.5818 Columns 11 through 20 0 0.5818 0.9511 0.9434 0.5878 -0.0048 -0.5878 -0.9241 -0.9511 -0.6494 Column 21 -0.0000可以看出3次样条更敏感。2-4 分析应用题已知函数表如下:0.70.91.11.31.51.70.64420.78330.89120.96360.

9、99750.9917计算的近似值。2-5 分析应用题利用Matlab相关函数分析用下列三种不同的插值逼近著名的Runge函数1)Lagrange插值;2)分段线性插值;3)三次样条插值。其中取插值节点为区间上的10等分点,同时列出100等分点上的三种插值结果,比较分析,同时对这三种插值在100等分点上进行作图比较。 x=linspace(-1,1,101); y=1./(1+25*x.2); x0=linspace(-1,1,11); y0=1./(1+25*x0.2); y1=lagr(x0,y0,x); y2=interp1(x0,y0,x); y3=interp1(x0,y0,x,spl

10、ine); plot(x,y,k,x,y1,g,x,y2,b,x,y3,m)2-6 分析应用题运行程序figureset(gcf,menubar,none)axes(position,0 0 1 1)x,y=ginput然后将你的手直接放在弹出窗口中,用鼠标点击选取需要的插值点,最后回车得到所有插值点的坐标。用三次样条插值函数对手的形状进行插值,并作图。提示:可用构造“参数曲线”的方法,即在参数区间上选取个插值点,然后用三次样条插值构造逼近函数在个点上的值:,最后以这个点作出图形。 m=length(x); s=(1:m); n=(1:0.05:m); u=spline(s,x,n); v=s

11、pline(s,y,n); plot(x,y,u,v)2-7 分析应用题美国的人口普查每10年举行一次,下表列出了从1940年到1990年的人口(按千人计)年1940年1950年1960年1970年1980年1990年人口(千)1321651513261793232033022265422496331) 选择一种插值求在1930年、1965年和2010年人口的近似值。 x=1940,1950,1960,1970,1980,1990; y=132165,151326,179323,203302,226542,249633; spline(x,y,1930)ans = 1.3918e+005 sp

12、line(x,y,1965)ans = 1.9178e+005 spline(x,y,2010)ans = 2.9056e+0052) 1930年的人口大约是123203千。你认为你得到的1965年和2010年的人口数字精确度如何?精确度不高。2-8 分析应用题测得平板表面3*5网格点处的温度分别为: (二维插值应用)828180828479636165818484828586 试作出平板表面的温度分布曲面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); pause xi=1:0.

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件 > 初中课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号