样条函数插值
SPLINE INTERPOLATION
武汉大学数学与统计学院
WuHan University
内容提要
引言 样条函数的物理背景
一般 K 次样条
3次样条插值
高次自然样条与 B- 样条基础
WuHan University
§ 4.8 样条函数插值
4.8.1 引言 样条函数的物理背景回顾前面几节讲过的各种代数插值,它们有一个共同的弱点,那就是,它们都是相当 刚性 (stiff)的,也就是说,局部数据误差易向远处传播、放大,
WuHan University
以 Lagrange插值 为例,设数据真值 被代之以含有误差 的,令 是以为插值条件的插值多项式,于是最终的插值误差是由讲义第 168页插值公式 (6)知,上式右端第二项为这表明结点 处的数据误差 通过插值基函数放大和扩散,
WuHan University
jfx
jfx?
j j jf f x f x
0 1 2,,,,nf f f fL
,n n n nf x L x f x L x L x L x
nLx

0
.
n
n n j j
j
L x L x f x l x?

jx
jfx?
jlx
更何况,如果被插函数 有奇点,甚至只要 解析延拓到复平面 有 隐秘奇点 出现,则当 为高次多项式时,误差放大和扩散还将助长很可怕的 强振荡 !
展示 Runge现象 的著名例子就清楚地描述了这种振荡 (右图 ).
WuHan University
jlx
相同数据 3次样条插值与 Lagrangr插值效果比较
Cubic Spline Interpolation Lagrangr Interpolation
WuHan University
如果采用分段多项式插值,则由于插值基函数只是 局部活跃 (它们的 支集 是局部紧致的 ),结点上的 误差可以被控制在小的范围内,因而也带来了 内在的高度稳定性,这是分段插值的一大优势 !
许多实际问题 希望插值函数具有较高阶的整体光滑性,此时,高次 Hermite插值 或 分段高次 Hermite插值 可以利用 (注意,分段高次 Lagrange插值和 Newton插值等是做不到的,在插值结点上它们只能保证插值函数连续 ),
注,函数 的 支集 Supp 定义为
Supp
WuHan University
fx f
0.f x f x
但高次 Hermite插值在许多场合中看不中用 !
提高 Hermite插值多项式的次数就要 增加约束条件
—— 给出插值结点处被插函数及其直到足够高阶导数之值,
作为约束条件的 所有数据都是通过观测得到的,而观测 总难免 有误差,
于是 高次插值 不仅 增添了数据准备和计算的困难,也将 导致更大的误差,
WuHan University
还有许多应用不仅要求插值函数具有足够高阶的整体光滑性,还要求在某些结点处 转折灵活,例如若干点处加载集中力的杆、梁或板弯曲,这就导致本节要讨论的 样条函数 (Spline)插值,
数学里的 样条 ( Spline )一词来源于它的直观 几何背景,绘图员或板金工人常用弹性 木条 或 金属条 加 压铁 (构成样条 !)来绘制或者放样成 光顺 曲线或者曲面,但它之所以成为数值分析的 标志性成果之一 并且在数学物理的广泛领域获得非常成功的应用,还在于它的明确的 物理背景,请看下面的例子,
WuHan University
例 1.如图 4.8.1,一均匀弹性弦两端固定于两点,在区间 内取点列图 4.8.1
并在内结点集上分别给集中载荷则载荷分布 可表为其中 是集中于结点 的 点脉冲函数,
WuHan University
x
y
0
y y x?
0xa? nxb?
,ab
,0,,0A a B b
0 1 2 na x x x x bL
,1,2,,1,jjq x q j nL
q q x?
1
1
,n jj
j
q x q x x

jxx jxx?
1,0,ii xxxx o th erw ise
事实上,在 小变形和均匀分布外力 假设下,上述 弦的平衡 问题的微分方程模型乃是两点边值问题现在是作用 离散的集中力,此时弦达到平衡状态时位移函数 应满足
WuHan University
yx


,,;
0.
y q x a b
y a y b




1
1
0
,
0.
n
jj
j
n
y x q x x
y x y x


1
1
n
jjjq x q x x?

