当前位置:文档之家› 多项式插值法和拉格朗日插值

多项式插值法和拉格朗日插值

多项式插值法和拉格朗日插值教案一多项式插值法和拉格朗日插值基本内容提要1 多项式插值法的基本概念2 插值多项式的存在性与唯一性分析3 拉格朗日插值多项式的构造及截断误差 4 截断误差的实用估计式 5 逐次线性插值法教学目的和要求1 熟练掌握多项式插值法的基本概念2 理解插值多项式的存在性与唯一性3 掌握拉格朗日插值法 4 掌握截断误差的估计方法5 理解逐次线性插值法的基本思想,掌握Aitken逐次线性插值法6 掌握运用拉格朗日插值法处理问题的基本过程教学重点1 拉格朗日插值基函数及拉格朗日插值多项式的构造2 拉格朗日插值多项式的截断误差分析 3 逐次线性插值法的基本思想教学难点1 插值多项式存在唯一性条件的讨论分析2 插值误差的分析与估计3 Aitken逐次线性插值法的计算过程课程类型新知识理论课教学方法结合提问,以讲授法为主教学过程问题引入实际问题中许多变量间的依赖关系往往可用数学中的函数概念刻画,但在多数情况下,这些函数的表达式是未知的,或者函数已知,但形式十分复杂。

基于未知函数或复杂函数的某些已知信息,如何构造这些函数的近似表达式?如何计算这些函数在其它点处的函数值?所构造的近似表达式与真实函数的误差是多少?插值理论与方法就是解决这些问题的有效工具之一。

§2.1 多项式插值2.1.1 基本概念假设f(x)是定义在区间[a,b]上的未知或复杂函数,但已知该函数在点a≤x0P(xi)=yi,i=0,1,2,L,n,即在给定点xi处,P(x)与f(x)是相吻合的。

(2.1)把P(x)称为f(x)的插值多项式(函通常把上述x0数), f(x)称为被插函数。

[a,b]称为插值区间,条件(2.1)称为插值条件,并把求P(x)的过程称为插值法。

如果P(x)为m次多项式Pm(x)=a0xm+a1xm−1+Lam−1x+am,则称该插值法为多项式插值;如果P(x)为三角多项式,则称为三角插值;如果P(x)为分段多项式,则称为分段插值。

画图说明插值法的几何意义。

2.1.2 插值多项式的存在性与唯一性如果插值函数是如下m次的多项式:Pm(x)=a0xm+a1xm−1+Lam−1x+am,那么插值函数的构造就是要确定Pm(x)表达式中的m+1个系数a0,a1,L,am。

由于插值条件包含n+1个独立等式,所以只要m=n,就可以证明这样的插值多项式是唯一存在的。

实际上,由n+1个插值条件可得nn−1⎧a0x0+a1x0+Lan−1x0+an=y0⎪nn−1⎪a0x1+a1x1+Lan−1x1+an=y1⎨(2.2)M⎪nn−1⎪⎩a0xn+a1xn+Lan−1xn+an=yn这是一个关于a0,a1,L,an的n+1阶线性方程组,且其系数矩阵对应行列式是线性代数中著名的范德蒙(Vandermonde)行列式。

该行列式的值Vn(x0,x1,L,xn)=∏∏(xi−xj)i=1j=0ni因为i≠j时,xi≠xj,所以Vn(x0,x1,L,xn)≠0。

从而满足插值条件的多项式唯一存在。

§2.2 拉格朗日插值法 2.2.1 拉格朗日插值多项式的构造利用节点直接构造如下多项式'πn(x)πn+1(x), = li(x)='+1'()πn+1(xi)(x−xi)πnxi+1其中,πn+1(x)=(x−x0)(x−x1)L(x−xn),π'n+1(x)=(x−x0)L(x−xi−1)(x−xi+1)L(x−xn).容易验证该多项式具有性质:⎧0li(xj)=⎨⎩1因此,n次多项式j≠ij=iLn(x)=l0(x)y0+l1(x)y1+L+ln(x)yn=∑lk(x)ykk=0n一定具有性质Ln(xi)=∑lk(xi)yk=li(xi)yi=yi,i=0,1,L,n,k=0n即满足插值条件。

根据插值多项式的惟一性知,Ln(x)即为所求。

称Ln(x)为拉格朗日插值多项式,构成Ln(x)的li(x)(i=0,1,L,n),称为拉格朗日插值基函数。

实际上,拉格朗日插值多项式是n+1个基函数的线性组合,而组合系数是插值条件中的已知函数值。

例 2.2.1 写出已知两个和三个插值节点条件的拉格朗日插值多项式。

本例有两个目的,一是要说明拉格朗日插值多项式的构造过程,二是要从几何上说明拉格朗日插值基函数的基本性质。

2.2.2 拉格朗日插值多项式的截断误差在区间[a,b]上用Ln(x)近似未知或复杂函数f(x),其截断误差是指Rn(x)=f(x)−Ln(x) 通常称Rn(x)为拉格朗日插值余项。

定理2.2.1 假设f(n)(x)在[a,b]上连续,f(n+1)(x)在(a,b)内存在。

Ln(x)是满足插值条件(2.1)的拉格朗日插值多项式,则对任何x∈[a,b],插值余项Rn(x)=f(x)−Ln(x)=1f(n+1)(ξ)πn+1(x) (2.3)(n+1)!其中ξ∈(a,b)依赖于x。

例2.2.3 写出线性插值和抛物线插值的余项。

解根据定理2.2.1知,线性插值余项: 1R(x)=f''(ξ)(x−x0)(x−x1) (2.4)2其中,ξ∈[x0,x1]。

