計算方法課件4_第1頁
計算方法課件4_第2頁
計算方法課件4_第3頁
計算方法課件4_第4頁
計算方法課件4_第5頁
已閱讀5頁,還剩130頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第4章插值方法三、Newton插值五、分段低次插值一、插值多項式及存在唯一性二、Lagrange插值四、Hermite插值本章要求1.熟練掌握拉格朗日插值、牛頓插值的基本思想與誤差估計;2.掌握分段低次插值的概念算法;3.掌握三次樣條插值及其算法的計算機實現(xiàn);重點:多項式插值與誤差估計、三次樣條算法的計算機實現(xiàn)。插值問題的背景

能否存在一個性能優(yōu)良、便于計算的函數(shù)------(1)這就是插值問題,(1)式為插值條件,其插值函數(shù)的圖象如圖整體誤差的大小反映了插值函數(shù)的好壞為了使插值函數(shù)更方便在計算機上運算,一般插值函數(shù)都使用代數(shù)多項式和有理函數(shù)本章討論的就是代數(shù)插值多項式插值多項式存在唯一性

定理證明:其系數(shù)行列式是Vandermonde行列式,故于是方程組有唯一解,即滿足(1)式的多項式存在且唯一。(一)線性插值給定兩個點(x0,y0),(x1,y1),x0≠x1,確定一個一次多項式插值函數(shù),簡稱線性插值。待定系數(shù)法設

L1(x)=a0+a1x,代入插值點當x0≠x1時,方程組的解存在唯一。即插值條件:L1(xi)=f(xi)=yi,i=0,1Lagrange插值就是選用節(jié)點上的函數(shù)值作為插值條件,選用代數(shù)多項式作為插值函數(shù)。

Lagrange插值解之得,因此,(2)式稱為一次Lagrange插值。注:由求解過程知,用待定系數(shù)法,需要求解線性方程組,當已知節(jié)點較多時,即方程的未知數(shù)多,計算量較大,不便向高階插值推廣。------(2)插值基函數(shù)法分別構造兩個節(jié)點上的一次函數(shù),使其在本節(jié)點上的函數(shù)值為1,而在其他節(jié)點上的函數(shù)值為0。設l0(x),l1(x)分別為滿足上述條件的一次函數(shù),即

或簡單地記為對于過兩個節(jié)點x0,x1的線性插值(2)式,令顯然,l0(x),l1(x)

滿足:

線性插值函數(shù)可以寫成節(jié)點上函數(shù)值的線性組合,即L1(x)=l0(x)y0+l1(x)y1

稱l0(x),l1(x)

分別為x0,x1的插值基函數(shù)。滿足插值條件:L1(xi)=yi

,i=0,1線性插值的誤差定理4.1.1設L1(x)為一次Lagrange插值函數(shù),若

f

(x)一階連續(xù)可導,f"(x)在(a,b)上存在,則對任意給定的x∈(a,b),至少存在一點ζ∈(a,b),使得證明

因為L(xi)=f(xi),i=0,1,所以,R1(x0)=R1(x1)=0,

x0,x1為R1(x)的兩個根。因此,可設R1(x)為固定任一

x,作輔助函數(shù),令R1(x)=k(x)(x-x0)(x-x1).則Ψ

(xi

)=0,i=0,1,Ψ

(x)=0,即Ψ

(t)有3個零點x0,x1,x假定,x0

<x<

x1,分別在[x0,x]和[x,x1]上應用洛爾(Rolle)定理,可知,Ψ′(t)在每個區(qū)間上至少存在一個零點,ζ1,ζ2,使Ψ′(ζ1)=0,Ψ′(ζ2)=0(此即Ψ′(t)有2個零點)。再利用洛爾定理知,Ψ′(t)在[ζ1,ζ2]上至少有一個零點ζ,使Ψ″(ζ)=0.

對Ψ

(t)求2階導數(shù)得,Ψ″(t)=f″(t)-2!k(x),因為Ψ″(ζ)=0,所以,有

k(x)=f″(ζ)/2!.證畢。給定3個互異插值點(xi,f(xi)),i=0,1,2,確定一個二次插值多項式函數(shù),即拋物線插值(如圖)。待定系數(shù)法設L2(x)=a0+a1x+a2x2,代入3個插值條件:

L2(xi)=f(xi),i=0,1,2,解線性方程組可得a0,a1,a2.(二)二次插值插值基函數(shù)法構造3個節(jié)點上2次插值基函數(shù)l0(x),l1(x),l2(x),使?jié)M足

li(xj)=δij

