三次样条基本特征
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
三次样条
众所周知,使用高阶多项式的插值常常产生病态的结果。目前,有多种消除病态的方法。在这些方法中,三次样条是最常用的一种。在MATLAB中,实现基本的三次样条插值的函数有spline,ppval,mkpp和unmkpp。在这些函数中,仅spline 在《MATLAB参考指南》中有说明。下面几节,将展示在M文件函数中实现三次样条的基本特征
基本特征
在三次样条中,要寻找三次多项式,以逼近每对数据点间的曲线。在样条术语中,这些数据点称之为断点。因为,两点只能决定一条直线,而在两点间的曲线可用无限多的三次多项式近似。因此,为使结果具有唯一性。在三次样条中,增加了三次多项式的约束条件。通过限定每个三次多项式的一阶和二阶导数,使其在断点处相等,就可以较好地确定所有内部三次多项式。此外,近似多项式通过这些断点的斜率和曲率是连续的。然而,第一个和最后一个三次多项式在第一个和最后一个断点以外,没有伴随多项式。因此必须通过其它方法确定其余的约束。最常用的方法,也是函数spline所采用的方法,就是采用非扭结(not-a-knot)条件。这个条件强迫第一个和第二个三次多项式的三阶导数相等。对最后一个和倒数第二个三次多项式也做同样地处理。
基于上述描述,人们可能猜想到,寻找三次样条多项式需要求解大量的线性方程。实际上,给定N个断点,就要寻找N-1个三次多项式,每个多项式有4个未知系数。这样,所求解的方程组包含有4*(N-1)个未知数。把每个三次多项式列成特殊形式,并且运用各种约束,通过求解N个具有N个未知系数的方程组,就能确定三次多项式。这样,如果有50个断点,就有50个具有50个未知系数的方程组。幸好,用稀疏矩阵,这些方程式能够简明地列出并求解,这就是函数spline 所使用的计算未知系数的方法