因此有这意味着,
在每一加载点 处 脉冲间断 ;
是阶梯函数 ;
是分段线性的连续函数,在每一内结点 转折灵活,
后面我们将指出,如此的 便是 一次样条函数,
WuHan University
yx
10,,,1,2,,.jjy x x x x j n L
jxyx
yx?
yx


1
1
0
,
0.
n
jj
j
n
y x q x x
y x y x



例 2,考察梁弯曲方程与 例 1类似地加载集中力,只是两端点除给 零位移约束 外还要加一阶或二阶 导数约束,于是集中力作用下的梁弯曲方程成为此时我们得到,图 4.8.2
WuHan University
4,,.y q x a b

1
4
1
n
jj
j
y x q x x?

yx
a b

② 在内结点 上 脉冲间断 ;
③ 为阶梯函数 ;
④ 在每个子区间 上 是三次多项式 ;
⑤ 和 都是 上的连续函数,
这便是后面我们要着重讨论的 三次样条,
此例展示了 三次样条 的如下特征,
○ 它分段三次光滑 ;
○ 整体二次光滑 (足够光滑 );
○ 在内结点处三阶导数间断 (转折灵活 ).
WuHan University
yx
y
1,jjxx
,yy,ab
jx
4 10,,,1,2,,;jjy x x x x j n L
4y
y
14
1
n
jj
j
y x q x x

上面两个例子分别涉及弹性弦和梁的 小变形平衡,
这就自然会想到弹性力学中联系 平衡态 与 变形能 的两个重要的 极值原理,最小势能原理和虚功原理,既然一次和三次样条分别与弦和梁的小变形平衡问题联系着,那么 直觉 告诉我们它们也应有相应的极值性质,后面我们将证明 的确如此 !
作为伏笔,我们指出,上两例中弹性弦和梁的 变形能分别表为和
WuHan University
2
b
a
y dx2,b
a
y dx
4.8.2 一般 k 次样条定义 4.8.1( 次样条函数 )设 是区间 上的一个分划或分割,即称 为定义在区间 上关于分划 的一个 次样条函数,如果,
(1) 在每一区间 上是次数不超过 的多项式,
(2)在区间 上是 次连续可微的,
WuHan University
k
k
0 1 1,nna x x x x bL
,ab
k
节点 处 的 阶导数间断,因而转折灵活
Sx,ab
S
1,iixx?
k
,ab 1k?
ix S k
次样条函数类记为为方便后面的讨论,我们将样条函数 写成如下形式
WuHan University
1
1
(,) { ( ) | ( ),,
0,1,,1 ; ( ) [,] }
p k i i
k
S k S x S x P x x
i n S x C a b


L
k




0 0 1
1 1 2
11
,,,
,,,
( 4,1 )
,,.
n n n
s x x x x
s x x x x
Sx
s x x x x





M
Sx
例,根据上述定义,0次样条函数 为 分段常数,即阶梯函数,它可表为
1次样条函数 为 分段线性函数,它可表为一般二次多项式不是严格意义下的二次样条 !
WuHan University
S




0 0 0 1
1 1 1 2
1 1 1
,,,
,,,
,,.n n n n
s x c x x x
s x c x x x
Sx
s x c x x x








0 0 0 0 1
1 1 1 1 2
1 1 1 1
,,,
,,,
,,.n n n n n
s x a x b x x x
s x a x b x x x
Sx
s x a x b x x x




S
4.8.3 3次样条插值问题的提法,给定数据表构造 3次样条函数 满足插值条件
WuHan University
x
fx
0x 1x nx
0f 1f nf
,3pS x S
L
L
(4,2 ),0,1,,.iiS x f i n L
构造方法,
应具有如下形式并且满足条件 (4.2)和
WuHan University
,3pS x S



1
1
1
,1,2,,1,
( 4.4 ),1,2,,1,
,1,2,,1.
i i i i
i i i i
i i i i
s x s x i n
s x s x i n
s x s x i n




L
L
L





0 0 1
1 1 2 3
1
11
,,,
,,,
( 4,3 ),.
,,;
i i i
n n n
s x x x x
s x x x x
S x s x C x x
s x x x x