,i,j=0,1,2。因為l0(x)為2次插值基函數(shù),且l0(x1)=l0(x2)=0,所以可設

l0(x)=A(x

-x1)(x-x2)由條件:l0(x0)=1,得同理可得,二次Lagrange插值多項式為容易驗證滿足插值條件二次插值的誤差定理4.1.2

設L2(x)為二次Lagrange插值函數(shù),若f

(x)∈C3[a,b],

則任給x∈(a,b),至少存在一點ζ=ζ(x)∈(a,b),使提示:因為R2(x0)=R2(x1)=R2(x2)=0,可設作輔助函數(shù)易知,x0,x1,x2,x為Ψ(t)的4個零點,在4個點兩兩組成的區(qū)間上,應用Rolle定理,然后再反復應用Rolle定理即得證。例4.1.1

給定sin11°=0.190809,sin12°=0.207912,求線性插值,并計算sin11°30'和sin10°30'

。解

x0=11°,x1=12°,y0=0.190809,y1=0.207912,sin11°30'≈L1(11.5)=0.199361,sin10°30'≈L1(10.5)=0.182258準確值為:sin11°30’=0.199368sin10°30’=0.182236由定理知,誤差為例4.1.2

給定sin11°=0.190809,sin12°=0.207912,

sin13°=0.224951,構造二次插值,并計算

sin11°30′。解

x0=11,x1=12,x2=13,

y0=0.190809,y1=0.207912,y2=0.224951,sin11°30′≈L2(11.5)=0.199369,

sin11°30′=0.199368.例4.1.3

要制作三角函數(shù)sinx的值表,已知表值有四位小數(shù),要求用線性插值引起的截斷誤差不超過表值的舍入誤差,試確定其最大允許的步長。解

f(x)=sinx,

設xi-1,xi為任意兩個插值節(jié)點,最大允許步長記為

h=hi=xi

-xi-1,(三)n次插值已知n+1個互異插值節(jié)點

(xi,f(xi)),i=0,1,2,…,n,研究n次插值多項式的存在性及其表示形式。存在性:待定系數(shù)法設

n次多項式為------(3)代入插值點,即插值條件:Ln

(xi)=f(xi),i=0,1,2,…,n,得------(4)其范德蒙德(Vandermonde)行列式為:所以,(4)的解存在唯一。解出(4)的解a0,a1,…,an,代入(3)即得n次插值多項式Ln(x)。

n次插值多項式的構造:插值基函數(shù)法雖然方程組(4)的解存在唯一,但用待定系數(shù)法求插值多項式卻不是好方法,其計算量大,實際中不可取。根據(jù)線性空間的理論并且形式不是唯一的且在不同的基底下有不同的形式分別構造x0,x1,…,xn

上的n次插值基函數(shù)l0(x),l1(x),…,ln(x),滿足性質:即節(jié)點基函數(shù)x0x1x2…xnl0(x)100…0l1(x)010…0l2(x)001…0………………ln(x)000…1先構造l0(x)。由上表知,x1,x2,…,xn

為l0(x)的零點,設

由l0(x0)=1,得同理可設由li

(xi)=1,得于是可得,基函數(shù)為所以我們得到n次Lagrange插值多項式:

容易驗證,

Ln(xi)=f(xi),i=0,1,2,…,n.基函數(shù)僅與節(jié)點有關,而與被插函數(shù)無關!從而基函數(shù)可等價地寫成因此n次Lagrange插值多項式還可表示成例4.1.4

已知插值點

(-2.00,17.00),(0.00,1.00),(1.00,2.00),(2.00,17.00),

求三次插值,并計算f(0.6)。解先計算4個節(jié)點上的基函數(shù):三次Lagrange插值多項式為:

f(0.6)≈L3(0.6)=-0.472.

n次插值多項式的誤差定理4.1.3

設Ln(x)是[a,b]上過插值點(xi,f(xi)),i=0,1,2,…,n的n次Lagrange插值多項式,節(jié)點xi兩兩互異,若f(x)∈Cn+1[a,b],則?x∈[a,b],存在ζ=ζ(x)∈[a,b],使得證明提示:因為Rn(xi)=0,i=0,1,2,…,n,令作輔助函數(shù)顯然,Ψ

(t)有n+2個零點x0,x1,…,xn,x,反復應用Rolle

定理,有Ψ

(n+1)(ζ)=0,定理得證。

n次插值多項式的幾點說明若|f(n+1)(x)|≤M,x∈[a,b],則得當f(x)為不高于n次的多項式時,因為Rn(x)=0,則

