二次样条与三次样条的研究

更新时间:2024-04-24 22:47:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

安庆师范学院数学与计算科学学院2012届毕业论文

二次样条与三次样条插值研究

作者:季哲 指导老师:陈素根

摘要 样条插值是使用一种名为样条的特殊分段多项式进行插值的形式。本文主要讨论在几种不

同边值条件下二次样条插值与三次样条插值的求解方法和分析在某特殊边值条件下二次样条插值与三次样条插值的变分性质,并分别对两种插值的余项进行较精确地估算。另外介绍二次B样条函数于三次B样条函数,并对二者的有关性质进行说明和证明。最后给出三次样条插值在实际中的应有。

关键词 二次样条函数 三次样条函数 变分性质 余项

1 引言

自上世纪60年代以来,由于航空造船等工程设计的需要,人们发展了样条插值技术。现在样条函数越来越流行,它不仅是现代函数逼近的一个活跃的分支,而且也是现代数值计算中一个十分重要的数学工具。

本文主要研究在几种某特殊边值条件下二次样条插值与三次样条插值求解方法;分析在某特殊边值条件下二次样条插值与三次样条插值的变分性质,并分别对两种插值的余项进行较精确地估算。

本文还主要介绍二次样条与三次样条的基本概念,常见的二、三次B样条及

Berzier样条等。最后研究二次样条与三次样条在数据插值中的应用,并举例说明。

2 二次样条与三次样条的计算方法

2.1 二次样条的计算方法

定义: 给定区间[ a,b ]一个分割△x0?a,x1,...,xn?b,二次样条函数S(x)满足以下条件:

1) 2) 3)

S(x)在每个区间[xi?1,xi]上是一个二次多项式;

S(x)在所有节点满足xi (i=1,2,…,n-1)上具有一阶连续导数; S(x)在所有节点满足S(xi)= yi (i=0,1,…,n)。

在每个小区间[xi?1,xi]上是一个二次多项式,有3个系数,因此要确定S(x)就要确定3n个待定参数,而由S(xi)= yi (i=0,1,…,n),得到n+1个方程;由S(xi?)?S(xi?)

1

安庆师范学院数学与计算科学学院2012届毕业论文

(i=1,2,…,n-1)得到n-1个方程;由S(xi?)=S( xi?)(i=1,2,…,n-1)得到n-1个方程,总共3n-1个方程,为了确定一个待定的样条插值函数,还需增加1个条件,这个条件通常是在区间[a,b]的两端处给出,即边界条件,边界条件根据实际问题的需求来确定,其类型很多,常见的边界条件类型有:

1) 2) 3) 4) 5)

给定初始断点的一阶导数值:S (x0)= y0 给定终端点的一阶导数值:S (xn)= yn 给定初始端点的二阶导数值:S(x0)= y0/ 给定终端点的二阶导数值: S (xn)= yn/

若插值函数为周期函数时,此时y0=yn ,给定:S (x0)=S(xn)

////////// 下面针对上面5种情况分别讨论二次样条插值问题。

/ 1)给定初始断点的一阶导数值:S (x0)=y0

/在区间[x0,x1]内,已知S(x0)=y0,S(x1)=y1和S/(x0)= y0,

/y1?y0?h0y022(x?x)hS(x)?00由Hermite插值公式可知 ?

//y0(x?x0)?y0(1)其中,hi?xi?1?xi(i=0,1,…,n-1),此时,

/y1/?S(x1)?2(y1?y0)?y0/S(x1)?y1,S(x2)?y2两个条件可推导出区h0,同时加上

间[x1,x2]内的二次插值函数,依此类推得到区间[xi,xi+1](i=0,1,…,n-1)内二次样

yi?1?yi?hiyi/2/S(x)?(x?x)?yii(x?xi)?yi2hi条插值函数为 (2)

/

yi而?1可由式(3)递推得到。

yi/?1?S/(xi?1)?2(yi?1?yi)?yi/hi (3)

/2) 给定终端点的一阶导数值:S (xn)=yn

