插值(interpolation)是在已知部分数据节点(knots)的情况下,求解经过这些已知点的曲线,
然后根据得到的曲线进行未知位置点函数值预测的方法(未知点在上述已知点自变量范围内)。
样条(spline)是软尺(elastic ruler)的术语说法,在技术制图中,使用软尺连接两个相邻数据点,
以达到连接曲线光滑的效果。
样条插值是一种分段多项式(piecewise polynomial)插值法。数学上,曲线光滑需要在曲线上处处一阶导连续,
因此,在节点处需要满足一阶导数相等。另外,为了使得曲线的曲率最小,要求曲线二阶导连续【1】,
在节点处需要二阶导相等。
三次及以上多项式可以满足节点处光滑和曲率最小要求,但是次数高的曲线容易震荡,因此,就选用三次多项式即可。
假设有n个已知节点:
函数关系记为: 。
在区间 中插值多项式曲线:
插值满足条件:
(1)曲线经过节点:
(2)曲线一阶导连续(光滑):
(3)曲线二阶导连续(曲率最小):
边界条件:对两端节点的约束。
(1)自然(natural (or free))边界条件
(2)固定(clamped)边界条件
, 或者
, 或者
(3)not-a-knot
References:
[1] Wikipedia: spline interpolation
三次样条插值 cubic spline interpolation
原文:https://www.cnblogs.com/tlz888/p/11454772.html