Ln(x)=f(x).即f(x)為不超過n次的多項式時,插值多項式就是被插函數(shù)本身特別地,取f(x)=xk,k=0,1,2,…,n,則即n次Lagrange基函數(shù){li(x)}滿足從角度觀察,內插(即)誤差要小些,而外插有可能誤差變大,因此要慎用。高次插值通常優(yōu)于低次插值,但絕對不是次數(shù)越高就越好。例4.1.5解Lagrange插值基函數(shù)為Lagrange線性插值多項式為所以又所以由于且所以由于解例4.1.6在實際當中,由于誤差余項往往難于估計,一般不能事先確定插值函數(shù)的次數(shù)。通常的做法是:從低階到高階逐次進行插值,直至達到所需精度。見書P123-124

用Matlab作Lagrange插值Matlab中沒有現(xiàn)成的Lagrange插值函數(shù),必須編寫一個M文件實現(xiàn)Lagrange插值。輸入設個插值點以數(shù)組個節(jié)點數(shù)據(jù)以數(shù)組輸入,輸出數(shù)組為(注意Matlat的數(shù)組下標從1開始),個插值。編寫一個名為lagrange.m的M文件:functiony=lagrange(x0,y0,x);n=length(x0);m=length(x);fori=1:mz=x(i);s=0.0;

fork=1:np=1.0;

forj=1:n

ifj~=kp=p*(z-x0(j))/(x0(k)-x0(j));

end

ends=p*y0(k)+s;

end

y(i)=s;end解例4.1.7并作圖比較.不同次數(shù)的Lagrange插值多項式的比較圖Runge現(xiàn)象結果表明,并不是插值多項式的次數(shù)越高,插值效果越好,精度也不一定是隨次數(shù)的提高而升高,這種現(xiàn)象在上個世紀初由Runge發(fā)現(xiàn),故稱為Runge現(xiàn)象.為了提高精度有時需增加結點,但這時原來求的全改變,也就是原來的基函數(shù)不能利用,浪費資源。

Langrange插值的不足改進:在從低次到高次逐次進行計算時,利用已經計算出來的值簡化計算。

逐次線性插值(不用求基函數(shù))證明定理4.1.4而在計算函數(shù)值時,可根據(jù)上述定理的公式遞推計算。計算過程可按下述兩個表格之一進行。

Aitken逐次線性插值計算公式為:從表中看到,每增加一個節(jié)點就計算一行,斜線上兩相鄰數(shù)值之差的大小可以用來度量插值的精度。如果精度不滿足要求,則再增加一個節(jié)點并計算新的一行。

Neville逐次線性插值計算公式為:1.00.7651977

|y0,…,k-y0,…,k-1|1.30.62008600.52334490.24185281.60.45540220.51029680.51247150.00087341.90.28181860.51326340.51128570.51181270.00065882.20.11036230.51042700.51373690.51183020.51182000.0000073解例4.1.8將計算結果列表如下:

Lagrange插值的優(yōu)缺點

優(yōu)點:形式整齊、規(guī)范,理論上保證插值的存在唯一性。

缺點:計算量大,重復計算多,不具有承襲性。由線性代數(shù)的知識可知,任何一個n次多項式都可以表示成共n+1個多項式的線性組合。那么,是否可以將這n+1個多項式作為插值基函數(shù)呢?

Newton插值顯然,多項式組線性無關,因此,可以作為插值基函數(shù)。因此,每加一個節(jié)點時,只附加一項上去即可。有再繼續(xù)下去待定系數(shù)的形式將更復雜一階差商:f(x)關于點x0,x1的一階差商記為f[x0,x1],一、差商及其性質二階差商:f(x)關于點x0,x1,x2的二階差商記為f[x0,x1,x2],一般地,k階差商f[x0,x1,…,xk]

定義為:

性質1

k階差商f[x0,x1,…,xk]可表成節(jié)點上函數(shù)值f(x0),

f(x1),…,f(xk)的線性組合,即

例如,k=2時,差商的性質性質2

各階差商具有對稱性,即改變差商中節(jié)點的次序不會

改變差商的值。設i0,i1,…,ik為0,1,…,k的任一排列,則

由性質1知,任意改變節(jié)點的次序,只改變公式右端求和的次序,故其值不變。例如,由定義知,性質3

若f(x)為n次多項式,則一階差商f[x,xi]為n

?1次多項式。由定義性質4若f(x)在[a,b]存在n+1階導數(shù),xi∈[a,b],

i=0,1,…,n,固定x∈[a,b],則n+1

