资源描述:
《《专业综合训练》》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、《专业综合训练》结课论文班级:统计1001班学号:20102380姓名:蔡静学院:理学院用样条插值获得数值点一、数据来源及说明木模块程序演示如何获取使用样木插值方法在SASTML命令的基础上得出插值函数,得到更多的样本点。本例中给出x的取值分别为1、2、3、4、5、6、7、8,y的取值为4、9、20、25、1、5、-4、12;通过样条插值方法可得出y关于x的函数(此程序采用的是三次样条插值,即用三次多项式來拟合),即可拟合该数据;二、理论方法分段插值的优点:计算简单、稳定性好、收敛性冇保证月•易在计算机上实现;缺点:它只能保证各小段
2、曲线在连接点的连续性,却无法保证整条曲线的光滑性,这就不能满足某些工程技术的要求。三次Hermit插值优点:有较好的光滑性;缺点:要求节点的一阶导数已知。从20世纪60年代开始,首先由于航空、造船等工程设计的需耍而发展起来所谓样条(Spline)插值方法,既保留了分段低次插值多项式的各种优点,又提高了插值函数的光滑性。今天,样条插值方法已成为数值逼近的一个极其重要的分支,在许多领域里得到越来越多广泛应用。下面介绍应用最广的具二阶连续导数的三次样条插值函数。1)三次样条插值函数的定义:给定区间[。,方]上的n个节点d=兀()V兀]V•
3、••v£=b和这些点上的函数值/(x.)=y^i=0,1,••・,〃)若S(x)满足:(1)S3)=x(i=0,l,2,・・・‘);(2)在每个小区间[d,b]上至多是一个三次多项式;(3)S(x),S©),S"(x)在[o,b]上连续。则称s(%)为函数/(兀)关于节点的兀0,E三次样条插值函数。2)边界问题的捉岀与类型单靠一个函数表是不能完全构造出一个三次样条插值函数。我们分析一下其条件个数,条件(2)三次样条插值函数S(Q是一个分段三次多项式,若用表示它在第/个了区间[兀i,兀]上的表达式,则S/Cx)形如Sj(x)=aiQ+
4、ad+ai2x^+ai3x',xe[兀“,x(]其中有四个待定系数知•(丿=0,l,2,3),子区间共有斤个,所以S(x)共有物个待定系数。由条件(3)S(x),S'(x),S"(Q在[a,切上连续,即它们在各个子区间上的连接点“),“,・・・,£-1上连续即可,共有4(/1-1)个条件,即s(兀_0)=S(X,.+0)(/=1,2,_1)Sz(x,-0)=S©+0)(/=1,2,・・・,/?—1)*Sx,-0)=S©+0)(/=1,2,…—1)Sa)=x(i=0,l,2・・・,“)共有3(n-l)4-n+l=4n-2个条件,未知
5、量的个数是4n个,这样需要加2个条件。这两个条件通常在插值区间[a,6的边界点a,b处给出,称为边界条件。边界条件的类型很多,常见冇:(1)给定一阶导数值SxQ)=$(£)=元;⑵给定一•阶导数值S"(x())=£,S"(X)=£;(特别地S"(兀())=0,S"(£)=0吋称为B然边界条件,满足白然边界条件的次样条插值函数称为H然样条插值函数)(3)当y=f(x)是周期为b-a的函数时,要求S(x)及其导数都是以b-a为周期的函数,相应的边界条件为:SxQ+0)=Sxn-0)』"(兀。+0)=Sxn-0)注:1.由/(兀)
6、是周期函数儿=儿,必有S(兀o+O)=S(£—O)。2.虽然可利用边界条件及方程组可求出待定系数^.(7=0,1,2,3),从而得到三次样条插值两数S(x)在各个了区间[兀I,兀]的表达式S,(Q但计算量过大,一般采用三弯方法:设S"a)=M,(20,l,2,・・・‘)因为在子区间[兀十兀]上S(x)=S,(x)是不高于三次的多项式,其二阶导数S"CO必是线性函数,所以Sfi»=AA/+MxXX'~x,xg
7、x;._j,x.召t一兀兀一Xi设h.=x.-,则冇〃、x—xX—x・(.S,(兀)=亠—+Mi—,xg
8、心],兀]连续二次
9、积分得:s,⑴=町耳空+Mi+A,(x-%,.,)+Bj6/1.6/耳其中A,Bt是积分常数,利用插值条件Si(xiJ=yi^.Si(xi)=yi,带入(3)中得:Bi=X-i带入(3),整理得:S©)二町区兀)+他•1£虫+(牙•厂仏甲)g+(吒/2)亠6/?z‘6/?zz6/人儿6/hjg[石十兀];i=l,2,…力)从而只要确定M(),M…Mn这〃+1个未知数,即可定出三次样条插值函数S(兀)o根据S)(x)(z=0,1,・・・昇2—1)的连续条件,即:S,(x/—0)=Sxj—0)等同于:S:a—0)=5;](兀+0),(
10、*)ill(4)得5;(x)=-M.](兀_兀尸+M,(兀_2(m_M”J(5)八/_,2/?,’2人人6zi所以s’©_o)=儿—儿Am:(6)八’ht6I3‘将⑸式中的iTi+1,得Sx)在子区间[x,x+]]±的表达式为S;⑴