多项式函数插值:计算基本理论

1. 函数插值问题

  已知函数在离散点处的取值:$(t_i, y_i)$ ,恢复连续函数 $f: mathbb{R}Rightarrow mathbb{R}$ 使得该连续函数在以上离散点处取得已知取值 $f(t_i)=y_i$ ,从而可以求得该函数在离散点中间某一点的值,并获得导数等只有连续函数才具有的信息,或者便于进行数值积分、平滑滤波等操作,这样的过程即为函数插值。

  通常来说,函数插值由一族基函数的叠加实现,或者说将已知离散点取值的函数转化为一族连续的基函数展开。即:

选取基函数 $phi_1(t), phi_2(t), ... phi_n(t)$ ,求叠加系数 $x_i, i=1...m$ ,使得连续函数 $f(t)=sumlimits_{i=1}^nx_iphi_i(t)$ 满足 $f(t_j)=sumlimits_{i=1}^nx_iphi_i(t_j)=y_j, j=1...m$ 

  因此,插值的过程也就是确定该族基函数的叠加系数的过程。常用的基函数包括:

单项式基将离散取值表达为连续函数的多项式展开 $f(t)=sumlimits_{k=0}^nx_kt^k$;

三角函数基将离散取值表达为连续函数的傅里叶级数展开 $f(t)=sumlimits_{k=0}^n(a_ksinkt+b_kcoskt)$(也可以看作是表达为纯虚数指数函数展开 $f(t)=sumlimits_{k=-n}^nc_ke^{ikt}$ );

指数函数基将离散取值表达为连续(实)指数函数叠加 $f(t)=sumlimits_{k=0}^na_ke^{kt}$;

有理分式基将离散取值表达为有理分式函数的叠加 

  多项式函数插值专题将主要讨论多项式展开的形式,多项式叠加形式在计算方法上同样具有很多方法

  函数插值的应用非常广泛。对于离散的数据点,微分、积分都无法定义,信号的平滑、滤波、增强对比等操作也无从谈起。同时,对于实验中离散的数据,如何获得中间点取值的估计值;对于已有的区间内的数据,是否可以预测区间外部邻近点的取值。这些都涉及函数插值的操作,当离散的函数点变为一个在实数域上有定义的连续函数时,理论上自然就可以求任意一点的估计值了。同时,在选取函数基底和叠加系数时,有时也需要根据离散数据考虑,是否要求连续插值函数保留单调性/具有奇偶性等。

2. 问题的性质

解的存在唯一性:

  一般来说,当基函数已经确定时,只需要求出叠加系数即可。这种情况下相当于解一个线性方程组:已知 $sumlimits_{i=1}^nphi_j(t_i)x_j=y_i, i=1,2,...m$ 求解 $oldsymbol{x_i}$ 。因为选取的叠加函数为一组基函数,本身具有线性无关性,那么除非在特殊的情况下,矩阵 $(A_{ij})=phi_j(t_i)$ 一般是非奇异的,那么这就保证了多数情况下系数矩阵是满秩的。注意到变量 $oldsymbol{x}$ 本身是n维的(对应n个基函数),而方程组包含的方程有m个(对应,即为一个 $m imes n$ 维的系数矩阵,则有:$m>n ightarrow$ 通常解不存在(超定)$ ightarrow$ 通常不存在符合要求的插值函数;$m<n ightarrow$ 解一定不唯一,或者存在许多符合要求的插值函数;$m=n$ 时 $ ightarrow$ 通常存在唯一解,即存在唯一的插值函数。对于单项式基底,非奇异性是几乎必然的。

问题的条件:

  正如上一段的讨论,在该种计算方法下,矩阵 $(A_{ij})=phi_j(t_i)$ 从而成为求解叠加系数的线性方程组的系数矩阵,$A$ 的条件数 $cond(A)$ 即为问题的条件数。

3. 数值方法

基本的多项式函数插值方法大致可以分为两类:

3.1 全域多项式函数插值

  包括单项式基底插值拉格朗日插值方法(每个离散点取值独立决定一项系数),牛顿插值方法正交多项式基——勒让德多项式基底插值方法切比雪夫多项式基底插值方法。各种方法得到的多项式本质上为全同的多项式,但是各个数值方法的复杂度、条件数不同,操作效果也有差异。

3.2 分段多项式函数插值

  包括厄米特插值(比如三次厄米特插值),样条插值(k-1阶连续可导的k阶多项式)——三次样条插值B样条插值等。这些方法的复杂度不同,插值效果和全域多项式函数插值结果显然不同,且内部任意的参数变化也可能带来比较大的差异。

  

原文地址:https://www.cnblogs.com/gentle-min-601/p/9743647.html