階差商與導數(shù)

存在如下關系:

令x=xi,則分子為0,說明分子中含有因子x

?

xi,與分母約去。由差商的定義

一階差商是由節(jié)點上函數(shù)值定義的,二階差商是由一階差商定義的,…,依此構造差商表:i

xif(xi)一階差商二階差商

三階差商

…n階差商0

x0f(x0)1

x1f(x1)f[x0,x1]2

x2f(x2)f[x1,x2]f[x0,x1,x2]3

x3f(x3)f[x2,x3]f[x1,x2,x3]f[x0,x1,x2,x3]………………n

xn

f(xn)f[xn

?1,xn]f[xn

?2,xn

?1,xn]f[xn

?3,…,xn]…

f[x0,x1,…,xn]差商的計算例

計算(?2,17),(0,1),(1,2),(2,19)的一至三階差商。解

由表易知,

i

xif(xi)f[xi

?1,xi]f[xi

?2,xi

?1,xi]f[xi

?3,xi

?2,xi

?1,xi]0

?2

171

012

123

219f[x0,x1]=f[?2,0]=(17-1)/(-2-0)=?8f[x1,x2]=f[0,1]=(1-2)/(0-1)=1

f[x2,x3]=f[1,2]=(2-19)/(1-2)=17f[x0,x1,x2]=f[?2,0,1]=(?8?1)/(?2?1)=3f[x1,x2,x3]=f[0,1,2]=(1?17)/(0?2)=8

f[x0,x1,x2,x3]=f[?2,0,1,2]=(3?8)/(?2?2)=5/4?8117385/4解

例對

f(x)=x7?x4+3x+1,

f[20,21],f[x,20,21,…,26]和f[x,20,21,…,27]。利用差商與導數(shù)的關系(性質4)!顯然,

f(7)

(x)=7!,f(8)

(x)=0,由性質4得二、Newton插值線性插值給定兩個插值點(x0,f(x0)),(x1,f(x1)),x0≠x1,設

N1(x)=a0+a1(x?x0)…………

直線的點斜式代入插值點得,由插值的唯一性知,L1(x)與N1(x)為同一多項式,只是表達形式不同而已。于是得線性Newton插值公式二次Newton插值給定三個互異插值點(xi,

f(xi)),i=0,1,2.設代入插值條件:N2(xi)=f(xi),i=0,1,2,得二次Newton插值公式為

n次Newton插值公式給定n+1個插值點(xi,f(xi)),i=0,1,2,…,n,xi互異,類似地,由二階至n階差商的定義得上述所有n+1個等式相加,得n次Newton插值公式其中,插值誤差為:容易驗證,Newton插值滿足插值條件:

Nn(xi)=f(xi),i=0,1,2,…,n.關于Lagrange插值和Newton插值的幾點說明1.由插值的唯一性,Ln(x)=Nn(x)。因此,Newton插值是Lagrange插值的另一種表示形式。他們的誤差也相同,即當f(x)∈Cn+1[a,b]時,有故得差商的性質42.

牛頓插值的誤差不要求函數(shù)的高階導數(shù)存在,所以更具有一般性。它對f(x)是由離散點給出的函數(shù)情形或f(x)的導數(shù)不存在的情形均適用。3.引入記號:

f[x0]=f(x0),t0(x)=1,t1(x)=x?x0,t2(x)=(x?

x0)(x?

x1),…,tn(x)=(x?

x0)(x?

x1)…(x?

xn?1),于是n次Newton插值公式可表為稱t0(x),t1(x),t2(x),…,

tn(x)為Newton插值的基函數(shù),而且滿足如下關系:

ti(x)=ti?1(x)(x?xi?1),i=1,2,…,n;

ti(xj)=0,j<i,

ti(xj)≠0,j≥i.4.

Newton插值具有承襲性質,即第i個節(jié)點以后非零5.Newton插值公式的計算量

乘(Nn(x)的公式):1+2+…+(n?1)+n=n(n+1)/2

除(計算差商表):1+2+…+(n?1)+n=n(n+1)/2因此,當增加一個節(jié)點時,只需在差商表中再新計算一行。但是,如果將Nn(x)改寫成秦九韶格式,則僅需次乘除法運算,比逐次線性插值還少一半。例

給定四個插值點(?2,17),(0,1),(1,2),(2,19),計算N2(0.9),N3(0.9)。解首先列差商表i

xif(xi)f[xi

?1,xi]f[xi

?2,xi

?1,xi]f[xi

?3,xi

?2,xi

?1,xi]0

