拉格朗日插值法
5.2 拉格朗日(Lagrange )插值
可对插值函数
选择多种不同的函数类型,由于代数多项式具有简单和一些良好的
特性,例如,多项式是无穷光滑的,容易计算它的导数和积分,故常选用代数多项式作为插值函数。
5.2.1 线性插值
问题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)
,故
就是关于插值称为关于节
的插值多项式,这种插值形式称为拉格朗日插值多项式。
点的拉格朗日基函数。
(0.6)。
例5.4 给出下列插值节点数据,做三次拉格朗日插值多项式,并计算
-2.00 17.00
0.00 1.00
1.00
2.00
2.00 17.00
解:拉格朗日插值基函数为:
三次拉格朗日插值多项式:
n 次插值多项式的误差
定理5.2 设互不相等,当
是上过
时,则插值多项式的误差:
的
次插值多项式,
其中
证明:记是
下面的目标是算出
令 令至少有
,得,
由定义个零点,由于
至少有
,由洛尔定理,个零点。同理再对
的根,于是可设
,为此引入变量为的函数
*
(5.7)
,因而
。由于
: (5.8)
即
在
相邻的两个零点之
间至少有一个零点,即应用洛尔定理,即
至少有个零点,反复应用洛尔定理得到 另一方面,对
令
,有
求
阶导数,有
至少有一个零点。
得到
由于
的零点
与
的零点
(5.9) 有关,因而
为的函数。
若|可表示为
由(5.9)式可以看到,当
对于函数
是其本身,故拉格朗日基函数
(5.10) 是不高于次的多项式时,
,关于节点满足
,即
。
的拉格朗日插值多项式就
令,得到。
定理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:输出 的计算结果。