//S(x)?y,S(x)?yxxS(X)?yn?1n?1nnn?1nnn 在区间[,]内,已知和,由Hermite

2

安庆师范学院数学与计算科学学院2012届毕业论文

/yn?1?yn?hn?1yn/S(x)?(x?xn)2?yn(x?xn)?yn2hn?1插值公式可知 (4)

//yn?1?S(xn?1)? 此时,

2(yn?yn?1)/?ynyxhn?1,同样加上S(n?2)= n?2,

S(xn?1)?yn?1两个条件可推导出区间[xn?2,xn?1]内的二次插值函数,依次类推得到区

间[

xi,xi?1](i=0,1,…,n-1)内二次样条插值函数为

yi?yi?1?hiyi/?12/S(x)?(x?x)?yi?1i?1(x?xi?1)?yi?12hi (5)

/yi而可由式(6)递推得到.

yi/?S/(xi)?

2(yi?1?yi)?yi/?1hi (6)

3) 给定初始端点的二阶导数值:S//(x0)=y0//

////x,xxyS(x)?yS(x)?y01001100 在区间[]内,已知S()=,和,利用待定系数法,//2//y02(y1?y0)?h0y02S(x)?(x?x0)?(x?x0)?y022h0二次样条插值公式为 (7)

//2(y1?y0)?h02y0 此时y? (8)

2h0/0 这就转化为第一种情况,可由式(2)、(3)得到二次样条插值函数。

////

4)给定终端点的二阶导数值:S(xn)=yn

// 在区间[xn?1,xn]内,已知S(xn?1)?yn?1,S(xn)?yn和S//(xn)?yn,二次样条插//2//yn2(yn?yn?1)?hn2?1yn值公式为S(x)?(x?xn)?(x?xn)?yn (9)

22hn?12//2(yn?yn?1)?hny?1n 此时y? (10)

2hn?1/0这就转化为第二种情况,可由式(5)、(6)得到二次样条插值函数。

5) 已知y0?yn,给定:S/(x0)=S/(xn) 由式(3)可知:yn?/2(yn?1?yn?2)2(yn?yn?1)///,y??y?ynn?1n?2,以此递?1hn?2hn?13

安庆师范学院数学与计算科学学院2012届毕业论文

推,得到:

(1) 当n为偶数时,

/yn?2(yn?yn?1)2(yn?1?yn?2)2(yn?2?yn?3)2(y2?y1)2(y1?y0)/???...???y0hn?1hn?2hn?3h1h0若满足:S/(x0)?S/(xn),只有

yn?yn?1yn?1?yn?2yn?2?yn?3y?yy?y???...?21?10?0 (11) hn?1hn?2hn?3h1h0//成立时,有解,并且y0无限制,任意一个y0可得到一组样条插值函数。

若式(11)不满足,无解,找不到满足条件的样条插值函数。

(2) 当n为奇数时,

/yn?2(yn?yn?1)2(yn?1?yn?2)2(yn?2?yn?3)2(y2?y1)2(y1?y0)2(y1?y0)/???...????y0hn?1hn?2hn?3h1h0h0若满足:S/(x0)?S/(xn),,得到

/y0?yn?yn?1yn?1?yn?2yn?2?yn?3y?yy?y???...?21?10(12) hn?1hn?2hn?3h1h0这就是转化为第一种情况,可由式(2),(3)得到二次样条插值函数。 以下是举例说明:求满足下面条件的二次样条函数S(x):

S(1)?8,S(2)?24,S(4)?32,S(5)?16,S(7)?30。

/1)y0?17的情形

////由式(3)得到y1?15,y2??7,y3??25,y4?39 由式(2)得到二次样条

??x2?19x?10;1?x?2?2??5.5x?37x?28;2?x?4插值函数:S(x)= ? 2?9x?65x?84;4?x?5?2??16x?185x?541;5?x?7/2)y4??1的情形

///由式(6)得到y3?15,y2??47,y1/?55 ,y0??23

4

安庆师范学院数学与计算科学学院2012届毕业论文