?2

171

01-82

12133

2191785/4所以,N2(0.9)=17?8(0.9+2)+3(0.9+2)×0.9=1.63;N3(0.9)=N2(0.9)+1.25×0.9(0.9+2)(0.9?1)=1.30375.

Newton插值的算法用牛頓插值公式,首先要計算各階差商值,然后再計算插值。牛頓插值由承襲性質容易實現(xiàn),關鍵是實現(xiàn)差商。(1).輸入初始數(shù)據(jù):節(jié)點數(shù)n+1,插值點序列{xi,f(xi)},i=0,1,2,…,n,及要計算的函數(shù)點u;(2).形成差商表

g[k],k=0,1,…,n;(g[k]=f[x0,…,xk])(3).形成插值基函數(shù)及插值

t=1,newton=f(x0)

對i=1,2,…,nt=t(u?xi?1);(由tk=tk

?

1

(u?xk?1)形成(u?x0)…

(u?xi?1)

)

newton=newton+tg[i](4).輸出牛頓插值Nn(u)=newton。牛頓插值公式中只用到差商表中對角線上的差商,即

f[x0],

f[x0,x1],f[x0,x1,x2],…,f[x0,x1,…,xn].

可以分別用一維數(shù)組g[i]來存放這些差商,i=0,1,2,…,n.形成差商具體步驟:(1)對g[i]初始化,即g[i]=f(i),i=0,1,2,…,n.(2)除了g[0](即f(x0))以外,其余函數(shù)值在計算一階差商后不再使用,因此可用來存放一階差商,即

g[j]=f[xj

?1,xj],j=n,n?1,…,2,1(3)類似地,計算二階差商后,除g[1]=f[x0,x1]外,其余一階差商也不再使用,可用g[j]存放二階差商f[xj

?2,

xj

?1,

xj],

即g[j]=f[xj

?2,

xj

?1,

xj],j=n,n?1,…,2,…(4)最后,g[n]=f[x0,

x1,

…,xn].計算差商算法fori=0tong[i]=f(xi)fork=1tonforj=ntokg[j]=(g[j]–g[j?1])/(xj?

xj

?k)例解首先列差商表xif[xi]f[xi

?1,xi]f[xi

?2,xi

?1,xi]f[xi

?3,…,xi]f[xi

?4,…,xi]1.01.31.61.92.20.76519770.6200860-0.48370570.4554022-0.5489460-0.10873390.2818686-0.5786120-0.04944330.06587840.1103623-0.5715210-0.01181830.06806850.00182511.50.5118200-0.5735110-0.00497500.06843300.0018225-0.0000052從而所求插值多項式為如果將插值點x=1.5添入表內,并令N4(1.5)≈f(1.5),在Newton差商表中新計算一行??蓪⒆詈笠粋€數(shù)值作為f[1.0,1.3,…,2.2,1.5]的近似,得到公式誤差的一個近似估計:三、差分及其性質一般地,m階差分定義為1.

線性性質,例如差分的重要性質2.

若f(x)

是m次多項式,則3.差分值可由函數(shù)值算出,即函數(shù)值可由差分值算出,即由Rn

(x)的表達式得4.各階差分之間有如下關系5.差商和差分有如下關系函數(shù)的差分可以列成如下向前差分、向后差分和中心差分表向前差分、向后差分表中心差分表四、等距節(jié)點Newton插值由差商與向前差分的關系Newton插值基本公式為如果假設1.Newton前插公式

則插值公式化為其余項化為稱為Newton前插公式插值余項為根據(jù)向前差分和向后差分的關系如果假設2.Newton后插公式插值余項為可得Newton后插公式一般地,計算x0附近的函數(shù)值用前插公式,計算

xn附近的函數(shù)值用后插公式。但是Newton插值仍然沒有改變Lagrange插值的插值曲線在節(jié)點處有尖點,不光滑,插值多項式在節(jié)點處不可導等缺點。Newton插值法的優(yōu)點是計算較簡單,尤其是增加節(jié)點時,計算只要增加一項,這是Lagrange插值無法比的。

Newton插值和Lagrange插值雖然構造比較簡單,插值函數(shù)連續(xù),但都存在插值曲線在節(jié)點處有尖點,不光滑,插值多項式在節(jié)點處不可導等缺點。不少實際問題不但要求在節(jié)點上函數(shù)值相等,而且還要求它的導數(shù)值也相等(即要求在節(jié)點上具有一階光滑度),甚至要求高階導數(shù)也相等,滿足這種要求的插值多項式就是埃爾米特(Hermite)插值多項式。下面只討論函數(shù)值與導數(shù)值個數(shù)相等的情況。

