4、下n-1個(gè)方程:常用的邊界條件有如下幾類:(1)給定區(qū)間兩端點(diǎn)的斜率m0,mn,即(2)給定區(qū)間兩端點(diǎn)的二階導(dǎo)數(shù)M0,Mn,即(3)假設(shè)y=f(x)是以b-a為周期的周期函數(shù),則要求三次樣條插值函數(shù)S(x)也為周期函數(shù),對(duì)S(x)加上周期條件對(duì)于第一類邊界條件有對(duì)于第二類邊界條件有其中那么解就可以為對(duì)于第三類邊界條件,,由此推得精彩文檔實(shí)用標(biāo)準(zhǔn)文案,其中,那么解就可以為:程序代碼:1拉格朗日插值函數(shù)Lang.mfunctionf=lang(X,Y,xi)%X為已知數(shù)據(jù)的橫坐標(biāo)%Y為已知數(shù)據(jù)的縱坐標(biāo)%xi插值點(diǎn)處的橫坐標(biāo)%f求得的拉格
5、朗日插值多項(xiàng)式的值n=length(X);f=0;fori=1:nl=1;forj=1:i-1l=l.*(xi-X(j))/(X(i)-X(j));end;forj=i+1:nl=l.*(xi-X(j))/(X(i)-X(j));end;%拉格朗日基函數(shù)f=f+l*Y(i);endfprintf('%d',f)return2牛頓插值函數(shù)newton.mfunctionf=newton(X,Y,xi)%X為已知數(shù)據(jù)的橫坐標(biāo)%Y為已知數(shù)據(jù)的縱坐標(biāo)%xi插值點(diǎn)處的橫坐標(biāo)精彩文檔實(shí)用標(biāo)準(zhǔn)文案%f求得的拉格朗日插值多項(xiàng)式的值n=lengt
6、h(X);newt=[X',Y'];%計(jì)算差商表forj=2:nfori=n:-1:1ifi>=jY(i)=(Y(i)-Y(i-1))/(X(i)-X(i-j+1));elseY(i)=0;endendnewt=[newt,Y'];end%計(jì)算牛頓插值f=newt(1,2);fori=2:nz=1;fork=1:i-1z=(xi-X(k))*z;endf=f+newt(i-1,i)*z;endfprintf('%d',f)return3三次樣條插值第一類邊界條件Threch.mfunctionS=Threch1(X,Y,dy0,
7、dyn,xi)%X為已知數(shù)據(jù)的橫坐標(biāo)%Y為已知數(shù)據(jù)的縱坐標(biāo)%xi插值點(diǎn)處的橫坐標(biāo)%S求得的三次樣條插值函數(shù)的值%dy0左端點(diǎn)處的一階導(dǎo)數(shù)%dyn右端點(diǎn)處的一階導(dǎo)數(shù)n=length(X)-1;d=zeros(n+1,1);h=zeros(1,n-1);f1=zeros(1,n-1);f2=zeros(1,n-2);fori=1:n%求函數(shù)的一階差商h(i)=X(i+1)-X(i);f1(i)=(Y(i+1)-Y(i))/h(i);endfori=2:n%求函數(shù)的二階差商f2(i)=(f1(i)-f1(i-1))/(X(i+1)-X(i
8、-1));精彩文檔實(shí)用標(biāo)準(zhǔn)文案d(i)=6*f2(i);endd(1)=6*(f1(1)-dy0)/h(1);d(n+1)=6*(dyn-f1(n-1))/h(n-1);%?賦初值A(chǔ)=zeros(n+1,n+1);B=zeros(1,