?39x2?101x?70;1?x?2?2??25.5x?157x?188;2?x?4由式(5)得到二次样条插值函数:S(x)= ? 2?31x?295x?716;4?x?52???4x?55x?159;5?x?7//3) y0?4的情形

/////由式(8)得到y0由式(3)得到:y1?18,y2??10,y3??22,y4?36 ?14,

?2x2?10x?4;1?x?2?2??7x?46x?40;2?x?4由式(2)得到二次样条插值函数:S(x)= ? 2??6x?38x?24;4?x?52??14.5x?167x?488.5;5?x?7//4) y4??10的情形

////由式(10)得到y4由式(6)得到:y3?17,y2??49,y1/?57,y0??25 ??3,

?41x2?107x?74;1?x?2?2??26.5x?163x?196;2?x?4由式(5)得到二次样条函数:S(x)= ? 233x?313x?756;4?x?5?2???5x?67x?194;5?x?7求周期二次插值函数:S(1)?8,S(2)?24,S(4)?32,S(5)?8

/由式(12)得到,y0??12,二次样条函数为

S(x)=

?28x2?68x?48;1?x?2?2??20x?124x?144;2?x?4 ?12x2?132x?368;4?x?5?2.2 三次样条的计算方法

定义:给定区间[ a,b ]一个分割△ a=x0 , x1, …, xn =b,在每个小区间[xi,xi?1]上

S(x)是三次多项式。若在节点xi上给定函数值yi?f(xi)(i?0,1,...n,,并成立S(x)为三次样条插值函数。 S(xi)?yi(i?0,1,...n,则称,从定义知要求S(x),在每个区间[xi,xi?1]上要确定4个待定系数,共有n个区间,故要确定4n个参数。

根据S(x)在[a,b]上二阶导数连续,在节点xi (i?1,2,...,n?1)处应满足连续性条件

5

安庆师范学院数学与计算科学学院2012届毕业论文

??16.052x3?35.9426x2?19.89x?2:0?x?1?326.878x?32.849x?48.9019x?20.9306;1?x?2???5.9593x3?44.174x2?105.1495x?0.4187;2?x?3?32?5.4593x?58.593x?203.1579x?226.5359;3?x?4??0.3780x3?11.4545x2?77.0335x?147.0526;4?x?5?32??6.9474x?109.9952x?569.7368x?968.2249;5?x?6?8.1675x3?162.0718x2?1062.7x?2296.6;6?x?7???4.2225x3?98.1172x2?758.6579x?1953.2;7?x?8?S(x)??2.2225x3?56.5622x2?478.7775x?1346.7;8?x?9??2.1675x3?61.9665x2?587,9809x?1853.6;9?x?10??0.9474x3?31.4785x2?285.3206x?955.4689;10?x?11??????? ???

3 对三次样条函数空间的研究

4 设[a,b]由一个分割?:a?x1?x2?...?xi?1?b。用S?=(k,m)为关于?,[a,b]上3次样条函数}称为3样条函数空间。

4 显然,S?是一个线性空间,且3次样条函数

S(x)?Si(x)?ai?bi(x?xi)?ci(x?xi)2?di(x?xi)3x?[xi,xi?1],(i?1,2,...,i)由i段

“装配“,每段由4个参数唯一确定,所以共有4i个自由参数。

/// 又由要求3次样条函数S(x),及S(x),S(x)在xi(i?2,...,i)连续,即有3(i?1)个

44约束条件。所以,3次样条函数空间S?最多有4i?3(i?1)?i?3个自由参数,也就是说S?维数最多有i?3。

4定理1 设函数集合?1?{1,x,x,x,(x?x2)?,...,(x?xi)?}则?1为S?空间中的一组基

2333a?x?b。

4证明 显然?1中任一函数?S?,且?1中共有i?3个函数,其中x2,...,xi为内点,剩下只

要证明?1中i?3个函数于线性无关即可。 事实上,如果存在ai,bi使

?ax??b(x?x)jjjj?0j?23i3j??0,x?[a,b](1)

11

安庆师范学院数学与计算科学学院2012届毕业论文

1) 对于x?[a,x2]时,则(1)式为