則稱H2n+1(x)為函數(shù)

y=f(x)的2n+1次Hermite插值多項式。

Hermite插值問題:三次Hermite插值多項式當n=1時,H3(x)為三次Hermite(埃爾米特)插值多項式。

設函數(shù)在2個節(jié)點處的函數(shù)值為,導數(shù)值為求一個函數(shù),使其滿足:根據(jù)未知數(shù)個數(shù)與方程個數(shù)之間的關系,以上4個方程可以確定4個未知數(shù);而三次多項式正好有四個待定系數(shù);因此考慮用三次多項式作為插值函數(shù)。三次Hermite插值多項式的構造可見書P136.

Hermite插值的構造——插值基函數(shù)法滿足給定

n+1個節(jié)點

x0,x1,…,xn

上的函數(shù)值

yi

和導數(shù)值

y'i

,可以構造

2n+1次Hermite插值多項式其中,hi(x),gi(x)分別為對應于函數(shù)值和導數(shù)值的不高于

2n+1次插值基函數(shù),它們滿足下面我們推導基函數(shù)的具體表達式因此Hermite插值的誤差估計:

f(x)∈C2n+2[a,b]時,存在ζ∈(a,b),使對于特殊情形n=1,由于得兩點三次Hermite插值多項式及其余項解方法一

:由二點三次Hermite插值公式得所以與真值相比已有三位有小數(shù)字。方法二:直接用待定系數(shù)法求

由此可解得于是例4.3.2

求滿足及的插值多項式及其余項表達式。解由給定條件,可確定次數(shù)不超過3的插值多項式。由于此多項式通過點

及,故其形式為其中A為待定常數(shù),可由條件確定,通過計算可得其中為待定函數(shù)。構造為了求出余項的表達式,可設顯然且故在內有5個零點(重根算兩個)。反復應用羅爾定理,得在內至少有一個零點,故于是余項表達式為式中位于和所界定的范圍內。用插值基函數(shù)法求Hermite插值多項式的基本步驟例4.3.3

給定

f(0)=1,f(1)=2,f'(0)=2,構造二次插值函數(shù)。解令

m1=0,得到二次Hermite插值函數(shù)

P2(x)

=?x2+2x+1.設f'(1)=m1,由三次Hermite插值公式得,(1)公式法

(2)插值基函數(shù)法設節(jié)點

x0上的二次基函數(shù)為t0(x),g0(x),節(jié)點

x1上的二次基函數(shù)為t1(x),它們滿足由t0(x0)=1,即

b(0?1)=1,得

b=?1。由t'0(x0)=0,即

a(0?1)+a.0+b=0,得

a=?1。所以

(3)擴展牛頓法(帶重節(jié)點差商)

寫成差商表的形式,將帶導數(shù)的節(jié)點X0及其上的函數(shù)值重復一遍,無導數(shù)的節(jié)點X1不重復,即

x

f(x)f'(x)

x001

x1012

X1

x212

1?1

擴展牛頓法—用牛頓差商表(重節(jié)點差商)構造Hermite插值給定插值點