因 是分段 3次多项式,故在每个区间 上都是 3次多项式,从而 共须 个独立条件确定,
① 和 在 个内结点连续,即满足条件 (4.4),因而
(4.4)给出了 个条件;
② (4.2)提供了 个独立条件 ;
③ 还差 2个条件,有多种给法,最常见的给法是,
(i)
(简支边界,导致 三弯矩关系式,关系式 ),
特别地,(自然边界,三次自然样条 );
(ii)
(固支边界,导致 三转角关系式,关系式 ).
WuHan University
Sxisx1,iixx?
4n
1n?
Sx
,SS? S 1n?
33n?
0 0 0,,n n nS x f x M S x f x M
0 0,nMM
0 0 0,,n n nS x f x m S x f x m
M
m



1
1
1
,1,2,,1,
( 4.4 ),1,2,,1,
,1,2,,1.
i i i i
i i i i
i i i i
s x s x i n
s x s x i n
s x s x i n



L
L
L
注意:上述①给出的 个条件是问题本身隐含的,
②和③共 个独立条件须提供,故 结点三次样插值问题只有 个自由度,(请与分段三次 Hermite插值比较 !)
三次自然样条插值 关系式的构造方法记 注意到 于 是连续的和分段线性的,从而 在每个 上是线性的,故可表为对此式积分两次并应用条件 (4.2)可得到
WuHan University
Sx
isx1,iixx?
3n?
33n?
1,.i i i i iS x M h x x
M
1n?
3n?
0,nxx
1 11( 4,5 ),,.iii i i i i
ii
x x x xs x M M x x x
hh


微分 (4.6)可得到和由 (4.4)第二式,(4.7)与 (4.8)应相等,于是得到
WuHan University


33
1
1
22
1
1 1 1
( ) ( )
66
( 4,6 )
,,.
66
ii
i i i
ii
i i i i
i i i i i i
ii
x x x x
s x M M
hh
x x h x x h
f M f M x x x
hh






1111( 4.7 ) 36iii i i i i i
ii
hhs x M M f f
hh
111 1 1
11
11( 4,8 ),
63
ii
i i i i i i
ii
hhs x M M f f
hh






1 1 1 1
11
1
2
( 4,9 ) 66
,1,2,,1
i i i i i i i
i i i i
ii
h M h h M h M
f f f f i n
hh







1
1
1
,1,2,,1,
( 4.4 ),1,2,,1,
,1,2,,1.
i i i i
i i i i
i i i i
s x s x i n
s x s x i n
s x s x i n



L
L
L
利用条件 得到关于 的线性方程组其中解出 代入 (4.6)即得到
.
WuHan University
0 0nMM iM 1111
221 2 2
223 2 2
21 11
nnn n n
nn nn
Mvuh
Mvh u h
Mvh u h
hu Mv










MMO O O
1 1 162,,.i i i i i i i i i
i
u h h b f f v b bh
,1,2,,1iM i nLiSx
Cubic Spline Interpolation Lagrangr Interpolation
WuHan University
类似地可构造 关系式 (留作练习 ).
下面的两个定理有重要意义,
定理 (4.1) 设 则定理 (4.2) 设 则
WuHan University
m
22( 4,1 0 ),bb
aa
S x d x f x d x
22( 4,1 1 ),bb
aa
S x d x f x d x
,1,pS x S
,3,pS x S
我们 只证明第二个定理,证明之前,先解释它的重要意义,
(ⅰ ) 前面曾提到,梁弯曲达到平衡态时变形能 (内能 )可表为于是 (4.11) 意味着,在满足端点约束 和以及插值条件
( *)
的一切连续二次可微的函数中,三次自然样条插值函数 使得变形能达到最小的,
WuHan University
2b
a
f d x
0y a y b
0y a y b
,1,2,,1jjy x y j nL
2b
a
f dx
22( 4,1 1 ) bb
aa
S x d x f x d x
(ⅱ )当 时,注意曲线 的曲率,
而积分 达到最小意味着 三次自然样条插值函数是 各种可能的插值函数中 使得均方曲率为最小的插值函数,即在一定意义下 最为光顺 的插值函数,这是三次自然样条插值函数的一个非常 特别和有用的性质,
下面证明定理 (4.2)
证明 令,则 并且下证
WuHan University
g f S 0igx?
2 2 2 2b b b b
a a a a
f d x S d x g d x S g d x
0.
b
a
S g d x
32 21f f ff0f
2b
a
f dx
利用分部积分并注意到以及得到
WuHan University
0 0nS x S x
1,,,1,2,,,i i iS x c c o n s t x x x i n