i?axjj?03j?0,x?[a,x2]于是,aj?0,(j?0,1,2,3)

这时,(1)式为

?b(x?x)jj?23j??0,x?[a,b]

?0 (2)对于x?[x2,x3]时,则(1)式为b2(x?x2)3??0,x?[x2,x3]由此,b2(3) 同理,可得bi?0,(j?2,...,i)。

44i?3维线性空间。于是,对任一S(x)?S?定理2 三次样条函数空间S?,则有

3iS(x)=?ajx??aj?2(x?xj)3?

jj?0j?24 二次B样条函数与三次B样条函数

设有节点序列{ti}:{ti}:t1?t2?...?tn?k,可由分割?节点扩展得到:

t1?t2?...?tk?x1?x2?...?xi?xi?1?tn?1?...?tn?k且tk?1?x2,tk?2?x3,...,

k维数。 tn?tk?i?1?xi 其中n?k?i?1为k-1次样条函数空间S?定义(B样条函数)

设有节点序列{ti}n?k,称函数Bi,k(x)?(ti?k?ti)[ti,ti?1,...,ti?k](t?x)?为关于节点序列{ti}的第i个k-1次B样条函数。 下面介绍B样条函数性质。

性质1 B样条正性与局部支持性。即Bi,k(x)?证明 首先证明Bi,k(x)=0,当x?[ti,ti?k]。

k?1?(t?x),t?x?1由于Bi,k(x)=?(ti?k?ti)[ti,ti?1,...,ti?k]f(t)其中f(t)?(t?x)k ????0,t?xk?1??0,x?[ti,ti?k]

?0,x?(t,t)ii?k?当x?[ti,ti?k]时,则f(t)在[ti,ti?k]上是一个k-1次多项式,故k阶差商

[ti,ti?1,...t?,i性

kf](t)=0,所以Bi,k(x)=0,当x?[ti,ti?k]。

B

2

12

安庆师范学院数学与计算科学学院2012届毕业论文

??1,ti?x?ti?1Bi,1(x)???0,??(1) ??B(x)?x?tiB(x)?ti?k?xBi,ki,k?1i?1,k?1(x)(k?2,3,...)?t?tt?ti?k?1ii?ki?1??1证明 由于Bi,k(x)=(ti?k?ti)[ti,ti?1,...,ti?k](t?x)k 其中?f(t)?

k?2?1?g(t)h(t) (t?x)k?=(t?x)(t?x)?由易

?1?得

*

[ti?1(t?x)k?=

t)(ti?,xi[ti,ti?1,...,ti?k]?2(t?x)k?,+tik?2(2) [ti,ti?1](t?x)*[ti?1,...,ti?k](t?x)?又由差商定义有

[ti?1,...,ti?k](t?x)k?2?k?2k?2[ti?1,...,ti?k](t?x)??[ti,...,ti?k?1](t?x)?(3) ?ti?k?ti将(3)式代入(2)式得到

?1[ti?1,...,ti?k](t?x)k?==

ti?x?2k?2k?2[[ti?1,...,ti?k](t?x)k?[ti,...,ti?k?1](t?x)?]?[ti?1,...,ti?k](t?x)??ti?k?titi?k?xx?tik?2k?2[ti?1,...,ti?k](t?x)??[ti,...,ti?k?1](t?x)?]

ti?k?titi?k?ti即

k?1=Bi,k(x)=(ti?k?ti)[ti,...,ti?k](t?x)?ti?k?xk?2+(ti?k?ti?1)[ti?k,...,ti?k](t?x)?ti?k?tix?tik?2或 (ti?k?1?ti)[ti,...,ti?k?1](t?x)?ti?k?1?tiBi,k(x)=

ti?k?xx?tiBi?1,k?1(x)?Bi,k?1(x)(k?2,3,...)

ti?k?ti?1ti?k?1?ti由B样条递推公式可知Bi,3(x)(2次B样条)是分段2次多项式且具有连续的一阶导数。同理可得Bi,4(x)(3次B样条)是分段3次多项式函数且具有连续的一阶导数和二阶导数。

