姚林,唐泉
(新疆師范大學 數學科學學院,新疆 烏魯木齊 830017)
對流擴散方程能夠模擬許多物理、化學、經濟和金融的現象從而進行預判,對其數值解的研究由來已久,已有的數值方法包括有限差分(FD)[1]、有限元(FE)[2]和邊界元方法[3]等。一般采用局部插值格式[4]進行推導,需要一個網格來支持操作。對流擴散方程的特點是包括一階導數的對流項和二階導數的擴散項,對于網格的選擇要求很嚴格,如果選擇的網格結構不合適,數值逼近將會產生迎風效應和數值擴散。徑向基函數(RBF-FD)方法[5]是一種局部有效的無網格方法,廣泛用于求解多尺度和偏微分方程等,解決了選擇合適網格的困難,具有數值精度高、構造數值格式容易和程序操作簡單等優點。因此,本文將基于RBF-FD方法的優點,構造出穩定和有效的數值格式,避免出現數值振蕩和數值擴散。
本文主要研究對流擴散方程的數值逼近問題,考慮這類方程:

邊界條件和初始條件為
其中,Ω是二維區域,t∈(0,T],T是終止時間,κ=[κx,κy]T是擴散系數,ν=[νx,νy]T是對流系數,u=u(x,t)表示依賴時間t的函數,g(x,t)表示邊界函數,u0(x)表示初始條件。
本文提出一種新穎的二階離散格式求解對流擴散方程[6]。采用二次元局部的徑向基函數(MQ-RBF-FD)方法進行空間離散[7],時間分裂使用交替迭代算子分裂方法[8-9],BDF2方法用于時間離散。首先,使用維數分裂格式把二維方程轉化成沿X和Y方向的算子,梯度算子和拉普拉斯算子使用MQ-RBF-FD公式進行離散[10],推導出空間二階格式;其次,時間分裂采用交替迭代格式,可以有效減少分裂誤差,迭代格式使用BDF2方法進行離散,目的是使時間格式上也達到二階精度;最后,進一步測試出適當的迭代步數,目的是平衡時間和空間步長,再選取適合的形狀參數c,最終使得數值解達到高階精度。數值實驗能夠驗證本文提出的二階方法要大大優于FD方法。
我們應用五點RBF-FD公式離散對流擴散方程中的梯度算子和拉普拉斯算子。采用維數分裂格式分裂二維對流擴散方程:
其中
(1)
同理
這里使用φi(x)替換上式中的u(x)
φi(x1)=ω1φ1(x1-h)+ω2φ2(x1)+ω3φ3(x1+h),
(2)
Δφi(x1)=γ1φ1(x1-h)+γ2φ2(x1)+γ3φ3(x1+h),
(3)
(4)
公式(4)表示MQ徑向基函數,從式(2)和(3)中求出ωi,γi(i=0,1,2),同理求出ωi,γi(i=0,3,4)[11-12]。Ax,Ay離散格式如下:
其中,h是空間步長,通過維數分裂,MQ-RBF-FD方法,簡單技巧處理,即可在空間格式上獲得二階格式,相比于FD方法,精度更高。通過空間離散,二維對流擴散方程轉化成常微分方程組,下面討論時間分裂和時間離散方法。
時間分裂使用交替迭代格式[13],時間離散采用BDF2方法。按照第1節處理方法,可以得到全離散格式:

為達到二階精度,我們需要找到最優迭代步數去平衡空間步長和時間步長。下面通過兩個數值算例驗證算法的合理性。
算例1,我們考慮熱傳導方程:
這里u(x,y,t)屬于溫度函數,Ω=[0,1]×[0,1],精確解:
uexact(x,y,t)=exp(-(κx+κy)π2t)sin(π(x+y))。
首先,通過數值實驗選出最優形狀參數c,我們選擇擴散系數κx=κy=0.01,τ=h,T=1,迭代步數i=5。圖1說明最優形狀參數c在1附近,我們統一選擇c=1。表1表示收斂階和誤差,說明MQ-RBF-FD方法優于FD方法。其次,選擇擴散系數κx=0.1,κy=0.001,τ=h,T=1,形狀參數c=1,迭代步數i=5。表2同樣表示收斂階和誤差,說明擴散系數選取不同影響收斂階和誤差。

表1 RBF-FD方法和FD方法收斂階和誤差比較(κx=κy=0.01)Table 1 Convergence order and error comparison for RBF-FD and FD method(κx=κy=0.01)

圖1 不同的形狀參數c之間的誤差比較 Fig.1 Error comparison among different shape parameters

表2 RBF-FD方法和FD方法收斂階和誤差比較(κx=0.1,κy=0.001)Table 2 Convergence order and error comparison for RBF-FD and FD method(κx=0.1,κy=0.001)
算例2,我們考慮含有對流項的對流擴散方程:
解析解:
首先,我們選取擴散系數κx=κy=1,對流系數νx=νy=1,a=1,b=0.1,τ=0.5h,T=0.1,選取合適的迭代步數i=121,最優形狀參數c=2,表3表示收斂階和誤差。其次,選取對流系數νx=νy=10,最優形狀參數c=0.2,其他參數不變,表4表示收斂階和誤差。表3和表4比較說明對流系數不同,結果影響很大。最后,選取空間步長h=1/30,迭代步數i=261,其他參數與表3系數相同,得到數值解。圖2表示數值解圖和精確解圖之間的比較。

表3 RBF-FD方法和FD方法收斂階和誤差比較(υx=υy=1,c=2)Table 3 Convergence order and error comparison for RBF-FD and FD method(υx=υy=1,c=2)

表4 RBF-FD方法和FD方法收斂階和誤差比較(υx=υy=10,c=0.2)Table 4 Convergence order and error comparison for RBF-FD and FD method(υx=υy=10,c=0.2)
本文提出一種新穎的二階算法求解對流擴散方程,著重描述了二階算法的推導過程以及時間離散的推導形式,闡述了維數分裂和交替迭代格式在處理對流擴散方程中的優勢,說明了迭代步數在平衡時間和空間步長中的重要作用。數值算例印證了本文提出的二階算法的合理性和可行性,且精度遠遠高于FD方法。將來我們會考慮給出二階算法的理論證明。