第二章、插值理论
插值是啥?我们先来看这样一个例子,中学阶段我们都会计算三角函数值,如
这些我们都能够求出具体的数值,但是如果我们想知道
插值的基本思路就是,已知一些点,以及目标函数在该点的函数值,通过找到某个简单的函数,使得它在这些点上的函数值恰好与目标函数在这些点的函数值相同。进而,求目标函数在给定点之外的函数值就可以将其代入简单函数得到一个近似值。而怎样的函数才算得上简单呢?对了,多项式函数!在这门课程中,我们也只研究多项式函数的插值方法,下面给出问题的一般提法:
给出
我们称这样的多项式
我们的目的是求目标函数在给定点之外的函数值,现在我们面临着一个很大的问题:我们求出的插值多项式可以是近乎笔直地通过平面上的这些点,也可以是“振荡”地通过,如果我们分别求出两个插值多项式,我们应该用哪个作为目标函数值得近似呢?同时如果对于特定的点,这样的多项式我们根本就求不出来呢?不不,先等下,下面这个定理告诉我们求出两个是不可能的,并且这样的多项式一定存在!
定理 对于给定
证明 利用待定系数法假设所求插值多项式为
该多项式要经过
这个方程组有
这是范德蒙(Vandermonde)行列式,由于插值节点
这个定理给我们打了一针强心剂,让我们对于任意给定的函数表都可以不加思索地上手求插值多项式,可是具体我们该如何求呢?我们线性代数课上学过可以利用克莱姆法则来求解线性方程组,即
其中
但我们知道,计算一个行列式的时间复杂度是阶乘级别的,而且范德蒙行列式通常是病态的,舍入误差会造成很大影响,因此很少会使用这样的公式!下面给出拉格朗日插值法的思路:
※拉格朗日插值
基本思路是构造
为了使
如何求基函数呢?首先我们利用它的非常多的零点,待定系数如下
然后利用它所满足的
这个形式可以这样记忆:分子为
但这个基函数的形式上还是比较长的,为了简便,我们记
这个式子求导之后有很多项,但是在插值节点上的导数值很漂亮
这样一来,基函数就可以表示成
进而
通过一些计算可以得到
最后一个式子得出需要注意到
我们已经通过构造出插值多项式来得到了函数值的近似,那么这个近似的效果如何呢?要研究近似的效果,就免不了扯上误差,下面给出多项式插值的余项以及误差估计:
定理 设
证明
首先给出一个巧妙的构造,对
可以验证
进而得到定理结论.顺便提一句:利用这个误差估计式也能够证明插值多项式的唯一性。具体来说,如果存在两个插值多项式,那么可以将其中一个看成是另外一个的插值多项式(因为插值条件是相同的),进而误差估计式中的导数项恒为0,即二者相等.
例1 设
在数学分析中大家应该有见过类似的题目,但这里我们用插值的误差估计式可以给出更为简单的证明.
解
0多项式显然是一个插值多项式,而存在即唯一,进而
而利用基本不等式有
可知结论成立.
例2 求函数
我们可以按定义来计算,但我们也可以结合多项式插值的线性性质:
插值满足线性 若
解
函数
记
注意到
最后所求
学习完拉格朗日插值法,你应该会觉得拉格朗日的基函数形式比较有规律性,适合记忆,这实际上也是拉格朗日法的一个优点;但是,你应该也能发现,如果我们要新增加一个节点,那么得到插值多项式可不是多添一项那么简单,而是要把所有基函数重写一遍,这也是它的不足之处。而我们接下来要介绍的牛顿插值法,就很好地弥补了这一不足。
※牛顿插值法
牛顿插值本质上也是构造基函数,只不过它要构造的基函数有着如下特定的形式:
这其实也是我们之前定义过的
将已知的函数表中的点代入可以得到系数
你会发现,这些系数有着类似的形式,就是先两个差,再作商,因此我们有必要先将这个形式弄明白,下面给出它的定义:
差商(均差)
对于函数
它可以递推的表示成
这个递推形式需要记忆,其实也就是后
进而根据类比递推得到牛顿插值多项式为
差商有三个重要的性质:
若
根据插值多项式的唯一性,牛顿插值法得到的多项式与拉格朗日得到的应该是相同的,考察两者的最高次项系数就可以得到
牛顿插值的一个很大的好处就是,如果我们增加一个节点,那么只需要在原形式上添一项即可。即如果我们求出了
就可以得到
通过
现在我们通过估计牛顿插值多项式的误差,来得到差商与导数之间的关系。首先由插值多项式的唯一性可以得到余项的唯一性,而牛顿法的余项可以用差商表示:
定理 牛顿插值余项可以表示为
证明 思路是通过增加一个节点,然后利用插值条件
在定义域中任取与插值节点不同的
根据插值条件有
由于
而前面已经求得拉格朗日插值的余项为
利用两个余项相等,可以得到差商与导数的关系1:
这里再补充差商与导数的关系2,即
利用罗尔定理可以得到