k现在证明S?(k-1次B样条函数空间)的维数n=k+i-1

13

安庆师范学院数学与计算科学学院2012届毕业论文

证明 设C1B1,k(x)?C2B2,k(x)?...?CnBn,k(x)?0,?x?[t1,tn?k] 对于x?[t1,t2],则上式为C1B1,k(x)?0,故C1?0。 对于x?[t2,t3],则上式为C2B2,k(x)?0,故C2?0 同理可得C3?C4?...?Cn?0

于是{B1,k(x),B2,k(x),...,Bn,k(x)}于[t1,tn?k]上线性无关。

同理可证{B1,k(x),B2,k(x),...,Bn,k(x)}于[tk,tn?1]也线性无关。于是

k一个基。 {B1,k(x),B2,k(x),...,Bn,k(x)}为S?

5 应用举例

三次样条插值函数在机器人轨迹规划应用中的给进研究

1) 前言

机器人轨迹规划就是根据机器人手部预定的任务设计机器人各关节位置、速度和加速度对时间的运动规律,它是机器人学中一个重要而且十分复杂的问题。

三次样条插值在机器人轨迹规划应用刚刚起步,它能保证机器人在工作过程中角度、角速度和脚连续加速度,下将给出具体应用过程。 2)三次样条插值函数的构造

设S(t)??(t)t?[t0,tn],并利用S(t)在ti处的二阶导数值S//(ti)?Mi

由于S(t)在小区间t?[ti,ti?1]上是次数不高于三次的多项式,其二阶导数S//(ti)是一次多项式或是常数,利用S//(ti)?Mi和S//(ti?1)?Mi?1进行线性插值,得到:

S//(ti)?(ti?1?t)(t?ti)Mi?Mi?1 (1)其中hi?ti?1。 6hi6hi// 对于(1)的S(t)表达式连续进行积分两次,并利用插值条件S//(ti)??(ti)及

S//(ti?1)??(ti?1)可确定积分过程中的两个积分常数,整理后用Mi表示的在区间[ti,ti?1]的

S(t)的公式为:

(ti?1?t)(t?ti)Mihi2ti?1?tMi?1hi2t?ti(2) S(ti)?Mi?Mi?1?(?(ti)?)?(?(ti?1)?)6hi6hi6hihi6hihi

从式(2)可以看出,只要求出公式中的Mi的值,S(t)便可以完全确定,这样就将三

14

安庆师范学院数学与计算科学学院2012届毕业论文

次样条插值函数S(t)的问题转化为求n+1个未知数Mi的问题。

对式(2)的S(t)进行求导得:

(ti?1?t)2(t?ti)2?(t)??(ti)Mi?1?Mi(3) S(ti)?Mi?Mi?1?i?1?2hi2hihi6/由角速度S/(t)在节点上的连续性条件:S/(ti?0)?S/(ti?0)得到:

hi?1h?(t)??(ti?1)hh?(t)??(ti) Mi?1?iMi?i??iMi?iMi?1?i?166hi?136hi整理得:?iMi?1?2Mi??iMi?1?di(4)

?(ti)??(ti?1)?(ti?1)??(ti)hi?1hi令?i?di?6?i?hi?1?hihi?1?hiti?1?ti?t?ti?1hi?1?hi?6?[ti?1,ti,ti?1]

上式方程组中含有n+1个未知数M0、M1...Mn而上式方程组有n-1个等式,要求出M0、M1...Mn,还必须加两个约束条件,在机器人的起始点和终了点的角速度为0,所加的两个边界条件为:S/(t0)?0,S/(tn)?0。

2M0?M1??(t1)??(t0)6h0*h0?d0(5)

2Mn?1?Mn??6?(tn)??(tn?1)*?dn hn?1h0?21??M0??d0????M??d??2?11???1??1????...???...? .........??????Md?2?n?1?n?1n?1???n?1???????12??Mn????dn?上述对三次样条插值函数的应用难以保证机器人起始点和终了点的加速度的连续变化,故现对三次样条插值函数进行改进,克服起始点和终了点加速度的突变。

