数值分析常用的插值方法_第1页
数值分析常用的插值方法_第2页
数值分析常用的插值方法_第3页
数值分析常用的插值方法_第4页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

1、数值分析报告班级:专业:流水号:学号:姓名:常用的插值方法序言在离散数据的基础上补插连续函数,使得这条连续曲线通过全部给定的离散数据点。插值是离散函数逼近的重要方法,利用它可通过函数在有限个点处的取值状况,估算出函数在其他点处的近似值。早在 6 世纪,中国的刘焯已将等距二次插值用于天文计算。17 世纪之后,牛顿、拉格朗日分别讨论了等距和非等距的一般插值公式。在近代,插值法仍然是数据处理和编制函数表的常用工具,又是数值积分、数值微分、非线性方程求根和微分方程数值解法的重要基础,许多求解计算公式都是以插值为基础导出的。插值问题的提法是:假定区间a,b上的实值函数 f(x )在该区间上n1 个互不相

2、同点 x0, x1 xn 处的值是 f(x0), f(xn),要求估算 f (x)在 a, b中某点的值。其做法是:在事先选定的一个由简单函数构成的有n1 个参数 C0,C1, Cn 的函数类 (C0,C1, Cn)中求出满足条件P(xi )(f xi )(i 0,1, n)的函数 P(x),并以 P(x)作为 f(x) 的估值。此处 (fx)称为被插值函数, x0,x1, xn 称为插值结 ( 节) 点, (C0,C1, Cn)称为插值函数类,上面等式称为插值条件,( C0, Cn)中满足上式的函数称为插值函数,R(x) f( x) P(x )称为插值余项。求解这类问题,它有很多种插值法,其

3、中以拉格朗日(Lagrange) 插值和牛顿(Newton) 插值为代表的多项式插值最有特点,常用的插值还有Hermit 插值,分段插值和样条插值。一拉格朗日插值1. 问题提出:已知函数 yfx 在 n+1 个点 x0 , x1, xn 上的函数值 y0 , y1 , yn ,求任意一点x 的函数值 fx。说明:函数 yfx 可能是未知的;也可能是已知的,但它比较复杂,很难计算其函数值 fx。2. 解决方法:构造一个 n 次代数多项式函数 Pnx 来替代未知(或复杂)函数 y f x ,则用 Pn x 作为函数值 fx 的近似值。设 Pn xa0 a1xa2 x2an xn ,构造 Pnx 即

4、是确定n+1 个多项式的系数a0 , a1, a2 , , an 。3. 构造 Pn x的依据:当多项式函数Pn x 也同时过已知的n+1 个点时,我们可以认为多项式函数Pn x 逼近于原来的函数fx 。根据这个条件,可以写出非齐次线性方程组:a0a1x0a2 x02an x0 ny0a0a1x1a2 x12an x1ny1a0a1xna2 xn2an xn nyn其系数矩阵的行列式D 为范德萌行列式:1x0x02x0n1x1x12x1nDxi x jn i j 01xnxn2xn n故当 n+1 个点的横坐标 x0 , x1, xn 各不相同时,方程组系数矩阵的行列式D 不等于零,故方程组有

5、唯一解。即有以下结论。结论:当已知的 n+1 个点的横坐标 x0 , x1, , xn 各不相同时,则总能够构造唯一的 n 次多项式函数 Pn x ,使 Pn x 也过这 n+1 个点。4. 几何意义f(x)P5(x)5举例:已知函数 fxx ,求 f 115 。分析:本题理解为,已知“复杂”函数fxx ,当x=81,100,121,144时,其对应的函数值为: y=9,10,11,12 ,当 x=115 时,求函数值f 115 。解:(1)线性插值:过已知的( 100,10 )和(121,11 )两个点,构造 1 次多项式函数 P x ,于是有1P1x121x100x121101110012

6、1100则f 115P1 115。(2)抛物插值:构造 2 次多项式函数 P2 x ,使得它过已知的(100,10 )(、121,11 )和( 144,12 )三个点。于是有2 次拉格朗日插值多项式:P2x121x 144x100x 144x100x 121x121100144101001211114410014412100121144121则有f 115P2 11510.722755505364206. 拉格朗日 n 次插值多项式公式:xx1xx2xxny0Pn xx1x0x2x0xnx0xx0xx2xxny1x1x0x1x2x1xnxx0xx1xxn 1ynxnx0xnx1xnxn 1nP