抛物线插值余项:1R2(x)f'''(ξ)(x−x0)(x−x1)(x−x2) (2.5)6其中,ξ∈[x0,x2]。

总结:公式(2.3)从理论上说明了运用插值法时必须注意下列问题: 1)如果f(x)本身是次数不超过n的多项式,那么满足n+1个插值条件的插值多项式就是它本身。

这是因为f(n+1)(x)≡0,x∈[a,b],从而Rn(x)≡0。

2)如果插值区间[a,b]很大,那么对给定的x,|πn+1(x)|的值一般会很大(因为这时许多因数都将大于1)。

因此,误差Rn(x)可能很大。

反过来,如果插值区间[a,b]很小,比如b−a一句话,小的区间上插值有利于减少误差。

3)因为在很大的区间上插值,|πn+1(x)|的值可能会很大,所以,n→∞时,limRn(x)未必趋于零。

换句话说,依靠增多插值节点不一定能减少误差。

4)插值多项式一般仅用来估计插值区间内点的函数值(即内插)。

用它来计算插值区间外点的函数值(即外插)时,误差可能会较大。

2.2.3 截断误差的实用估计式提问:既然公式(2.3)估计误差时不实用,那么实际中如何估计截断误差呢?:假设插值条件中包含n+2组数据(比一般实际情况下多一组)f(xi)=yi,i=0,1,L,n,n+1那么利用前n+1组数据我们可以构造一个n次拉格朗日插值多项式Ln(x),利用后n+1组数据我们可以构造另一个n次拉格朗日插值多项式L*n(x)。

利用公式(2.3)知,它们各自的插值余项为1fn+1(ξ)(x−x0)(x−x1)L(x−xn),(n+1)!1n+1*f(x)−L*x=fξ()()(x−x1)(x−x2)L(x−xn+1).n(n+1)!f(x)−Ln(x)=两式相减得:L*n(x)−Ln(x)≈并可写成1fn+1(ξ)(x−x1)L(x−xn)(xn+1−x0),(n+1)!L*(x)−Ln(x)1n+1(2.6) f(ξ)(x−x1)L(x−xn)≈n(n+1)!xn+1−x0注意到上式中利用了fn+1(ξ)≈fn+1(ξ*)。

利用(2.6)可得:Ln(x)−L*n(x)Rn(x)=f(x)−Ln(x)≈(x−x0)x0−xn+1*Rn(x)=f(x)−L*n(x)≈L(x)−Ln(x)(x−xn+1).xn+1−x0*n(2.7)(2.7)式给出了用Ln(x)或L*n(x)作近似计算时的实用误差估计式。

它不需要计算高阶导数,也不用估计插值区间上高阶导数的界。

例2.2.5 已知f(0)=2,f(1)=3,f(2)=12.利用拉格朗日插值法计算未知函数y=f(x)在x=1.2078处的函数值f(1.2078),并估计误差。

课堂中利用本例说明:1)利用函数在某些点上的信息如何计算该函数在其他指定点上的值;2)利用截断误差的实用估计式估计插值误差的过程。

§2.3 逐次线性插值法2.3.1 逐次线性插值思想如果插值条件中包含n+2组数据:f(xi)=yi,i=0,1,L,n+1,那么利用前n+1组数据,可以构造一个n次拉格朗日插值多项式Ln(x);利用后n+1组数据,可以构造另一个拉格朗日插值多项式L*n(x)。

它们的实用截断误差估计式为Ln(x)−L*n(x)Rn(x)=f(x)−Ln(x)≈(x−x0)x0−xn+1*Rn(x)=f(x)−L*n(x)≈L(x)−Ln(x)(x−xn+1).xn+1−x0*n(2.8)那么n+1次多项式L*(x)−Ln(x)Pn+1(x)=L(x)+n(x−xn+1)xn+1−x0*n应该是f(x)的更好的近似函数。

上述的Pn+1(x)满足插值条件:Pn+1(xi)=yi,i=0,1,L,n,n+1.就是说,Pn+1(x)恰好是由已知n+2个插值节点确定的拉格朗日插值多项式Ln+1(x)。

这意味着从任何n+1个插值节点构造n次拉格朗日插值多项式Ln(x),可以先选用合适的两个节点构造线性插值多项式,再利用线性插值多项式构造2次插值多项式,利用2次插值多项式又可以构造3次插值多项式,……,直到构造出n次插值多项式。

当不关心最终插值多项式的表达式,而只需要利用插值方法计算未知函数或复杂函数的函数值时,这种思路方法特别有效,可以保证选用尽量少的节点,计算出满足给定精度要求的函数值。

2.3.2 艾特肯(Aitken)算法对未知函数或复杂函数f(x),假设已知如下信息:f(xi)=yi,i=0,1,L,n.问题是利用以上信息计算f(x)在任何一点x=处的函数值f(,且误差不超过上限ε0。

第一步:利用节点x0,x1构造线性插值多项式N0,1(x),利用节点x0,x2构造另一个线性插值多项式N0,2(x)。

计算N0,1()和N0,2(。

利用实用误差估计式估计N0,1()的误差R0,1(=若R0,1(N0,1(−N0,2(x1−x2.f()≈N0,1()+R0,1( 否则记N0,1,2(=N0,1()+R0,1(), 转第二步。

第二步:利用节点x0,x3构造线性插值多项式N0,3(x),并计算N0,3()。

与N0,1,2()的计算方式相同,利用N0,1()和N0,3()可计算N0,1,3(。

利用N0,1,2()和N0,1,3(可计算N0,1,2,3(=N0,1,2()+N0,1,2(−N0,1,3()x2−x3.如果R0,1,2(=N0,1,2(−N0,1,3(x2−x3算法终止,且f(≈N0,1,2,3(). 否则转第三步。

第三步:利用节点x0,x4构造线性插值多项式N0,4(x),并计算N0,4(。

相关主题