为了使起始点和终了点的加速度由0连续变化,并且保证在各点的速度和加速度连续,由传统求得的三次样条在t?[to,t1]和t?[tn?1,tn]的函数分别为:Sn?1(t)??n?1(t)(6)

在上述两函数后分别加一函数?0(t)和?n?1(t),则(6)式为

15

安庆师范学院数学与计算科学学院2012届毕业论文

?S0(t0)??0(t)??0(t)(7) ??Sn?1(t0)??n?1(t)??n?1(t)为了使机器人起始点和终了点的加速度由0连续变化,并且保证在各点的速度和加速

??0(t1)??0/(t1)??0//(t1)?0??0(t0)??0/(t0)?0?度连续,?0(t)和?n?1(t)必须满足以下条件:?//(8)

u(t)???(t)??M000?00??///?n?1?n?1(tn?1)??n?1(tn?1)??n?1(tn?1)?0??n?1(tn)??n/?1(tn)?0?(9) ?//un?1(tn)???n?1(tn)??Mn???由(7)式可知?0(t)为5次多项式,而且是?0(t)的三重零点,t0是?0(t)的二重零点,因此可设?0(t)的函数形式为:?0(t)=a0(t?t1)3(t?t0)2

//以上只含有两个待定系数a0,利用(8)式中的?0(t0)??M0得到:a0?M0(10) 32h0同理tn?1是?n?1(t)的三重零点,tn是?n?1(t)的三重零点,因此可设?n?1(t)的函数形

//式为:由un?1(tn)=?Mo整理得到an?1??Mn(11) 32hn?1可以通过追赶法求出式(5)中的M0、M1...Mn,且解唯一。改进算法中a0和an?1的解也只有一个,所以用三次样条改进算法可得到唯一函数。

结 束 语

样条插值是数值分析中经典的内容,长期以来很多学者致力于样条插值的研究,对

二次样条与三次样条的研究已非常的成熟,本文主要做一些基础性研究及总结性工作。本文介绍了二次样条与三次样条插值函数的定义、讨论在几种不同边值条件下二次样条插值与三次样条插值的求解方法和分析在某特殊边值条件下二次样条插值与三次样条插值的变分性质,并分别对两种插值的余项进行较精确地估算。

参考文献

[1] 朱心雄. 自由曲线曲面造型技术[M],科学出版社,2006. [2] 王能超. 数值分析简明教程[M],高等教育出版社,2004. [3] 王仁宏. 数值逼近[M],高等教育出版社,1996.

[4] 苏步青,刘鼎元. 计算几何[M],上海科学技术出版社,1981.

16

安庆师范学院数学与计算科学学院2012届毕业论文

[5]沈剑华.计算数学基础[M].北京:高等教育出版社,1999

[6] 刘为,高毅,高尚.二次样条曲线研究[J].计算机与数字工程,2011,3:21-25. [7] 郭昌言,高尚. 三次样条插值的推广[J].科学技术与工程,2011,7:1507-1511.

[8] Farin G. Curves and Surfaces for Computer Aided Geometric Design[M]. 4th ed. San Diego:Academic Press,1997.

[9]三次样条插值在机器人轨迹规划应用中的改进研究。[J]机械设计与制造, 张小江,高秀华,2008,1001-3997.

[10]邱惠敏,杨济安.样条函数与样条小波[J].重庆邮电学院报(自然科学版),2000,12(1):30~33

Research on Quadratic Spline Interpolation and Cubic Spline Interpolation

Author :JI zhe Supervisor: CHEN sugen

Abstract Spline interpolation is to use a technique called spline special piecewise polynomial interpolation form. This paper mainly discusses several kinds of different boundary value conditions two times spline interpolation and three times spline interpolation method and Analysis in some special boundary value conditions two times spline interpolation and three times spline interpolation variational properties, and are respectively on two kinds of interpolation for more accurate estimation of remainder term.

Keywords Quadratic Spline Interpolation Cubic Spline Interpolation

variational properties reminder

17

本文来源:https://www.bwwdw.com/article/mngp.html

Top