插值法综述《计算方法》学习报告(共11页)_第1页
插值法综述《计算方法》学习报告(共11页)_第2页
插值法综述《计算方法》学习报告(共11页)_第3页
插值法综述《计算方法》学习报告(共11页)_第4页
插值法综述《计算方法》学习报告(共11页)_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

1、精选优质文档-倾情为你奉上插值法综述 一、插值法及其国内外研究进展 1.插值法简介插值法是一种古老的数学方法,它来自生产实践,早在一千多年前,我国科学家在研究历法上就应用了线性插值与二次插值,但它的基本理论却是在微积分产生之后才逐渐完善的,其应用也日益增多,特别是在计算机广泛使用之后,由于航空、机械加工、自动控制等实际问题的需要,使插值法在实践和理论上都显得更为重要,并得到了空前的发展。2.国内外研究进展l 插值法在预测地基沉降的应用l 插值法在不排水不可压缩条件下两相介质的两重网格算法的应用l 拉格朗日插值法在地震动的模拟研究中的应用l 插值法在结构抗震可靠性分析中的应用l 插值法在应力集中

2、应变分布规律实验分析中的应用3.代表性文献l 不等时距GM(1%2c1)模型预测地基沉降研究 秦亚琼 武汉理工大学学报(交通科学与工程版) 2008.2 l 不排水不可压缩条件下两相介质的两重网格算法 牛志伟 岩土力学 2008.3l 基于拉格朗日插值法的地震动的模拟 白 可 山西建筑 2010.10l 响应表面法用于结构抗震可靠性分析 张文元 世界地震工程 1997l 小议应力集中应变分布规律的实验方法 查珑珑 淮海工学院学报 (自然科学版)2004.6 二、插值法的原理【原理】设有n+1个互不相同的节点(,) (i=0,1,2,.n)则存在唯一的多项式: 使得证明:构造方程组 令:方程组的

3、矩阵形式如下:由于所以方程组(4)有唯一解。从而唯一存在。三、常用插值法3.1 Lagrange插值法3.1.1 Lagrange插值法的一般提法给定,多项式称为关于的次Lagrange插值多项式。3.1.2 Lagrange插值多项式的构造已知n+1个节点其中互不相同,不妨设要求形如: 的插值多项式。若n次多项式在n+1个节点上满足条件:就称这n+1个n次多项式为节点的n次插值基函数。3.1.3 Lagrange插值法的程序设计fx_:=ExpxA=Tablex,fx,x,0,0.8,0.2/Ng1=ListPlotTableA,Prolog->AbsolutePointSize18;

4、InterpolationA,InterpolationOrder->3g2=Plot%x,x,0,0.8Showg1,g2N%0.12,20N%0.72,20Nf0.12,20Nf0.72,203.1.4 Lagrange插值法典型例题及其解法已知,构造二次拉格朗日插值多项式。(1)计算;(2)估计误差并与实际误差相比较。解 (1)以插值点(27,3), (64,4), (125,5)代入插值公式,得=(2) 由误差公式有记在27,125上是单调递减函数。实际误差:。3.1.5 Lagrange插值法误差估计3.2 Newton插值法3.1.1 Newton插值法的一般提法称为Newt

5、on插值多项式。3.1.2 Newton插值多项式的构造由插值条件 当时,.当时,推得 .当时, 则引入记号: 依次递推可得的一般表达式: 3.1.3 Newton插值法的程序设计x0,x1,x2,x3,x4=10,11,12,13,14;yk_:=LogxkTableyk,k,0,4/N;MatrixForm%fi_,j_:=(yj-yi)/(xj-xi)Tablefi,i+1,i,0,3/N;MatrixForm%fi_,j_,k_:=(fj,k-fi,j)/(xk-xi)Tablefi,i+1,i+2,i,0,2/N;MatrixForm%fi_,j_,k_,l_:=(fj,k,l-fi

6、,j,k)/(xl-xi)Tablefi,i+1,i+2,i+3,i,0,1/N;MatrixForm%fi_,j_,k_,l_,m_:=(fj,k,l,m-fi,j,k,l)/(xm-xi)Tablefi,i+1,i+2,i+3,i+4,i,0,0/N;MatrixForm%A=y0,y1,y2,y3,y4,0,f0,1,f1,2,f2,3,f3,4, 0,0,f0,1,2,f1,2,3,f2,3,4,0,0,0,f0,1,2,3,f1,2,3,4, 0,0,0,0,f0,1,2,3,4;TransposeA/N;MatrixForm%a0=y0;a1=f0,1;a2=f0,1,2;a3=f

7、0,1,2,3;a4=f0,1,2,3,4;Nx=Sumak*Product(x-xm),m,0,k-1,k,0,4/NExpand%3.1.4 Newton插值法典型例题及其解法已知函数的函数表如下:0.400.550.650.800.901.050.410 750.578 150.696 750.888 111.026 521.253 82求四次牛顿插值多项式,并由此求的近似值。分析表中给出六对数据,故最高可构造五次多项式。但由于0.596接近于,因此可取前五对数据来做差商表。解构造差商表如下:一阶差商二阶差商三阶差商四阶差商0.40 0.550.650.800.900.410 750.5

8、78 150.696 750.888 111.026 521.116 001.186 001.275 731.384 100.280 000.358 930.433 480.197 330.213 000.031 34故四次牛顿插值多项式为 于是0.631 95。3.1.5 Newton插值法误差估计其中四、插值法的比较Lagrange 插值是利用基函数方法构造的插值多项式,在理论上十分重要,但计算不太方便。基函数方法是将插值问题划归为特定条件下容易实现的插值问题,本质上是广义的坐标系方法。Newton 插值在计算插值多项式及求解函数近似值都比较方便且计算量相对较小,是求函数近似值常用的方法,

