劉圣恩,葛永斌,祁應(yīng)楠
(1.寧夏大學(xué)數(shù)學(xué)統(tǒng)計學(xué)院,寧夏 銀川 750021;2.寧夏師范學(xué)院數(shù)學(xué)與計算機(jī)科學(xué)學(xué)院,寧夏 固原 756000)
反應(yīng)擴(kuò)散方程是一類描述物理量隨時間擴(kuò)散和衰減的拋物型微分方程.自然環(huán)境、生物競爭及工程設(shè)備中的諸多物理現(xiàn)象,如種群中基因的擴(kuò)散、半導(dǎo)體材料中的雜質(zhì)或者河流中污染物濃度的變化、液體的滲透等都可用反應(yīng)擴(kuò)散方程進(jìn)行描述[1].
近年來,有眾多科研工作者致力于有限差分法的高精度差分格式的研究,并且已有的研究結(jié)果表明,提高數(shù)值方法的精度對于提高問題的求解能力是一種非常有效的途徑.LI等人[2]針對一維非線性反應(yīng)擴(kuò)散方程,提出了一種預(yù)測-校正格式,通過用隱式-顯式(IMEX)方法來避免迭代,該格式時間具有二階精度,空間具有四階精度.葛永斌等人[3]針對一維擴(kuò)散問題構(gòu)造了一種時間二階精度,空間四階精度的隱式差分格式,且用Fourier分析方法證明了格式是無條件穩(wěn)定的.田振夫等人[4]利用三次樣條四階差分方法,提出了擴(kuò)散方程的兩種無條件穩(wěn)定的差分格式,該格式時間具有二階精度,空間具有四階精度.黃文姣等人[8]針對一維非線性反應(yīng)擴(kuò)散方程,采用四階向后差分處理時間導(dǎo)數(shù),空間項采用四階緊致算子進(jìn)行離散,得到一種時間和空間均為四階精度的格式.WANG等人[6]針對一維非線性反應(yīng)擴(kuò)散方程,提出了一種時間具有二階精度,空間具有四階精度的單調(diào)緊致隱式有限差分格式.張林等人[7]針對二維非線性反應(yīng)擴(kuò)散方程,時間項和空間項分別采用四階向后差分和四階緊致差分方法進(jìn)行離散,提出了一種高精度的全隱格式,并采用多重網(wǎng)格算法加速求解全隱格式所形成的代數(shù)方程組.WU等人[5]針對二維非線性反應(yīng)擴(kuò)散問題構(gòu)造了一種兩層線性化的交替方向隱格式,并給出了無窮范數(shù)和L2范數(shù)的誤差估計,該格式時間具有二階精度,空間具有四階精度.
綜上所述,針對反應(yīng)擴(kuò)散方程,上述各類格式的空間精度均不超過四階,空間具有六階精度的格式尚未發(fā)現(xiàn)研究報道.從已有的文獻(xiàn)來看,實現(xiàn)空間六階精度有幾類常見的方法.SUN等人[9]針對拋物型方程,空間采用六階組合緊致差分格式(CCD)進(jìn)行離散,時間采用Crank-Nicolson(C-N)方法進(jìn)行離散.該格式的空間離散方法,需要分別構(gòu)造求解未知函數(shù)u及u的一階和二階空間導(dǎo)數(shù)的六階差分格式,然后通過迭代方法求解u,進(jìn)而達(dá)到六階精度求解的目的.該方法的實現(xiàn)比較復(fù)雜,因此應(yīng)用相對較少.Sari等人[10]針對拋物型方程,空間采用導(dǎo)數(shù)型六階格式進(jìn)行離散,時間方向采用TVD-RK3方法進(jìn)行離散.該格式在計算上簡單高效,但穩(wěn)定性較差,因此制約了該格式的推廣和應(yīng)用.針對以上六階方法的不足,本文針對二階導(dǎo)數(shù),提出一種推導(dǎo)簡潔且有效的五點六階差分公式,并運用該差分公式來求解一維非線性反應(yīng)擴(kuò)散方程.
考慮如下一維非線性反應(yīng)擴(kuò)散方程的初邊值問題:
初始條件為:
邊界條件為:
其中u(x,t)為待求未知量,υ >0為擴(kuò)散項系數(shù),f(u)為非線性源項,且φ(x),g(t),l(t)均為已知函數(shù).為簡化分析,設(shè)u(x,t)具有充分的光滑性.
首先對計算區(qū)域進(jìn)行等距網(wǎng)格剖分,分割[a,b]×(0,T]為N ×M(N,M ∈Z+)網(wǎng)格,設(shè)時間步長為τ=,空間步長為h=,用表示網(wǎng)格點(xi,tn)的數(shù)值解,其中xi=a+ih,i=0,1,···,N,tn=τn,n=0,1,···,M.網(wǎng)格節(jié)點圖如下圖所示:
分別將點ui+1,ui?1,ui+2,ui?2在點ui處進(jìn)行Taylor展開:
將上面兩個式子分別求和得到如下的式子:
將(2.7)-(2.6)×16,(2.7)-(2.6)×64分別得到
定義如下五點中心差分算子
將式(2.8)和(2.9)分別寫成如下形式
將(2.12)式略去高階誤差項,代入(2.13)式可得
從而得到全新的二階導(dǎo)數(shù)的五點六階差分公式
對方程(2.1)空間內(nèi)部點用式(2.15)進(jìn)行離散,得
整理得到:
將算子(2.10)和(2.11)代入式(2.17)整理得到空間離散格式
考慮式(2.18)在(n ?1/2)時刻的值:
對式(2.19)時間導(dǎo)數(shù)項采用C-N方法進(jìn)行離散,空間采用加權(quán)平均,得到:
上式舍去截斷誤差項,兩邊同乘以τ,并令r=τ/h2,整理得到:
式(2.21)就是定解問題(2.1)-(2.3)的高精度差分格式,該格式的截斷誤差為O(τ2+h6),即時間具有二階精度,空間具有六階精度.由于采用五點模板來構(gòu)建格式,臨近邊界點的計算需要單獨處理.我們利用計算域以外兩個虛擬點的方法,來實現(xiàn)兩個臨近邊界點的計算.虛擬點的處理公式如下:
式(2.21)空間精度具有六階,而時間精度僅具有二階,為了讓格式在求解中體現(xiàn)出更好的計算性能,構(gòu)造時間和空間精度更為接近的格式是十分必要的.為此,本文采用如下四階Richardson外推公式[11]
通過式(2.21)(2.23)就得到求解方程(2.1)-(2.3)的高精度差分格式,該格式時間具有四階精度,空間具有六階精度.在算例1(具有精確解)計算中,為了體現(xiàn)格式更好的計算性能,對格式應(yīng)用外推算法,在算例2(爆破問題)和算例3(quenching問題)計算時,由于選取的時間步長充分小,因此不必要應(yīng)用外推算法,僅應(yīng)用式(2.21)進(jìn)行求解.
由上述分析和推導(dǎo)過程,可以建立求解算法描述如下:
下面采用von Neumann方法對線性化格式進(jìn)行穩(wěn)定性分析,為此假設(shè)虛擬邊界條件精確滿足,且右端項f無誤差存在.用=(xi,tn)表示計算所產(chǎn)生的誤差.將代入式(2.21)中,得到如下誤差等式:
由于A,B均為非負(fù)實數(shù),因此|G|≤1,從而得出本文格式是無條件穩(wěn)定的.
算例1考慮如下具有精確解的問題:
算例1是一個非線性問題,方程源項是含有未知函數(shù)u(x,t)的非線性函數(shù).表1給出了當(dāng)T=1,τ=0.001時的‖eh‖∞范數(shù)誤差和空間收斂階.從表1可以看出,本文格式在空間上可以達(dá)到六階精度,而且比C-N格式和文[8]中格式的計算結(jié)果更加精確.表2給出了當(dāng)T=1,h=1/128時的‖eh‖∞范數(shù)誤差和時間收斂階.從表2中可以看出,本文格式在時間上具有四階精度,且比C-N格式和文[8]中格式的計算結(jié)果更加精確.
表1 當(dāng)T=1, τ=0.001時,算例1的‖eh‖∞范數(shù)誤差和空間收斂階
表2 當(dāng)T=1, h=1/128時,算例1的‖eh‖∞范數(shù)誤差和時間收斂階
算例2考慮如下解的爆破問題:
從表3計算結(jié)果可以看出,當(dāng)α取不同值時,古典隱格式(BTCS)爆破時間的收斂階均為二階.本文格式當(dāng)α=2時,爆破時間的收斂階為二階,但當(dāng)α=5/2,3時,本文格式比BTCS格式具有更高的收斂階.充分說明了本文格式在爆破問題的數(shù)值模擬中相較于低階格式的優(yōu)勢.
表3 當(dāng)α=2,5/2,3時,BTCS格式和本文格式的爆破時間及收斂階
圖1為本文格式當(dāng)空間網(wǎng)格劃分取N=64,α=1時對爆破現(xiàn)象的數(shù)值模擬圖,其中圖(a)為從t=0時刻一直到爆破發(fā)生時數(shù)值解u隨時間和空間的變化;圖(b)為當(dāng)爆破發(fā)生之時,即當(dāng)T?=0.08357703時,在整個空間區(qū)域上u的數(shù)值結(jié)果圖,圖中很好展現(xiàn)出了數(shù)值解的爆破現(xiàn)象.
圖1 當(dāng)N=64,α=1時,(a)u 隨空間和時間的變化圖;(b)在發(fā)生爆破現(xiàn)象的時刻(T?)u的數(shù)值
算例3考慮如下的quenching問題:
該問題的顯著特征是,隨著時間的推移,u →1?而ut →+∞,此類問題被定義為quenching問題[14].當(dāng)τ=5×10?5,h=l×10?2時,采用本文格式計算得到的quenching時間Tl與文[15]中的quenching時間,及文[16]中的quenching時間的對比數(shù)據(jù)如表4所示.可以看出,分別取不同的計算區(qū)域l,本文格式的quenching時間Tl與,結(jié)果相近.
表4 當(dāng)τ=5×10?5, h=l×10?2時,quenching 的發(fā)生時刻
當(dāng)τ=5×10?5,h=l×10?2,l=2時,圖2給出了quenching發(fā)生時刻(=0.7789)的u和ut在x ∈[0,l]的值;圖3給出了在quenching現(xiàn)象發(fā)生之前u和ut的最大數(shù)值解隨時間的變化圖;圖4給出了u和ut在quenching發(fā)生之前,最后80個時間步的三維視圖.可以看出,u在x=1處無限接近于1,而ut在x=1處逐漸增大直至=0.7789時刻發(fā)生爆破.
圖2 u, ut 在quenching時刻(=0.7789)的值
圖3 的值隨時間t的變化圖
圖4 u, ut在quenching發(fā)生前80個時間步的三維視圖
針對空間二階導(dǎo)數(shù),提出了一種五點六階差分公式.基于該差分公式建立了求解一維非線性反應(yīng)擴(kuò)散方程初邊值問題的一種高精度有限差分格式,并采用Richardson外推方法將時間精度提高到四階.在每一時間層上形成的線性方程組采用五對角追趕法進(jìn)行求解,對非線性源項進(jìn)行迭代計算.最后,通過數(shù)值實驗驗證了本文格式在時間和空間上分別能達(dá)到四階和六階精度,計算結(jié)果相比于相關(guān)文獻(xiàn)中的結(jié)果更加精確.在針對爆破的數(shù)值模擬中,本文方法具有較高的爆破時間收斂階;而針對quenching問題的模擬中,quenching時間與相關(guān)文獻(xiàn)中時間基本一致,因此也充分說明了本文格式可以很好地模擬爆破和quenching現(xiàn)象.
本文方法可推廣到求解高維及更復(fù)雜的偏微分方程.我們正在進(jìn)行的研究工作和相應(yīng)的結(jié)果將在之后報道.