- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MATLAB 10三次样条
第十章 三次样条 10.1 定义及基本特征 早期工程师制图时,把富有弹性的细长木条(所谓样条)用压铁固定在样点上,在其它地方让它自由弯曲,然后画下长条的曲线,称为样条曲线。 定义:若函数S(x)是在整个区间上二阶导数连续的函数集合,且在每个小区间 上是三次多项式,则称S(x)是节点上的三次样条函数。若在节点上给定函数值 ,并且 成立,则称S(x)为三次样条插值函数。 * 在三次样条中,要寻找三次多项式,来逼近每对数据点间的曲线,在样条术语中,这些数据点称之为断点。因为,两点只能决定一条直线,而在两点间的曲线可用无限多的三次多项式近似。 因此,为使结果具有唯一性。在三次样条中,增加了三次多项式的约束条件。通过限定每个三次多项式的一阶和二阶导数,使其在断点处相等,就可以较好地确定所有内部三次多项式。 此外,近似多项式通过这些断点的斜率和曲率是连续的。 然而,第一个和最后一个三次多项式在第一个和最后一个断点以外,没有伴随多项式。因此必须通过其它方法确定其余的约束。最常用的方法,也是函数spline所采用的方法,就是采用非扭结(not-a-knot)条件。这个条件强迫第一个和第二个三次多项式的三阶导数相等。对最后一个和倒数第二个三次多项式也做同样地处理。 基于上述描述,寻找三次样条多项式需要求解大量的线性方程。实际上,给定N个断点,就要寻找N-1个三次多项式,每个多项式有4个未知系数。这样,所求解的方程组包含有4*(N-1)个未知数。把每个三次多项式列成特殊形式,并且运用各种约束,通过求解N个具有N个未知系数的方程组,就能确定三次多项式。这样,如果有50个断点,就有50个具有50个未知系数的方程组。用稀疏矩阵,这些方程式能够简明地列出并求解,这就是函数spline所使用的计算未知系数的方法。 在最简单的用法中,spline获取数据x和y以及期望值xi,寻找拟合x和y的三次样条内插多项式,然后,计算这些多项式,对每个xi的值,寻找相应的yi。 调用的格式为:yi=spline(x, y, xi) [例10—1] 链接 Example 01。 这种方法适合于只需要一组内插值的情况。不过,如果需要从相同数据集里获取另一组内插值,必须再次计算三次样条系数。 10.2 分段多项式 如果调用仅带前两个参量的spline 函数,即 pp=spline(x, y) spline返回一个称之为三次样条的pp形式或分段多项式形式的数组。 这个数组包含了对于任意一组所期望的内插值和计算三次样条所必须的全部信息。给定pp形式后,可以用函数ppval计算该三次样条 yi=ppval(pp, xi) [例10—2] 链接 Example 01_2。 运用pp形式,在限定的更细区间[10,12]内,再次计算该三次样条。 xi2=linspace(10, 12); yi2=ppval(pp, xi2); [例10—3] 链接 Example 01_3。 可在计算三次多项式所覆盖的区间外,计算三次样条。当数据出现在最后一个断点之后或第一个断点之前时,则分别运用最后一个或第一个三次多项式来寻找内插值。 xi3=10 : 15 yi3=ppval(pp, xi3) [例10—4] 链接 Example 01_4。 三次样条pp形式,存储了断点、多项式系数、多项式的数目和每个多项式系数的数目。 当要计算三次样条表示时,必须把pp形式分解成它的各个表示段。在MATLAB中,通过函数unmkpp完成这一过程。 [break, coefs, npolys, ncoefs]=unmkpp(pp) [例10—5] 链接 Example 01_5。 * * *
文档评论(0)