
选择多种不同的函数类型,由于代数多项式具有简单和一些良好的特性,例如,多项式是无穷光滑的,容易计算它的导数和积分,故常选用代数多项式作为插值函数。
线性插值
问题5.1
给定两个插值点

其中

,怎样做通过这两点的一次插值函数?
过两点作一条直线,这条直线就是通过这两点的一次多项式插值函数,简称线性插值。如图5.1所示。
图5.1 线性插值函数
在初等数学中,可用两点式、点斜式或截距式构造通过两点的一条直线。
下面先用待定系数法构造插值直线。
设直线方程为

,将

分别代入直线方程

得:
当

时,因

,所以方程组有解,而且解是唯一的。这也表明,平面上两个点,有且仅有一条直线通过。用待定系数法构造插值多项式的方法简单直观,容易看到解的存在性和惟一性,但要解一个方程组才能得到插值函数的系数,因工作量较大和不便向高阶推广,故这种构造方法通常不宜采用。
当

时,若用两点式表示这条直线,则有:

(5.1)
这种形式称为拉格朗日插值多项式。

,

,

称为插值基函数,计算

,

的值,易见

(5.2)
在拉格朗日插值多项式中可将

看做两条直线

,

的叠加,并可看到两个插值点的作用和地位都是平等的。
拉格朗日插值多项式型式免除了解方程组的计算,易于向高次插值多项式型式推广。
线性插值误差
定理5.1
记

为以

为插值点的插值函数,

。这里

,设

一阶连续可导,

在

上存在,则对任意给定的

,至少存在一点

,使

(5.3)
证明
令

,因

是

的根,所以可设
对任何一个固定的点

,引进辅助函数

:
则

。
由定义可得

,这样

至少有3个零点,不失一般性,假定

,分别在

和

上应用洛尔定理,可知

在每个区间至少存在一个零点,不妨记为

和

,即

和

,对

在

上应用洛尔定理,得到

在

上至少有一个零点

,

。
现在对

求二次导数,其中

的线性函数),故有
代入

,得
所以
即
5.2.2 二次插值
问题5.2
给定三个插值点

,

,其中

互不相等,怎样构造函数

的二次的(抛物线)插值多项式?
平面上的三个点能确定一条次曲线,如图5.2所示。
图5.2 三个插值点的二次插值
仿造线性插值的拉格朗日插值,即用插值基函数的方法构造插值多项式。设
每个基函数

是一个二次函数,对

来说,要求

是它的零点,因此可设
同理

,

也相对应的形式,得
将

代入

,得
同理将

代入

得到

和

的值,以及

和

的表达式。
也容易验证:
插值基函数仍然满足:
二次插值函数误差:
上式证明完全类似于线性插值误差的证明,故省略。
插值作为函数逼近方法,常用来作函数的近似计算。当计算点落在插值点区间之内时叫做内插,否则叫做外插。内插的效果一般优于外插。
例5.1
给定

。构造线性插值函数并用插值函数计算

和
解:构造线性插值函数:
分别将

代入上式,得

,准确值

,准确值
例5.2
给定

![]()
。构造二次插值函数并计算

。
解:

,准确值
例5.3
要制做三角函数的函数

值表,已知表值有四位小数,要求用线性插值引起的截断误差不超过表值的舍入误差,试决定其最大允许步长。
解
:设最大允许步长
5.2.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:输出

的计算结果

。