问题5.1 给定两个插值点其中,怎样做通过这两点的一次插值函数?
过两点作一条直线,这条直线就是通过这两点的一次多项式插值函数,简称线性插值。如图5.1所示。
图5.1 线性插值函数
在初等数学中,可用两点式、点斜式或截距式构造通过两点的一条直线。
下面先用待定系数法构造插值直线。
设直线方程为,将分别代入直线方程得:
当时,因,所以方程组有解,而且解是唯一的。这也表明,平面上两个点,有且仅有一条直线通过。用待定系数法构造插值多项式的方法简单直观,容易看到解的存在性和惟一性,但要解一个方程组才能得到插值函数的系数,因工作量较大和不便向高阶推广,故这种构造方法通常不宜采用。
当时,若用两点式表示这条直线,则有:
(5.1)
这种形式称为拉格朗日插值多项式。
,,称为插值基函数,计算,的值,易见
(5.2)
在拉格朗日插值多项式中可将看做两条直线,的叠加,并可看到两个插值点的作用和地位都是平等的。
拉格朗日插值多项式型式免除了解方程组的计算,易于向高次插值多项式型式推广。
线性插值误差
定理5.1 记为以为插值点的插值函数,。这里,设 一阶连续可导, 在上存在,则对任意给定的,至少存在一点 ,使
(5.3)
证明 令,因是的根,所以可设
对任何一个固定的点,引进辅助函数:
则。
由定义可得,这样至少有3个零点,不失一般性,假定,分别在和上应用洛尔定理,可知在每个区间至少存在一个零点,不妨记为和,即和,对在上应用洛尔定理,得到在上至少有一个零点,。
现在对求二次导数,其中的线性函数),故有
代入,得
所以
即
问题5.2 给定三个插值点 ,,其中互不相等,怎样构造函数的二次的(抛物线)插值多项式?
平面上的三个点能确定一条次曲线,如图5.2所示。
图5.2 三个插值点的二次插值
仿造线性插值的拉格朗日插值,即用插值基函数的方法构造插值多项式。设
每个基函数是一个二次函数,对来说,要求是它的零点,因此可设
同理,也相对应的形式,得
将代入,得
同理将代入得到和的值,以及和的表达式。
也容易验证:
插值基函数仍然满足:
二次插值函数误差:
上式证明完全类似于线性插值误差的证明,故省略。
插值作为函数逼近方法,常用来作函数的近似计算。当计算点落在插值点区间之内时叫做内插,否则叫做外插。内插的效果一般优于外插。
例5.1 给定。构造线性插值函数并用插值函数计算和
解:构造线性插值函数:
分别将代入上式,得
,准确值
,准确值
例5.2 给定。构造二次插值函数并计算。
解:
,准确值
例5.3 要制做三角函数的函数 值表,已知表值有四位小数,要求用线性插值引起的截断误差不超过表值的舍入误差,试决定其最大允许步长。
解:设最大允许步长
问题5.3 给定平面上两个互不相同的插值点 ,有且仅有一条通过这两点的直线;给定平面上三个互不相同的插值点,有且仅有一条通过这三个点的二次曲线;给定平面上个互不相同的插值点,互不相同是指互不相等,是否有且仅有一条不高于次的插值多项式曲线,如果曲线存在,那么如何简单地作出这条次插值多项式曲线?
分析:次多项式,它完全由个系数决定。若曲线通过给定平面上个互不相同的插值点,则应满足,事实上一个插值点就是一个插值条件。
将依次代入中得到线性方程组:
(5.4)
方程组的系数行列式是范德蒙(Vandermonde)行列式:
当互异时,,所以方程组(5.4)的解存在且惟一。即问题5.3的解存在而且惟一。
通过求解(5.4)得到插值多项式 ,因其计算量太大而不可取,仿照线性以及二次插值多项式的拉格朗日形式,我们可构造次拉格朗日插值多项式。
对于个互不相同的插值节点,由次插值多项式的惟一性,可对每个插值节点作出相应的次插值基函数。
要求是,的零点,因此可设
由将代入,得到
(5.5)
作其组合:
(5.6)
那么不高于次且满足,故就是关于插值点的插值多项式,这种插值形式称为拉格朗日插值多项式。称为关于节点的拉格朗日基函数。
例5.4 给出下列插值节点数据,做三次拉格朗日插值多项式,并计算(0.6)。
-2.00 |
0.00 |
1.00 |
2.00 |
|
17.00 |
1.00 |
2.00 |
17.00 |
解:拉格朗日插值基函数为:
三次拉格朗日插值多项式:
n次插值多项式的误差
定理5.2 设是上过的次插值多项式,互不相等,当时,则插值多项式的误差:
其中 (5.7)
证明*:记。由于,因而是的根,于是可设
下面的目标是算出,为此引入变量为的函数:
(5.8)
令,得
令,由定义即至少有个零点,由于,由洛尔定理,在相邻的两个零点之间至少有一个零点,即至少有个零点。同理再对应用洛尔定理,即至少有个零点,反复应用洛尔定理得到至少有一个零点。
另一方面,对求阶导数,有
令,有
得到
(5.9)
由于的零点与的零点有关,因而为的函数。
若|可表示为
(5.10)
由(5.9)式可以看到,当 是不高于次的多项式时,,即。
对于函数,关于节点的拉格朗日插值多项式就是其本身,故拉格朗日基函数满足
令,得到。
定理5.2给出了当被插函数充分光滑时的插值误差或称插值余项表达式,但是,在实际计算中,并不知道的具体表示,难以得到的形式或较精确的界限,因此也难以得到界。在实际计算中,可对误差运用下面的事后估计方法。
给出个插值节点,任选其中的个插值节点,不妨取,构造一个次插值多项式,记为。在个插值节点中另选个插值点,不妨取,构造一个次插值多项式,记为。由定理2可得到
(5.11)
(5.12)
设在插值区间内连续而且变化不大,有,则
从而可得到
(5.13)
(5.14)
拉格朗日插值多项式的算法
下面用伪码描述拉格朗日插值多项式的算法。
1:输入:插值节点控制数,插值点序列,要计算的函数点,及变量 。
2:FOR i :=0,1,…,n //i控制拉格朗日基函数序列
{tmp:=1;
2.1 FOR j:=0,1,…,i-1,i+1,…,n
{ //对于给定,计算拉格朗日基函数
;
} // tmp表示拉格朗日基函数
2.2
}
3:输出的计算结果。