7、n xl 0 x y0l1 x y1ln x ynlk x ykk0其中 lkx称为基函数(k=0,1,.,n ),每一个基函数都是关于 x 的 n 次多项式,其表达式为:lk xnxx jj0 xkx jjk拉格朗日公式特点:1把每一点的纵坐标yk 单独组成一项;2. 每一项中的分子是关于 x 的 n 次多项式,分母是一个常数;3. 每一项的分子和分母的形式非常相似,不同的是:分子是x,而分母是xk7. 误差分析(拉格朗日余项定理)n1nfPnx xk ,x f xn1 ! k 0其中在 x0 , x1, xn , x 所界定的范围内。针对以上例题的线性插值,有P1 115 f 115f11

8、5 100 115 1212!函数 fx 在100,115 区间绝对值的极大值为f1002.5 10 4 ,则有:P 115f 1150.011250.051于是近似值 f 115P1 115有三位有效数字。针对以上例题的抛物线插值,有P2 115f 115f115 100 115 121115 1443!函数 fx 在 100,115区间绝对值的极大值为f 100 3.75 10 6 ,则有P2 115f 1150.00163125<0.005于是近似值 f 115P2115 10.72275550536420 有四位有效数字。8. 拉格朗日插值公式的优点公式有较强的规律性,容易编写程

9、序利用计算机进行数值计算。9. 拉格朗日插值通用程序程序流程图如下:开始输入 nxi,yi,(i=0,1,n )t (即插值点 x)p0,k0k<=nyynl 1,j 0j<kyn开始输入 nl l*(t-xj)/(xk-xj) j=j+1j=k+1xi,yi,(i=0,1,n )t (即插值点 x)p0,k0nj< nyl l*(t-xj)/(xk-xj) j=j+1k<=nyy计算 l(k)np=p+l*ykp=p+l*ykk=k+1k=k+1输出p输出p结束结束l 1,j 0j<kynl l*(t-xj)/(xk-xj) j=j+1j=k+1nj< n