(xi,f(xi),f'(xi)),i=0,1,2,…,n,重新定義插值節(jié)點序列:

z2i=z2i+1=xi,

i=0,1,2,…,n,

以偶數(shù)節(jié)點開始以奇數(shù)節(jié)點開始重節(jié)點差商定義:函數(shù)值取相應節(jié)點上的函數(shù)值,即

f(z2i)

=f(z2i+1)

=f(xi),i=0,1,2,…,n;對于一階差商,二階以后的各階差商,直接按差商公式計算。由此得到差商型Hermite插值公式:差商表:

z

f(z)f[zi,zj]例4.3.4

已知

計算

f(1.36)。解

x

f(x)f

'(x)1.20.61.20.61.40.91.40.9

1.61.11.51.05?41.5?4555/41175/80.50.7例4.3.5

已知

計算插值多項式。解

x

f(x)f

'(x)-100-40-40-4

1-21-2046/2-122

-10-4053

1

2

1據(jù)此差商表可得插值多項式分段低次插值問題的提出 在區(qū)間[a,b]上用插值多項式P逼近函數(shù)f時,f和P在每個節(jié)點上的差異(理論上)應該為零。自然,我們期望在一切中間點上也能很好地逼近f,并且當插值點增加時這種逼近效果應該越來越好。 但上述的期望不可能實現(xiàn)的。當認識到這一點時,在數(shù)學界曾引起強烈的震動。反例狄里克萊(Dirichlet)函數(shù)如果取插值節(jié)點為有理數(shù)時:如果取插值節(jié)點為無理數(shù)時:插值多項式P的圖象如下:(逼近函數(shù)效果極差)高次插值的病態(tài)性質:對于一個確定的區(qū)間,如果插值節(jié)點之間的距離較小,自然插值節(jié)點就增多,如果用一個多項式插值,自然次數(shù)就會升高,也就是說要用高次多項式插值。但不是次數(shù)越高,插值多項式的逼近效果越好!20世紀初,Runge就給出了一個等距節(jié)點插值多項式不收斂的例子。因此,既要增加插值結點,減小插值區(qū)間,又要不增加插值多項式的次數(shù)以減少誤差,我們可以采用分段插值的辦法。

一、分段線性Lagrange插值構造Lagrange線性插值1.分段線性插值的構造設插值節(jié)點為xi,函數(shù)值為yi,i=0,1,2,……,nhi=xi+1-xi,i=0,1,2,……,n-1,任取兩個相鄰的節(jié)點xk,xk+1,形成一個插值區(qū)間[xk,xk+1],k=0,1,2,…,n-1顯然我們稱由上式構成的插值多項式L1(x)為分段線性Lagrange插值多項式。i=0,1,2,…,n內插外插外插由前述余項定理可知,n次Lagrange插值多項式的余項為:2.分段線性插值的誤差估計則分段線性插值L1(x)的余項為例

已知函數(shù)在區(qū)間[0,5]上取等距插值節(jié)點(如下表),求區(qū)間上分段線性插值函數(shù),并利用它求出近似值。xi012345yi10.50.20.10.058820.03846解:

在每個分段區(qū)間上,于是,實際值:當n=7時,

P(4.5)=0.04762270321996當n=10時,P(4.5)=0.04705882352941由此可見,對于光滑性要求不高的插值問題,分段線性插值的效果非常好!計算也簡單!0.04705882352941故也稱折線插值,如右圖:但曲線的光滑性較差,且在節(jié)點處有尖點。

YX1x0x1x2xn-1xnn如果增加節(jié)點的數(shù)量,減小步長,會改善插值效果。二、分段二次Lagrange插值1.分段二次插值的構造設插值節(jié)點為xi,函數(shù)值為yi,i=0,1,2,……,nhi=xi+1-xi,i=0,1,2,……,n-1,任取三個相鄰的節(jié)點xk-1,xk,xk+1,以

[xk-1,xk+1]為插值區(qū)間構造二次Langrange插值多項式:2.分段二次插值的誤差估計由于那么分段二次插值L2(x)的余項為:例:解:(1).分段線性Lagrange插值的公式為同理(2).分段二次Lagrange插值的公式為在以上的插值問題中,如果除了要求在插值節(jié)點的函數(shù)值給定外,還要求在節(jié)點處的導數(shù)值為給定值,即插值問題變?yōu)椋簡栴}:設函數(shù)在處的函數(shù)值為,導數(shù)值為個節(jié)點要求:求一個分段(共段)線性函數(shù),使其滿足:三、分段三次Hermite插值相當于再每一小段上應滿足四個條件(方程),可以確定四個待定參數(shù)。三次多項式正好有四個系數(shù),所以可以考慮用三次多項式函數(shù)作為插值函數(shù),這就是所謂的分段三次埃爾米特插值,與分段線性插值一起都稱為分段多項式插值。

設節(jié)點x0<x1<…<xn,分段插值函數(shù)Hn

(x)在兩個相鄰節(jié)點構成的小區(qū)間[xj

,xj+1](j=0,1,…n-1)上滿足條件:用三次Hermite插值,當x[xj

,xj+1

]時,有其中四、三次樣條插值

高次插值函數(shù)可以保證曲線的光滑性,但計算量大,有劇烈振蕩,數(shù)值穩(wěn)定性差;而分段線性插值在分段點上僅連續(xù)而不光滑(導數(shù)不連續(xù)),這往往不能滿足工程設計的需要。樣條函數(shù)可以同時解決這兩個問題,使插值函數(shù)既是低階分段函數(shù),又是光滑的函數(shù)。樣條:是指飛機或輪船等的制造過程中為描繪出光滑的外形曲線(放樣)所用的工具。樣條本質上是一段一段的三次多項式拼合而成的曲線,在拼接處,不僅函數(shù)是連續(xù)的,且一階和二階導數(shù)也是連續(xù)的。1946年,Schoenberg將樣條引入數(shù)學,即所謂的樣條函數(shù)。三次樣條插值函數(shù)的定義定義:給定區(qū)間[a,b]上的一個劃分:a=x0<x1<…<xn=b,已知函數(shù)f(x)在點xj上的函數(shù)值為 f(xj)=