1
1
11
1
1
1
11
1
1
0.
i
i
i
i
ii
ii
xb
n
iax
x
n
ii
i x
xx
nn
i
iixx
n
i i i
i
S g dx S g dx
S g x S g x S g dx
S g dx c g dx
c g x g x












4.8.4 高次自然样条与 B-样条
高次自然样条确切地说,高次自然样条只对奇数阶定义,下面定义次自然样条,
定义 4.8.2( 自然次样条函数 )给定区间 上的分划如 定义 4.8.1,函数 称为 自然样条,如果它,
(i)在每个子区间 上都是次数不超过 的多项式 ;
(ii) 在区间 和 上是次数不超过 的多项式,
分划 下的 次自然样条函数构成的集合记为,
(依此定义,三次自然样条在区间 和 上退化为一次多项式,)
WuHan University
21k?
21k,ab?
2 kS x C? R 21k?
0,x
1,iixx? 21k?
,nx k
21k? 21kN
0,x,nx
为方便后面导出 B-样条,我们考虑利用构造 Lagrange插值 或
Newton插值 的结点基函数那样的方法,使一般 次自然 样条能用适当的基函数作,元件,来,组合装配,出来,
对 次幂函数 作一种,截肢”手术,截去 的部分并以 0 接上,得到所谓 半截幂函数 (truncated power function)
这种 手术导致 处 阶导数间断 (有跃度 ),但 直到阶导数仍连续,
WuHan University
21k?
0x?kxk
,0 ;
0,0,
k
k xxx
x?


0x? k 1k?
我们来 观察跃度,
①阶梯函数的基函数此函数本身在 处有间断,跃度为 1.
② 一次单项式 的半截幂及其 1阶导数
③ 次单项式 的半截幂及其 阶导数
WuHan University
0 1,0 ;
0,0,
xx
x?


0 1x?
0x?
k
,0,
0,0 ;
k
k xxx
x?


kx k
!,0,0,0,kk kxx x
,0,
0,0 ;
xxx
x?

1,0,
0,0,
xx
x?


x
0
x
y
0x?1
0
x
y
x?
x
y
0
kx?
至此我们已经 可以观察到,
①单项式半截幂 可被视为一个结点的 次样条 ;
②平移后得到的 也是一个结点的 次样条 ;
③平移、压缩、组合后得到的是两个结点的 次样条,
尤为重要的是,利用半截幂这样简单的样条可构造出一系列新的样条,
WuHan University
kx? k
kixx k
,,,kki j i jx x x x x xR
k
定理 (4.3)前述分划 上存在唯一 自然样条且可表为其中证明 (留作讨论题 ).
思考题,
半截幂函数 的支集 Supp 为何?
定性地分 类函数数据误差的扩散情况,
WuHan University
21kSx N
21
00
kn ki
i i i
ii
S x a x b x x


0 0,0,n jiii b x j k
kixx
21kN
kixx
B-样条基础前已指出,我们可以利用半截幂这样简单的样条作为 基 装配成一系列新的样条,下面讨论通过 提供 基函数 (Bases Function)来构造样条函数空间的一般方法,
首 先 将有限的结点集扩展为无穷集分划其次 定义 半截幂 的一阶差分如此得到的样条 称为 0次 B-样条 (B-spline).
WuHan University
ix 1ix?
x
0iBx
1
1 0 1x x x
0x?
00 10 1 1,,,0,.iii i i x x xB x x x x x o the rwise
0iBx

有如下性质,
① 对所有的 和所有的 ;
② 对所有的于是 0次样条函数 可表为 阶梯函数递归地 定义 次 B-样条 如下,
WuHan University
kiBx
0iBx
0,0ix B x?i
0,1,iix B x
k
11 1 1
11
( 4,1 2 ),k k kiki i i
i k i i k i
xxxxB x B x B x
x x x x




