欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

(2) 分段多项式插值法

最编程 2024-06-30 14:16:51
...

1.概念

    在上一篇笔记中我们介绍了利用x_0,...,x_nn+1个插值点去插值n次多项式,但是实际上,这样做会有一个问题。那就是并不是n的次数越高,插值就越准确。当插值节点是区间上均匀分布的节点时,我们会发现当n的次数越来越高时,在某些点处会出现震荡的现象,误差严重,这称为龙格现象。这说明,次数的升高并不一定是好的,这就诱导我们去分段地处理插值节点,即分成很多个小区间,在每个小区间上做低次数的插值,当区间划分的足够密时,这样做的精度也是能够保证的,这就叫分段的多项式插值。

    总的来说,分段多项式插值有两种情况,一种情况是插值节点就是分段区间的端点,每个区间的插值多项式顺次相连,如下图:


    这样顺次连接的方式的优点在于最后得到的多项式是连续的,但是有一个致命的问题是,当我待插值的函数f是间断的,那么这种顺次连接的方式会在间断的地方产生很大的误差。这就引出了另一种插值方式。

    那就是插值节点位于分段区间的内部,我们不妨直接设为区间的中点


    注意这里的x_{i-1/2},x_{i+1/2}只是表示区间端点的一种方法,x_i才是插值节点。很明显,这样插值出来的多项式并不连续,因为只是每个区间单独插值,并不连接,但是这种方式能够很好的处理间断点处误差,并且我们说明,这两种插值方式在精度上来说相同。

2.分段插值的误差

    设x_0,..,x_n是函数f上选取的插值节点,h是分段插值的区间长度,{\Pi}_nf是分段线性插值多项式,那么误差应该为:

                                    |{\Pi}_nf - f|_{\infty} \leq Ch^{n+1}|f^{(n+1)}|_{\infty}

    这个误差实际上还是由误差公式推导而来,可以看出,当h足够小,也就是分段的区间足够多的时候,即使次数n不高,误差也能被很好的控制住。

总结:这一篇笔记介绍了分段多项式插值的两种方式,其中顺次连接的方式十分简单,我们暂且不提,下一篇会主要说一下第二种分段插值的方法。