yj,(j=0,1,2,···,n)如果存在分段函數(shù)滿足下述條件:(1)S(x)在每一個子區(qū)間[xj-1,xj

](j=0,1,2,···,n)上是一個三次多項式;(2)S(x)在每一個內接點xj

(j=0,1,2,···,n)上具有直到二階的連續(xù)導數(shù);則稱S(x)為節(jié)點x0,x1,…,xn

上的三次樣條函數(shù)。若S(x)在節(jié)點x0,x1,…,xn

上還滿足插值條件:(3)S(xj)=yj

(j=0,1,2,···,n)則稱S(x)為三次樣條插值函數(shù)。(即全部通過樣點的二階連續(xù)可微的分段三次多項式函數(shù))三次樣條插值多項式的確定:由(1)知,S(x)在每一個小區(qū)間[xj-1

,xj

]上是一三次多項式,若記為Sj(x),則可設要確定函數(shù)S(x)的表達式,須確定4n個未知系數(shù){Aj,Bj,Cj,Dj}(j=1,2,…,n)。由(2)知,S(x),S′

(x),S″

(x)在內節(jié)點x1,x2,…,xn-1上連續(xù),則j=1,2,…,n-1可得3n-2個方程,又由條件(3)j=1,2,…,n得n+1個方程,共可得4n-2個方程。要確定4n個未知數(shù),還差兩個方程。通常在端點x0=a,xn=b處各附加一個條件,稱邊界條件.共4n個方程,可唯一地確定4n個未知數(shù)。給出邊界端點的一階導數(shù)值:三轉角邊界條件2.給出邊界端點的二階導數(shù)值:自然邊界條件三彎矩邊界條件特別的,周期邊界條件常用的邊界條件有三種類型:3.如果不知道,我們可以要求與在端點處近似相等。這時以為節(jié)點作一個三次Newton插值多項式以作一個三次Newton插值多項式,要求由這種邊界條件建立的三次樣條稱為的Lagrange三次樣條插值函數(shù)。補充:例已知f(x):f(-1)=1,f(0)=0,f(1)=1,求f(x)在[-1,1]上的三次自然樣條插值函數(shù)。解設由插值條件和函數(shù)連續(xù)條件得:由一階及二階導數(shù)連續(xù)得:由自然邊界條件得:聯(lián)立上面8個方程,求解得故三次樣條插值在Matlab中的實現(xiàn)在Matlab中數(shù)據(jù)點稱之為斷點。如果三次樣條插值沒有邊界條件,最常用的方法,就是采用非扭結(not-a-knot)條件。這個條件強迫第1個和第2個三次多項式的三階導數(shù)相等。對最后一個和倒數(shù)第2個三次多項式也做同樣地處理。Matlab中三次樣條插值也有現(xiàn)成的函數(shù):y=interp1(x0,y0,x,'spline');y=spline(x0,y0,x);pp=csape(x0,y0,conds),pp=csape(x0,y0,conds,valconds),y=ppval(pp,x)。其中x0,y0是已知數(shù)據(jù)點,x是插值點,y是插值點的函數(shù)值。對于三次樣條插值,我們提倡使用函數(shù)csape,csape的返回值是pp形式,要求插值點的函數(shù)值,必須調用函數(shù)ppval。pp=csape(x0,y0):使用默認的邊界條件,即Lagrange邊界條件。pp=csape(x0,y0,conds,valconds)中的conds指定插值的邊界條件,其值可為:'complete'

邊界為一階導數(shù),一階導數(shù)的值在valconds參數(shù)中給出,若忽略valconds參數(shù),則按缺省情況處理。'not-a-knot'

非扭結條件'periodic'

周期條件'second'

邊界為二階導數(shù),二階導數(shù)的值在valconds參數(shù)中給出,若忽略valconds參數(shù),二階導數(shù)的缺省值為[0,0]。'variational'

設置邊界的二階導數(shù)值為[0,0]。對于一些特殊的邊界條件,可以通過conds的一個矩陣來表示,conds元素的取值為0,1,2。conds(i)=j的含義是給定端點的階導數(shù),

即conds的第一個元素表示左邊界的條件,第二個元素表示右邊界的條件。詳細情況請使用幫助helpcsape。例

機床加工待加工零件的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論