10、yl l*(t-xj)/(xk-xj) j=j+1文件 lagrange.m 如下:%拉格朗日插值close alln=input('已知的坐标点数n=?');x=input('x1,x2,.,xn=?');y=input('y1,y2,.,yn=?');xx=input('插值点 =? ');syms t%定义 t 为符号量p=0;for k=1:nl=1;for j=1:k-1l=l*(t-x(j)/(x(k)-x(j);endfor j=k+1:nl=l*(t-x(j)/(x(k)-x(j);endp=p+l*y(k);en

11、dp=inline(p);%fplot(p,min(min(x),xx)-1,max(max(x),xx)+1);%把符号算式 p 变为函数形式画多项式函数hold onp(xx)plot(x,y,'o',xx,p(xx),'*');%显示插值点画已知点和插值点在 MATLAB命令窗口输入:lagrange然后有以下对话过程和结果,已知的坐标点数n=?6x1,x2,.,xn=?1,3,5,7,9,11y1,y2,.,yn=?-1,20,0,-1,12,3插值点 =?8ans =有以下图形:二牛顿插值拉格朗日插值的缺点:无承袭性(继承性)若算出 3 点的抛物插值精

12、度不够,再进行4 点的3 次多项式插值时,必须从头算起,前面算出的3 点抛物插值的计算结果不能利用。而泰勒插值却是具有承袭性的,如线性插值的结果不精确,那么再加上一项,就变成了泰勒抛物插值,如:泰勒 1 次插值: P1xfx0fx0xx0泰勒 2 次插值: P2xfx0fx0xx0f x0x x02 。2!而牛顿插值就是具有承袭性的插值公式1. 差商的概念设 n+1 个点 x0 , x1, , xn 互不相等,则定义:xi和 x j ij 两点的一阶差商为: f xi , x jf xifx jxix jxi, x j , xk三点的二阶差商为: fxi, x j , xkf xi , xjf

13、 xj , xkxixkxi, x j , xk, xl 四点的三阶差商为: ff xi , x j , xkf xj , xk , xlxi , xj , xk , xlxixln+1 个点 x0 , x1 , xn 的 n 阶差商为:fx0 , x1, xnf x0 , x1 , , xn 1f x1 , x2 , xnx0xn差商具有对称性: f xi , x jfxj, xi ; fxi , xj , xkfx j , xi , xk2. 牛顿插值解决的问题与拉格朗日插值解决的问题相同只是表述 n 次多项式 Pn x 的公式不同。3. 牛顿插公式的推导根据差商的概念,有:fxfx0fx

14、, x0xx0fx, x0是 x, x0 两点的一阶差商;fx, x0fx0 , x1fx, x0 , x1xx1fx, x0 , x1是 x, x0 , x1 三点的二阶差商;fx, x0 , xn 1fx0 , x1, xnfx, x0, x1, xnxxn把以上各式从后向前逐次代入,可以得到:f xf x0f x0 , x1x x0f x0 , x1 , x2x x0x x1f x0 , x1 , , xnx x0x x1x xn 1f x, x0 , x1 , , xnx x0x x1x xnf xPn xRnx其中 Pn xf x0f x0 , x1x x0f x0 , x1 , x

15、2x x0 x x1f x0 , x1, , xnx x0x x1x xn 1Rn xf x, x0 , x1, , xnx x0x x1x xn以上 Pnx 的表达式称为牛顿插值公式, 可以证明, n 次牛顿插值多项式与 n 次拉格朗日插值多项式完全相同,只是表达形式不同。故,拉格朗日余项定理与牛顿余项定理相同:nfn1nRn xPn xf xf x, x0 , x1, , xnx xkx xk ,n1 !k0k 0其中在 x0 , x1, xn , x 所界定的范围内。则有公式: fx, x0 , x1,f n1, xn1 !n4. 牛顿插值差商表xiyi一阶差商二阶差商n 阶差商*x0y

16、01x1y1fx0,x1(x-x0)x2y2fx1,x2fx0,x1,x2(x-x0)(x-x1)x3y3fx2,x3fx1,x2,x3(x-x0)(x-x2) xn-yn-11xnynfxn-1,xnfxn-2,xn-1,xnfx0,xn(x-x0)(x-xn-1)5. 举例已知函数 f(x) 当 x=-2,-1,0,1,2时,其对应函数值为 f(x)=13,-8,-1,4,1。求 f(0.5)的值。解:该题目与例 1 相比,就是多了一个点, 所以和例 1 的差商表相比, 只需多一列,多一行:xiyi一阶差二阶差三阶差四阶差*商商商商-2131-1-8-21(x+2)0-1714(x+2)(

17、x+1)145-1-5(x+2)(x+1)x21-3-4-11(x+2)(x+1)x(x-1)而 5 个点的 4 次牛顿插值多项式 P4x 是在 P3x 的基础上多增加1 项:P4 x 13 21 x 214 x 2 x 1 5 x 2 x 1 x x 2 x 1 x x 1则f 0.5P4 0.5 1321 0.5 214 0.520.5 150.5 20.5 1 0.5 0.5 2 0.5 1 0.5 0.52.6875可以在 MATLAB下运行程序 newton02.m:p4=inline('13-21*(x+2)+14*(x+2)*(x+1)-5*(x+2)*(x+1)*x+(

18、x+2)*(x+1)*x*(x-1)');fplot(p4,-2.5,2.5,'r');hold onxi=-2,-1,0,1,2;yi=13,-8,-1,4,1;plot(xi,yi,'*');plot(0.5,p4(0.5),'o');可以得到以下图形:6. 牛顿插值的优点( 1)具有承袭性质( 2)利用差商表,计算多点插值,比拉格朗日公式计算方便。7. 牛顿插值算法的通用程序以下是程序流程图:开始输入 nxi,yi,(i=0,1,n )t (即插值点 x)fi=yi,i=0,n1p=f0,k=1i=1i<=nnyyk<=

19、nyl=1,j=0nnk=nj< k-1yk>=iyfk=(fk-1-fk)/(xk-i-xk)k=k-1i=i+11nl l*(t-xj) j=j+1pp+fk*lk=k+1输出p结束MATLAB的通用程序 newton.m 为:%牛顿插值close alln=input('已知的坐标点数n=?');x=input('x1,x2,.,xn=?');y=input('y1,y2,.,yn=?');xx=input('插值点 =? ');% 计算差商: fx1,x2,fx1,x2,x3,.,fx1,x2,.,xn f=y

20、;for i=1:n-1%计算第 i 阶差商for k=n:-1:i+1f(k)=(f(k)-f(k-1)/(x(k)-x(k-i);endendsyms t%定义t为符号量p=f(1);for k=2:nl=1;for j=1:k-1l=l*(t-x(j);endp=p+l*f(k);endp=inline(p);%把符号算式p 变为函数形式fplot(p,min(min(x),xx)-1,max(max(x),xx)+1);%画多项式函数hold onp(xx)plot(x,y,'o',xx,p(xx),'*');%显示插值点画已知点和插值点在 MATLAB命令窗口输入:newton然后有以下对话过程和结果,已知的坐标点数n=?6x1,x2,.,xn=?1,3,5,7,9,11y1,y2,.,yn=?-1

温馨提示

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

评论

0/150

提交评论