0,ii
i
S x c B x?


记则 (4.12)可写成例 1.1次 B-样条 (图 4.8.3) 图 4.8.3
于是 1次样条函数 可表为 分段线性函数
WuHan University
k ii
i k i
xxvx
xx?

11 11( 4,1 2 ) 1,k k k k ki i i i iB v B v B

1
1 1 0 1 0 2
1 1 1 2
1
,,
1,,
0,.
i
ii
i
i
i i i i i i i
i
xx
x x x
h
xx
B x v B v B x x x
h
o th e rwise





1
ix 2ix?1ix?
x
1,ii
i
S x c B x?


例 2,2次 B-样条 (图 4.8.4)
图 4.8.4
例 3,3次 B-样条 (图 4.8.5)
图 4.8.5
WuHan University

2 2 1 2 1
11
2
1
1
1 1 1
12
1 1 1 2 1
21
23
2 1 2
1
()
,,
()
( 1 ) ( 1 ),,
( 1 ) ( 1 ),,
0,.
i i i i i
i
ii
i i i
i i i i
ii
i i i i i i
ii
ii
i i i
B x v B v B
xx
x x x
h h h
x x x x x x x x
x x x
h h h h h h
x x x x
x x x
h h h
o th e rw ise


















ix
4ix?3ix?
3ix?2ix?1ix?
2ix?1ix?ix
x
x
次 B-样条 有如下性质 (证明作为课外讨论题 ):
① B-样条 组 是 上的线性无关组,
② 在相同的分划 之下,越大,的 集 Supp
越大,振幅 越小,因而 误差随远离结点而衰减,
③ 记 则有
④若 为一致分划,则
B-样条 提供了一类具有若干特殊性质的基 !
WuHan University
k
11,,,k k kk k nB B B0,nxx
k kiB kiB
kiB

0 1.kii
ii
B x B x


kiB
11
1
.1x kki k iij
j
xxB t d t B x
k




1,ki i k ixx
11 11( ),2,k k k k ki i i i id B k B B kdx
B-样条插值我们的兴趣在于利用 B-样条 作插值,为此,我们限制于区间,插值问题的提法为,
求 形如满足条件
(ⅰ)

(ⅱ) 某种边界约束,
有关 B-样条 的更多理论与应用讨论留待下次课,
WuHan University
0,nxxkiB
1
1
n k
ii
i
S x c B x?

,pS x S k
0,1,2,,iiS x f i n
小结
⑴ 样条相对于其它分段多项式插值的主要优点是它保证了较高阶的整体光滑性,实践中,曲率间断就须仔细打量才能察觉,
三次样条能保证二阶导数连续,三阶导数仅在结点间断,如此的光滑通常是足够的,三阶导数在结点间断还带来了转折灵活的特点,
⑵ B-样条的支集虽然随阶数的提高而扩大,但结点数据误差仍可控制于局部,且愈远离结点愈衰减,这使得样条插值的 稳定性要优于其它高次多项式插值,
⑶ 次 B-样条 之性质③
意味着 越大 越光滑,但它的支集也就越宽,误差将传播到愈远处才能消失为 0.这就是高次样条也会有 多余的波动 的原因,
WuHan University
kiBk
11
1
.1x kki k iij
j
xxB t d t B x
k




k kiB
11 11( ),2,k k k k ki i i i id B k B B kdx
⑷ 样条插值计算是隐式的,需要形成并求解一个线性方程组,
不如前面讲过的多项式插值计算简便,
⑸有关样条插值 收敛性 和 误差估计 方面的问题我们没有提及,
建议阅读教材,样条函数还有其它一些有用性质,例如,
次自然样条 也有类似于 (4.11)的最优性不等式这个不等式深刻揭示了 自然样条的和谐之美 !
老师鼓励并且非常乐意帮助对样条函数方面的知识有兴趣的学生更深入地学习,
WuHan University
21k?
2211,bbkk
aa
S x d x f x d x
21() kSx N
THANK YOU
WuHan University