样条函数
维基百科,自由的百科全书
在数学学科数值分析中,样条是一种特殊的函数,由多项式分段定义。样条的英语单词spline来源于可变形的样条工具,那是一种在造船和工程制图时用来画出光滑形状的工具。在中国大陆,早期曾经被称做“齿函数”。后来因为工程学术语中“放样”一词而得名。
在插值问题中,样条插值通常比多项式插值好用。用低阶的样条插值能产生和高阶的多项式插值类似的效果,并且可以避免被称为龙格现象的数值不稳定的出现。并且低阶的样条插值还具有“保凸”的重要性质。
在计算机科学的计算机辅助设计和计算机图形学中,样条通常是指分段定义的多项式参数曲线。由于样条构造简单,使用方便,拟合准确,并能近似曲线拟合和交互式曲线设计中复杂的形状,样条是这些领域中曲线的常用表示方法。
目录 |
[编辑] 定义
给定k个点ti,称为节点(knot),分布在一个区间[a,b]满足
一个参数曲线
称为n次样条,如果
并且在限制到每个子区间时,
换句话说,在每个子区间或者说节点长度(knot span)
S和一个n次多项式相同。
S(ti) 称为节点值 而(ti, S(ti))称为内部控制点(internal control point). (t0,...,tk-1) 称为节点向量(knot vector). 如果节点等距分布在区间[a,b]上,我们称样条均匀(uniform),否则为非均匀(non-uniform).
[编辑] 例子
最简单的样条是一次的,它也叫做线性样条,或者多边形。
一般的样条是自然的三次样条。自然定义为样条多项式的二阶导数在插值区域的两端相等。
S''(a) = S''(b) = 0 在区间 [a,b]
这使得样条在插值区间外为直线而不影响光滑程度。
[编辑] 注解
对于一个给定的节点向量,所有n次样条构成一个向量空间。这个空间的一个基是n次B样条基。
[编辑] 历史
在计算机被使用之前,数字演算用手工完成。虽然分段定义的象signum函数或阶梯函数这样的函数也被用到,一般人更喜欢多项式因为它们比较容易算。随着计算机的发展,样条变得越来越重要。它们一开始是作为多项式在插值中的替代品,后来又作为在计算机图形学中构造光滑和可变形状的工具。
[编辑] 参看
- 样条插值
- 厄尔密样条Hermite spline
- 三次厄尔密样条Cubic Hermite spline
- 基数样条Cardinal spline
- Catmull-Rom样条
- Kochanek-Bartels样条
- B样条
- 非均匀有理B样条Nonuniform rational B-spline (NURBS)
- de Boor算法是计算B样条的一个有效方法
- 贝塞尔样条
[编辑] 外部链接
- An Interactive Introduction to Splines
- Learning by Simulations Interactive simulation of various cubic splines

![S:[a,b] \to \mathbb{R}](http://upload.wikimedia.org/math/6/5/7/657900f76cf7e30d7258beca0a49f9ad.png)




