样条函数

维基百科,自由的百科全书
跳转至: 导航搜索
一种样条:貝茲曲線

数学学科数值分析中,样条是一种特殊的函数,由多项式分段定义。样条的英语单词spline来源于可变形的样条工具,那是一种在造船工程制图时用来画出光滑形状的工具。在中国大陆,早期曾经被称做“齿函数”。后来因为工程学术语中“放样”一词而得名。

插值问题中,样条插值通常比多项式插值好用。用低阶的样条插值能产生和高阶的多项式插值类似的效果,并且可以避免被称为龙格现象的数值不稳定的出现。并且低阶的样条插值还具有“保凸”的重要性质。

计算机科学计算机辅助设计计算机图形学中,样条通常是指分段定义的多项式参数曲线。由于样条构造简单,使用方便,拟合准确,并能近似曲线拟合和交互式曲线设计中复杂的形状,样条是这些领域中曲线的常用表示方法。

定义[编辑]

给定k个点ti,称为节点(knot),分布在一个区间[a,b]满足

a=t_0 < t_1 < \ldots < t_{k-2} < t_{k-1} = b

一个参数曲线

S:[a,b] \to \mathbb{R}

称为n次样条,如果

S \in \mathrm{C}^{n-1}(a,b)

并且在限制到每个子区间时,

S_{[t_i,t_{i+1})} \in \Pi_n \mbox{ , } i = 0,\ldots k-2

换句话说,在每个子区间或者说节点长度(knot span)

[t_i,t_{i+1})\mbox{ , } i = 0,\ldots k-2

S和一个n次多项式相同。

Sti) 称为节点值而(ti, Sti))称为内部控制点(internal control point). (t0,...,tk-1)称为节点向量(knot vector).如果节点等距分布在区间[a,b]上,我们称样条均匀(uniform),否则为非均匀(non-uniform).

例子[编辑]

最简单的样条是一次的,它也叫做线性样条,或者多边形

一般的样条是自然的三次样条。自然定义为样条多项式的二阶导数在插值区域的两端相等。

S''(a) = S''(b) = 0在区间[a,b]

这使得样条在插值区间外为直线而不影响光滑程度。

注解[编辑]

对于一个给定的节点向量,所有n次样条构成一个向量空间。这个空间的一个nB样条基

历史[编辑]

在计算机被使用之前,数字演算用手工完成。虽然分段定义的象signum函数阶梯函数这样的函数也被用到,一般人更喜欢多项式因为它们比较容易算。随着计算机的发展,样条变得越来越重要。它们一开始是作为多项式在插值中的替代品,后来又作为在计算机图形学中构造光滑和可变形状的工具。

spline function是一类分段(片)光滑、并且在各段交接处也有一定光滑性的函数。简称样条。样条一词来源于工程绘图人员为了将一些指定点连接成一条光顺曲线所使用的工具,即富有弹性的细木条或薄钢条。由这样的样条形成的曲线在连接点处具有连续的坡度与曲率。分段低次多项式、在分段处具有一定光滑性的函数插值就是模拟以上原理发展起来的,它克服了高次多项式插值可能出现的振荡现象,具有较好的数值稳定性和收敛性,由这种插值过程产生的函数就是多项式样条函数。

样条函数的研究始于20世纪中叶,到了60年代它与计算机辅助设计相结合,在外形设计方面得到成功的应用。样条理论已成为函数逼近的有力工具。它的应用范围也在不断扩大,不仅在数据处理、数值微分、数值积分、微分方程和积分方程数值解等数学领域有广泛的应用,而且与最优控制、变分问题、统计学、计算几何与泛函分析等学科均有密切的联系。

参看[编辑]

外部链接[编辑]