第三讲三次样条函数优秀PPT.ppt
计算方法计算方法第第3讲讲 样条函数样条函数1本讲主要问题本讲主要问题一、一、样条函数样条函数二、二、三次样条插值三次样条插值三、三、三次样条函数的构造三次样条函数的构造2 分段插值存在着一个缺点分段插值存在着一个缺点,就是会导致插就是会导致插值函数在子区间的端点值函数在子区间的端点(衔接处衔接处)不光滑不光滑,即导即导数不连续数不连续,对于一些实际问题对于一些实际问题,不但要求一阶导数不但要求一阶导数连续连续,而且要求二阶导数连续而且要求二阶导数连续.为了满足这些要求为了满足这些要求,人们人们引入了样条插值的概念引入了样条插值的概念.所谓所谓“样条样条”(spline)是工程绘图中的一种工具是工程绘图中的一种工具,它是它是有弹有弹性的细长木条性的细长木条.绘图时绘图时,用细木条连接相近的几个结点用细木条连接相近的几个结点,然然后后再进行拼接再进行拼接,连接全部结点连接全部结点,使之成为一条光滑曲线使之成为一条光滑曲线,且在且在结结点处具有连续的曲率点处具有连续的曲率.样条函数就是对这样的曲线进行数学模拟得到的样条函数就是对这样的曲线进行数学模拟得到的.它除它除了要求给出各个结点处的函数值外了要求给出各个结点处的函数值外,只需提供两个边界点处只需提供两个边界点处导数信息导数信息,便可满足对光滑性的不同要求便可满足对光滑性的不同要求.3 定义定义 设设f(x)是区间是区间a,b上的一个连上的一个连续可微函数续可微函数,在区间在区间a,b上给定一组节点上给定一组节点:a=x0 x1x2xn=b设函数设函数S(x)满足条件满足条件:一、一、样条函数样条函数 (1)S(x)在每个子区间在每个子区间xi,xi+1(i=0,1,2,n1)上是次数不超过上是次数不超过m的多项式的多项式;(2)S(x)在区间在区间a,b上有上有m1阶连续导数阶连续导数.则称则称S(x)是定义在是定义在a,b上的上的m次样条函数次样条函数,x0,x1,x2,xn称为称为样条节点样条节点,其中其中x1,xn1称为称为内结点内结点,x0,xn 称为称为边界节点边界节点。当当m=3时时,便成为最常用的便成为最常用的三次样条函数三次样条函数.4 样条插值的样条插值的思想思想:逐段选取适当的逐段选取适当的低次多项式低次多项式,按一定的光滑性要求连接起来按一定的光滑性要求连接起来构成插值函数构成插值函数.二、二、三次样条插值三次样条插值 定义定义 设给定区间设给定区间a,b上上n+1个点个点 a=x0 x1x2 xn=b,以及相应的函数值以及相应的函数值 yi=f(xi),i=0,1,n.如如果函数果函数S(x)满足满足:(1)在每个子区间在每个子区间 xk,xk+1(k=0,1,n1)上上,S(x)是不超过三次的多项式是不超过三次的多项式,且且S(xi)=yi,i=0,1,n;(2)S(x)、S(x)、S(x)在在a,b上连续上连续.则称则称S(x)是是f(x)在节点在节点x0,x1,x2,xn上的上的三次样条插三次样条插 值函数值函数.567 例例1 给定区间给定区间0,3上上 3 个点的函数个点的函数值值 f(0)=0,f(1)=2,f(3)=4,试求数试求数 a,b,c,d,使函数使函数 S(x)为给定点上的三次样条插值为给定点上的三次样条插值函数函数.其中其中答案答案:8 给定给定n+1个样点个样点(xi,yi)(i=0,1,n),确定一个三次样条插值函数需要确定一个三次样条插值函数需要4n个独个独立条件立条件.在定义中在定义中,已指定了已指定了4n2个条件个条件,即即所以所以,一般需补充指定一般需补充指定2个个边界条件边界条件.9三、三、三次样条函数的构造三次样条函数的构造 三弯矩插值法三弯矩插值法 记记 Mi=S(xi),f(xi)=fi=yi,考虑它在任考虑它在任一一区间区间xi,xi+1上的形式上的形式.根据三次样条的定义可知根据三次样条的定义可知,S(x)的二阶导数的二阶导数 S(x)在每一个子区间在每一个子区间xi,xi+1(i=0,1,2,n1)上都是线性函数上都是线性函数.于是在于是在xi,xi+1上上 S(x)=Si(x)的二阶导数表示成的二阶导数表示成其中其中 hi=xi+1xi.10 对对S(x)连续积分两次连续积分两次,并利用插值并利用插值条件条件S(xi)=yi,得到得到只要能求出所有的只要能求出所有的Mi,就能求出三次就能求出三次样条插值函数样条插值函数S(x).11 下面考虑下面考虑 Mi 的求法的求法.由连续性由连续性 S(xi)=S(xi+),(i=1,2,n1)得得 iMi 1+2Mi+iMi+1=di 其中其中该方程组有该方程组有n1个方程个方程,但有但有n+1个变量个变量Mi.12 下面介绍几种常用的边界条件下面介绍几种常用的边界条件 第第1型边界条件型边界条件:已知已知f(x)在两端点的导数在两端点的导数f(a)和和f(b),要求要求 S(a)=f(a),S(b)=f(b)第第2型边界条件型边界条件:已知已知f(x)在两端点的二阶导数在两端点的二阶导数f (a)和和f (b),要求要求 S(a)=M0=f (a),S(b)=Mn=f (b)特别当特别当 S(a)=S(b)=0时时,S(x)称为称为自然三次自然三次样条样条.第第3型边界条件型边界条件:已知已知f(x)是以是以b a为周期的周期函数为周期的周期函数,要求要求S(x)满满 足周期条件足周期条件 S(a)=S(b),S(a+)=S(b),S(a+)=S(b)13 三次样条插值问题加上第三次样条插值问题加上第 i 型边界型边界条件称为第条件称为第 i型插值问题型插值问题(i1,2,3).可可以证明第以证明第 i 型插值问题的解是存在且唯一的型插值问题的解是存在且唯一的.他们对应如下的方程组他们对应如下的方程组:14对于第对于第1型插值问题型插值问题:对于第对于第2型插值问题型插值问题:对于第对于第3型插值问题型插值问题:15 以上各组条件与前述方程组联立以上各组条件与前述方程组联立,可以解出未知参数可以解出未知参数 M0,M1,Mn,然然后代入后代入S(x)表达式表达式,即可求得样条函数即可求得样条函数.上面构造方法中上面构造方法中 Mi 相应于力学中细梁在相应于力学中细梁在 xi 处处截面的弯矩截面的弯矩,每一个方程中又至多出现相邻的三个每一个方程中又至多出现相邻的三个Mi,通常称为通常称为三弯矩法三弯矩法.16 求三次样条插值函数的步骤归纳为求三次样条插值函数的步骤归纳为:(1)确定边界条件确定边界条件,判定是第几型插判定是第几型插值问题值问题.(2)根据所确定的条件计算各值根据所确定的条件计算各值,形成方程组形成方程组.(3)解方程组解方程组,求得求得M0,M1,M2,Mn.(4)将求得的将求得的 Mi 值代回值代回 S(x)的表达式中的表达式中,从而可从而可求得函数求得函数 y=f(x)在任一点的近似值在任一点的近似值S(x).17 例例2 给定函数表给定函数表,求自然三次样条求自然三次样条插值函数插值函数,并求并求f(3).1 3 4 2y1 2 4 5x答案答案:18 练习练习 已知函数已知函数 f(x)的数值表如下:的数值表如下:试求试求 f(x)在在2,6上的三次样条插值函数上的三次样条插值函数.f (x)f(x)x111373642答案答案:M0 =0.25,M1 =2.5,M2=-7.25.S(x)=(1/48)(x 4)3+(5/24)(x 2)3 (17/12)(x 4)+(8/3)(x 2),x2,4(5/24)(x 6)3 (29/48)(x 4)3 (8/3)(x 6)+(107/12)(x 4),x4,6 19