9、尤其是等距节点的差分插值公式最为常用。五、插值法在结构工程专业的应用案例1.案例叙述应用Matlab求解水道测量数据问题摘要:水道测量数据问题是一个给定数据散乱、随机分布的二维离散数据的插值问题。本文以水道测量数据问题为例,应用Matlab软件提供的求解三维网格点数据的函数,对求解决给定数据散乱、随机分布的二维离散数据插值问题,给出了一个简便易行的方法。问题重述水道测量数据问题是1986年美国大学生数学建模竞赛的A题,由加州海军研究生院数学系的Richard Franke提供。问题如下:在某海域测得一些点(x, y)处的水深z(单位:英尺)由表1给出,水深数据是在低潮时测得的。船的吃水深度为5

10、英尺,问在矩形区域 (75,200) ´ (-50,150) 里的哪些地方船要避免进入。表1 水道水深测量数据(单位:英尺)x129.0140.0108.588.0185.5195.0105.5y7.5141.528.0147.022.5137.585.5z4868688x157.5107.577.081.0162.0162.0117.5y-6.5-81.03.056.5-66.584.0-38.5z99889492.案例解法l 假设与问题分析由题目给出的信息是很少的,除了14个位置的水深之外一无所知。显然,题目要求我们找出水深不到5英尺的区域。为了讨论方便,下面三个假设是合理的:

11、(1)所给数据是精确的; (2)讨论区域的海底曲面是光滑的,更确切地说,可以认为曲面的一阶、二阶导数是连续的。因为我们可以认为讨论区域为浅水海域,由于长期的海水水流作用,形成的是以砾石或沙为主要组成部分的海底,不存在珊瑚礁、水底峡谷、山脊等不可意料的突变地形。 (3)水深是一个按区域来划分的变量,在某个位置的水深与其周围区域的水深是相互依赖的,但这种依赖作用随距离的增大而减小。就我们讨论的问题来说,每一个给定数据点影响周围的每一个未知点,一个给定数据点离未知点越近,作用就越大。根据假设,海底曲面是连续光滑的,不存在珊瑚礁、水底峡谷、山脊等不可意料的突变地形,因而很自然的想法就是用某种光滑的拟合

12、曲面去逼近已知的14个数据点或以14个已知的数据点为基础,利用二维插值补充一些点的水深,以求得水深不超过5米的区域。l 问题求解题目中给定的14个已知数据点,是一组散乱、随机分布的二维离散数据集合,一般首先采用改进的Shepard方法,从给定的数据恢复出规则分布点上的数据,然后再应用双三次样条插值或其它的二维数据插值方法来处理。然而,利用Matlab中求解三维网格点数据的函数griddata,却可直接对散乱、随机分布的二维离散数据进行插值。函数griddata的调用格式为:xi, yi, zi = griddata(x, y, z, xi, yi, 'v4'),其返回与向量x、

13、y和z所描述的数据点集合相匹配的表面f(x, y) 上网格点的z坐标矩阵zi。函数griddata在点 (xi, yi) 处对表面函数f(x, y) 进行插值,从而得到zi的值。在此,我们采用求解三维网格点数据的函数griddata,对题目中给出的二维离散数据集合进行插值,作出矩形区域 (75,200) ´ (-50,150) 范围内的海底地形图、水深不超过5米的危险区域的海底地貌图、矩形区域 (75,200) ´ (-50,150) 范围内的海底等高线图以及水深不超过5米的危险区域的平面图,并求出水深不超过5米的危险海域范围为:113.75, 200´0, 10

14、0。问题求解的Matlab程序及运行结果附后。3.求解案例的程序设计l 求解水道测量数据问题的Matlat程序l clear;x = 129, 140, 108.5, 88, 185.5, 195, 105.5, 157.5, 107.5, 77, 81, 162, 162, 117.5;y = 7.5, 141.5, 28, 147, 22.5, 137.5, 85.5, -6.5, -81, 3, 56.5, -66.5, 84, -38.5;z = -4, -8, -6, -8, -6, -8, -8, -9, -9, -8, -8, -9, -4, -9;nx = 100;px = l

15、inspace(75, 200, nx);ny = 200;py = linspace(-50, 150, ny);xi, yi = meshgrid(px, py);xi, yi, zi = griddata(x, y, z, xi, yi, 'v4');figure(1), meshc(xi, yi, zi+5);title('(75, 200), (-50, 150) 范围内的海底地形图');rotate3dfigure(2), contour(xi, yi, zi);title('(75, 200), (-50, 150) 范围内的海底等高线图&

16、#39;);gridfigure(3), contour(xi, yi, zi, -5 -5);title('水深不超过5米的危险区域的平面图');grida, b = find(zi>=-5);amin = min(a);amax = max(a);bmin = min(b);bmax = max(b);xmin = 75+(200-75)/100)*bminxmax = 75+(200-75)/100)*bmaxymin = -50+(150+50)/200)*aminymax = -50+(150+50)/200)*amaxi1, j1 = find(zi<-5);for k = 1:length(i1) zi(i1(k), j1(k) = -5;endfigure(4), meshc(xi, yi, zi);title('水深不超过5米的危险区域的海底地貌图');rotate3dl 运行结果如下:xmin = 113.75,xmax = 200,ymin = 0,ymax = 100。4.方法的推广与探究本文虽然针对的只是水道测

温馨提示

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

评论

0/150

提交评论