張 琪
(山西職業(yè)技術(shù)學(xué)院 基礎(chǔ)教學(xué)部,太原 030006)
波動方程是重要的一類偏微分方程,它是自然界中物質(zhì)波動現(xiàn)象的數(shù)量刻畫,如聲波、水波、光波、電磁波、沖擊波等[1]。波動方程的求解大致分2類,其一為求方程的精確解,揭示波傳播中某點(diǎn)的性質(zhì)與運(yùn)動狀態(tài)。鄭明等[2]采用第二類Chebyshev小波方法對波動方程進(jìn)行數(shù)值求解并獲得較好的精度,為Haar小波的數(shù)值求解提供解題思路。但是由于測量存在誤差,導(dǎo)致波動方程的精確解不能完整地反映實(shí)際問題[3]。因此,波動方程的研究轉(zhuǎn)向了另一個方向,即求方程的近似解(數(shù)值解),只要方程的近似解滿足實(shí)際問題的精度要求,數(shù)值解就賦予了現(xiàn)實(shí)的意義。許小勇等[4]利用移位的第一類Chebyshev多項(xiàng)式建立求解費(fèi)巨擘守恒條件下的波動方程數(shù)值解的方法,提高方程組轉(zhuǎn)化求解的精度。提高波動方程數(shù)值求解的精度是方程求解的目標(biāo),在數(shù)值求解方法中有三點(diǎn)中心差分法、譜方法、有限元法等[5]。本文在經(jīng)典的三點(diǎn)中心差分基礎(chǔ)上選用五點(diǎn)中心差分法,提高數(shù)值求解的精度,精度對于位置變量由二階提高到四階,該算法格式清晰,易迭代、易推廣、易理解。
三點(diǎn)中心差分法的基本思想是將求解區(qū)域網(wǎng)格化,在網(wǎng)格節(jié)點(diǎn)處,用有限個網(wǎng)格節(jié)點(diǎn)的函數(shù)值代替求解區(qū)域內(nèi)解函數(shù)的值,然后在網(wǎng)格節(jié)點(diǎn)上用差分方程的解近似代替微分方程的解,直接求解得出基本方程和相應(yīng)的定解條件的近似解。
1)三點(diǎn)中心差分方程原理
建立差分方程原理:利用有限差分法離散波動方程,方法多種多樣而且對于同一方程可以建立不同的差分方法,同一方法可用于不同的方程。
設(shè)波動方程為:
(1)
式中:0≤x,y≤1;a為t時刻的傳播速度;u(x,y,t)為在t時刻空間位置(x,y)點(diǎn)的位移;τ為時間步長;h為空間步長。網(wǎng)格點(diǎn)記為(xj,yk,tn),其中xj=jh,yk=kh,tn=nτ,k,j=0,1,…,N,h=1/N,n≥0。
在建立之前要用到泰勒展開式,f(x)在x0處展開時的表達(dá)式為:
(2)
2)三點(diǎn)中心差分算法推導(dǎo)過程
導(dǎo)數(shù)的差分近似可以通過式(2)來計算。
(3)
(4)
由式(2)和式(3)得:
(5)
(6)
(7)
(8)
由式(7)和式(8)得:
(9)
(10)
(11)
(12)
由式(11)和式(12)得:
(13)
(14)
(15)
則結(jié)合式(14)和式(15)得:
(16)
綜合式(6)和式(10)、式(16)得
(17)
取時間步長Δt=τ,空間步長Δx=Δy=h,則式(17)變?yōu)椋?/p>
(18)
式(18)即為三點(diǎn)中心差分方程的顯格式。
(19)
式中c1,c2,c3,c4,c5待定,將式(19)右端各項(xiàng)在x=jΔx處泰勒展開得:
ο(Δx6)。
(20)
ο(Δy6)。
(21)
(22)
(23)
由式(22)和式(23)得:
(24)
(25)
結(jié)合式(15)和式(25)得:
(26)
結(jié)合式(20)、式(21)和式(26)得:
(27)
取時間步長Δt=τ,空間步長Δx=Δy=h,則式(27)變?yōu)椋?/p>
(28)
式(28)則為五點(diǎn)中心差分方程的顯示格式。
因?yàn)樵擄@示差分格式的時間層是3層的,換句話說每個時間步推進(jìn)都需要知道前2個時間步的值[12]。
下面計算第1個時間步的值:
在式(28)中令n=0,則有
(29)
(30)
(31)
ν(xj,yk)τ。
(32)
在求解雙曲型微分方程時,通常先將方程離散化,在每一分割點(diǎn)處用鄰近點(diǎn)的函數(shù)值替代函數(shù)的導(dǎo)數(shù),把求解偏微分方程的問題轉(zhuǎn)換成代數(shù)方程問題,即通過有限差分法進(jìn)行方程求解。求解過程差分節(jié)點(diǎn)數(shù)選取越多,近似解的精度越高。
1)三點(diǎn)中心差分法顯示格式:
2)五點(diǎn)中心差分法顯示格式:
本文采用泰勒展開的方法構(gòu)造五點(diǎn)中心差分法算法格式并得出初始條件的離散,目的在于提高波動方程的數(shù)值解精度,精度由位置變量的二階提高到四階,時間變量的精度保持不變。該算法具有格式簡單、計算速度快等優(yōu)點(diǎn),是有一種有效且有廣泛應(yīng)用前景的方法。