数学建模常见算法:插值算法

目录

一、插值的定义

二、拉格朗日多项式插值(Lagrange插值)

三、龙格现象(Runge phenomenon)

四、牛顿插值(Newton)

五、分段线性插值

六、埃尔米特插值(Hermite 插值)

七、三次样条插值

八、插值算法总结


数学建模中常常需要进行数据处理,当给定的数据较少不足以支撑分析的进行时,可以采用插值算法产生一些新值满足数据处理的需求,简而言之,插值是求过已知有限个数据点的近似函数。

常见的插值有拉格朗日多项式插值、牛顿插值、分段线性插值、Hermite 插值和三次样条插值

一、插值的定义

已知 n+1个节点 (x_{j},y_{j})(j=0, 1, ...,n)其中x_{j}互不相同,不妨设a=x_{0}<x_{1}<...<x_{n}=b,求任一插值点x^{*}(\neq x_{j}) 处的插值y^{*}

构造一个(相对简单的)函数y=f(x),通过全部节点,即:

f(x_{j})=y_{j}, j=0,1,...,n

再用f(x)计算插值,即y^{*}=f(x^{*})

总之,插值的关键要满足插值函数过插值节点。

二、拉格朗日多项式插值(Lagrange插值)

已知函数f(x)n+1个点x_{0},x_{1},...,x_{n}处的函数值为y_{0}, y_{1}, ... ,y_{n}. 求n次多项式函数P_{n}(x),使其满足:

P_{n}(x_{i})=y_{i}, i=0,1,...,n

解决此问题的拉格朗日插值多项式公式为:

            P_{n}(x)=\sum_{i=0}^{n}L_{i}(x)*y_{i},其中L_{i}(x)n次多项式:

            L_{i}(x)=\frac{(x-x_{0})(x-x_{1})...(x-x_{i-1})(x-x_{i+1})...(x-x_{n})}{(x_{i}-x_{0})(x_{i}-x_{1})...(x_{i}-x_{i-1})(x_{i}-x_{i+1})...(x_{i}-x_{n})}

称为拉格朗日插值基函数。

三、龙格现象(Runge phenomenon)

在介绍龙格现象之前,可以考虑一个问题:插值多项式次数越高误差越小吗?

数学建模常见算法:插值算法_第1张图片

高次插值会产生龙格现象,即在两端波动极大,产生明显的震荡。在不熟悉曲线运动趋势的前提下,不要轻易使用高次插值。

四、牛顿插值(Newton)

数学建模常见算法:插值算法_第2张图片

Newton 插值的优点是:每增加一个节点,插值多项式只增加一项,因而便于递推运算,而且Newton插值的计算量小于Lagrange插值。

五、分段线性插值

分段低次插值的思路:

(1) 插值多项式次数高精度未必显著提高

(2) 插值多项式次数越高摄入误差可能显著增大

那么,如何提高插值精度呢?

采用分段低次插值是一种办法

数学建模常见算法:插值算法_第3张图片

六、埃尔米特插值(Hermite 插值)

插值问题的一般要求是插值函数过插值节点,那么为了保持插值曲线在节点处有切线,使插值函数和被插函数的密和程度更好,对插值问题提出了更高的要求;插值节点的导数值也要相等,甚至要求高阶导数也相等。

数学建模常见算法:插值算法_第4张图片

 Hermite插值多项式为

数学建模常见算法:插值算法_第5张图片

七、三次样条插值

许多工程技术中提出的计算问题对插值函数的光滑性有较高要求,如飞机的机翼外形,内燃机的进、排气门的凸轮曲线,都要求曲线具有较高的光滑程度,不仅要连续,而且要有连续的曲率,这就导致了样条插值的产生。

数学建模常见算法:插值算法_第6张图片

数学建模常见算法:插值算法_第7张图片

八、插值算法总结

(1) 拉格朗日插值和牛顿插值:与拉格朗日插值法相比,牛顿插值法的计算过程具有继承性。牛顿插值法每次插值只和前n项的值有关,这样每次只要在原来的函数上添加新的项,就能够产生新的函数,但是牛顿插值也存在龙格现象的问题。

(2) 由于拉格朗日插值和牛顿插值只要求插值多项式在插值节点处与被插函数有相等的函数值,但是这样不能全面反映被插值函数的性态,由此引入了Hermite插值,Hermite插值考虑了低阶和高阶的导数值。

(3) 三次样条插值生成的曲线相对于其他方法来说更加光滑。

你可能感兴趣的:(数学建模,算法)