1 / 22

第四章 插值法 ( Interpolation Method)

第四章 插值法 ( Interpolation Method). 邹秀芬教授 数学与统计学院. 举例. 已经测得在某处海洋不同深度处的水温如下: 深度( M) 466 741 950 1422 1634 水温( o C)7.04 4.28 3.40 2.54 2.13 根据这些数据,希望合理地估计出其它深度(如500米,600米,1000米 … )处的水温. 这就是本章要讨论的“插值问题”. 插值问题的定义.

norm
Download Presentation

第四章 插值法 ( Interpolation Method)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第四章 插值法(Interpolation Method) 邹秀芬教授 数学与统计学院

  2. 举例 已经测得在某处海洋不同深度处的水温如下: 深度(M) 466 741 950 1422 1634 水温(oC)7.04 4.28 3.40 2.54 2.13 根据这些数据,希望合理地估计出其它深度(如500米,600米,1000米…)处的水温 这就是本章要讨论的“插值问题”

  3. 插值问题的定义 当精确函数 y = f(x) 非常复杂或未知时,在区间[a,b]上一系列节点 x0 … xm处测得函数值 y0= f(x0), …, ym= f(xm),由此构造一个简单易算的 近似函数 g(x) f(x),满足条件 g(xj) = f(xj) (j = 0, … m) (*) 这个问题称为“插值问题” 这里的 g(x)称为f(x) 的插值函数。 节点 x0 … xm称为插值节点, 条件(*)称为插值条件,区间[a,b]称为插值区间

  4. x3 x4 x2 x0 x1 x g(x) f(x)

  5. 插值函数的类型有很多种 代数多项式 最常用的插值函数是 …? 用代数多项式作插值函数的插值称为代数插值 本章主要讨论的内容 插值法 插值函数 插值问题

  6. 一、插值问题解的存在唯一性? • 二、插值多项式的常用构造方法? • 三、插值函数的误差如何估计? 代数插值

  7. 4.2 代数插值问题解的存在惟一性 给定区间[a,b]上互异的n+1个点{xj}nj=0的一 组函数值f(xj),j =0,…, n,求一个n次多项式pn(x)∈Pn,使得 pn(xj)=f(xj),j=0,1,…,n. …... (1) 令 pn(x)=a0+a1x+…+anxn, …... (2) 只要证明Pn(x)的系数a0 ,a1,…, an存在唯一即可

  8. 为此由插值条件(1)知Pn(x)的系数满足下列n+1个代数方程构成的线性方程组a0+a1x0+…+anx0n=f(x0)为此由插值条件(1)知Pn(x)的系数满足下列n+1个代数方程构成的线性方程组a0+a1x0+…+anx0n=f(x0) a0+a1x1+…+anx1n= f(x1) ……………………. a0+a1xn+…+anxnn= f(xn) ……(3)

  9. 而ai(i=0,1,2,…,n)的系数行列式是Vandermonde行列式而ai(i=0,1,2,…,n)的系数行列式是Vandermonde行列式 由于xi互异,所以(4)右端不为零,从而方程组(3)的解 a0 ,a1 ,…an存在且唯一。

  10. 为此我们必须从其它途径来求Pn(x): • 不通过求解方程组而获得插值多项式 通过解上述方程组(3)求得插值多项式pn(x)的方法并不可取.这是因为当n较大时解方程组的计算量较大,而且方程组系数矩阵的条件数一般较大(可能是病态方程组),当阶数n越高时,病态越重。

  11. 基本思想:在n次多项式空间Pn中找一组合适的基函数基本思想:在n次多项式空间Pn中找一组合适的基函数 0(x),1(x),…, 3(x),使 pn(x)=a0 0(x)+a1 1(x)+…+an 3(x) 不同的基函数的选取导致不同的插值方法 Lagrange插值 Newton插值

  12. 求 n次多项式 使得 已知 x0, x1; y0,y1,求 - y y = + - 1 0 P ( x ) y ( x x ) - 1 0 0 x x 1 0 1 = y0+ y1  = l ( x ) y i i = 0 i l0(x) l1(x) - - x x x x 0 1 - - x x x x 0 1 1 0 4.3 Lagrange插值 使得 n = 1 可见 P1(x) 是过 ( x0 , y0) 和 ( x1, y1) 两点的直线。

  13. (2) 与 节点有关,而与f无关 • 构造基函数 j=0,1,…,n (1) 这里每个lj(x)都是n次多项式,且由(1)式容易验证 lj(x)满足

  14. 可以证明函数组l0(x),l1(x),…, ln(x) 在插值区间[a,b]上线性无关,所以这n+1个函数可作为Pn的一组基函数,称为Lagrange插值基函数 对任意的pn(x)∈Pn,都有 pn(x)=c0 l0(x)+c1 l1(x)+…+cn ln(x) 其中c0 ,c1 ,…,cn 为组合系数

  15. 由Lagrange插值基函数满足(2)式可知,方程组变成由Lagrange插值基函数满足(2)式可知,方程组变成 因此得到插值多项式 pn(x)= f(x0)l0(x)+f(x1) l1(x)+…+ f(xn) ln(x) 称Ln(x)为n次Lagrange插值多项式 记为Ln(x)= f(xj)lj(x)

  16. The mathematician S. had to move to a new place. His wife didn't trust him very much, so when they stood down on the street with all their things, she asked him to watch their ten trunks, while she got a taxi. Some minutes later she returned. Said the husband: "I thought you said there were ten trunks, but I've only counted to nine!" The wife said: "No, they're TEN!" "But I have counted them: 0, 1, 2, ..."

  17. 插值余项 /* Remainder */ 存在 使得 Rolle’s Theorem的推论: 若 充分光滑,且 定理4.3.1 若 在[a , b]内存在, 则在[a , b]上 的n+1个互异的点,对 f(x)所作的n次Lagrange插值多项式Ln (x) 有误差估计

  18. 证明:由于Rn(xi) =0 ,i=0,1,…,n 任意固定 x xi (i = 0, …, n), 考察 (t)有 n+2个不同的根 x0 … xnx

  19. 例:已知 分别利用 sin x 的1次、2次 Lagrange 插值计算 sin 50, 并估计误差。 利用 解: n = 1 分别利用x0, x1以及 x1, x2计算

  20. 利用 计算得:sin 50  0.76008, sin 50 = 0.7660444… 利用x0, x1作为插值节点的实际误差  0.01001 利用x1, x2作为插值节点的实际误差 0.00596

  21. n = 2 sin 50 = 0.7660444… 2次插值的实际误差  0.00061

  22. 计算实习: Lagrange Polynomial 1 输入n,x,y,x* 2 赋初始值Pai=1.0,Slag=0.0 3for i=0,1,…,n 3.1Pai*(x*-xi)→Pai end for(i)  4for j=0,1,…,n 4.1Tai=1.0 4.2for i=0,1,…,n 4.2.1if i≠j then Tai*(xj-xi)→Tai end if end for(i)  4.3Slag+((yj*Pai)/(x*-xj)*Tai)→Slag end for(j)  5 输出Slag 6end 基函数lj(x)的分子 插值节点个数 基函数lj(x)的分母 存放在插值点x*处的计算结果 xi,yi(i=0,1,…,n)

More Related