彭國良,王仲琦,張俊杰,任澤平,謝海燕,杜太焦
(1.北京理工大學(xué) 機(jī)電學(xué)院,北京 100081;2.西北核技術(shù)研究所,西安 710024)
含源項的雙曲守恒方程在很多領(lǐng)域都有應(yīng)用,如氣體動力學(xué)[1]、淺水波[2]、天文模擬[3]、血液流動[4]等.源項的存在會改變方程解的性質(zhì),當(dāng)方程趨于穩(wěn)態(tài)時,通量梯度與源項應(yīng)處于完全平衡的狀態(tài),但由于網(wǎng)格離散誤差,傳統(tǒng)的計算格式不能保證平衡狀態(tài),導(dǎo)致解在平衡態(tài)附近有虛假的振蕩.許多物理問題實際上是穩(wěn)態(tài)解的小擾動,如果計算格式設(shè)計不好,離散誤差可能淹沒實際的擾動解.尤其計算網(wǎng)格較為粗糙時,這種誤差更大.使用非常細(xì)的網(wǎng)格可以減少離散誤差,但對大尺度問題細(xì)網(wǎng)格的計算成本過高.因此,設(shè)計保平衡格式對解決大尺度流動模擬具有重要意義.
為減少平衡態(tài)附近的離散誤差,學(xué)者們發(fā)展了很多保平衡格式.Cui[5]和Ozcan[6]通過將動量方程的源項空間積分后合并到壓力項,發(fā)展了保平衡中心迎風(fēng)格式(WB-CU).計算中發(fā)現(xiàn)這種方法存在的問題是壓力不能保正,對高空大氣等低密度、低壓力問題容易出現(xiàn)負(fù)壓力.文獻(xiàn)[7]介紹了通過引進(jìn)新的變量將含源項的非守恒方程變?yōu)槭睾惴匠痰男问?,源項與壓力等變量的離散保持一致,從而保證平衡.這種方法求解的是原問題的松弛方程,對大尺度高空大氣擾動問題,其計算精度較差.Chalons 等[1,7]和Franck 等[8]利用基于Lagrange 投影的方法,求解Lagrange 坐標(biāo)形式下含源項的近似Riemann 問題,針對Euler 方程發(fā)展了新的保平衡格式.這類方法精度較高,但向波系更復(fù)雜的磁流體等問題推廣時計算較復(fù)雜,對已有成熟程序的改動也比較大.本文基于常見的HLL 有限體積方法[9-11],發(fā)展了一種新的保平衡格式,期望盡可能簡單地實現(xiàn)含源項雙曲守恒方程保平衡的求解.
含源項的雙曲守恒方程為
式中,U為待求解變量,F(xiàn)為矢通量,Q為源項.
如圖1所示,方程(1)的HLL 近似Riemann 解為
圖1 HLL 近似Riemann 解示意圖Fig.1 The sketch of HLL approximate Riemann solvers
式中,SL表示左行波的最大波速,SR代表右行波的最大波速.
在控制體[xL,xR]×[0,T]內(nèi),式(1)可寫成積分形式[12]:
式中,?x=xR?xL.另外,等式左邊可寫成
比較兩式右邊可得
通量項F的表達(dá)式為
將式(5)代入可得
源項的平均值可近似寫成
從而得到計算格式為
含Van-Leer 限制器的二階守恒重構(gòu)格式為[13]
時間積分可用2 階Runge-Kutta 方法,即
對含重力源項的一維流體Euler 方程,方程(1)中的各項可寫成
波速為
式中,a為聲速.最大波速為
對含重力源項的一維理想磁流體方程,有
波速為
式中,a,c分別為聲速、磁聲波速.最大波速為
平衡態(tài)時u為0,與u相關(guān)的對流輸運(yùn)通量也要為0,故需對通量計算公式(7)進(jìn)行修正.利用文獻(xiàn)[5]使用的技巧,以磁流體方程的通量式(15)為例,速度u為0 時,對流通量的第1,3,4,5 分量也應(yīng)為0.故式(7)可以寫成
式中,上標(biāo)(i)表示第i個分量,H(u)為與速度相關(guān)的修正項,需滿足
可取
式中,C和m是與精度有關(guān)的計算參數(shù),本文中C取1000,m取6.
傳統(tǒng)的HLL 格式的通量項為[9]
對比式(18)和式(21)可知,新格式與傳統(tǒng)格式相比,僅需很小的改動.
下面以理想磁流體方程為例證明本文提出的修正HLL 格式滿足保平衡的要求,即格式在平衡態(tài)時能恢復(fù)為靜力平衡方程.Euler 方程的情形的證明也可同理得到.
平衡態(tài)時,滿足條件uL=uR=0.由式 (15)可得
代入式(18)可得
化簡為
即穩(wěn)態(tài)情況下計算的方程變?yōu)?xp=ρg,滿足靜力平衡條件.故本文提出的格式是保平衡格式.
等溫大氣的擾動算例是用來測試保平衡格式的常用算例[5,6,8],但一般文獻(xiàn)中設(shè)置的計算尺度較小.本文測試在大尺度條件下各種格式的效果.
設(shè)大氣的初始條件為
g=9.8 m/s2,c=300 m/s,l=80 km,xc=50 km,η=1 Pa
式中,.設(shè)大氣為理想氣體,比熱比取1.67,計算域為[10,90]km,邊界條件采用文獻(xiàn)[14]給出的靜態(tài)等溫邊界:
時間積分采用2 階Runge-Kutta 積分,重構(gòu)方法采用含Van-Leer 限制器的二階守恒重構(gòu)格式.網(wǎng)格數(shù)取兩組:N=20 和N=100,分別用傳統(tǒng)的HLL 格式、本文提出的WB-HLL 格式、松弛格式(relax)、Lagrange 投影格式(LA)和WB-CU 格式計算,計算時長100 s.另外,用WB-HLL 格式計算了N=1000 的情形作為參考的精確解.由于計算中WB-CU 格式出現(xiàn)負(fù)壓力無法完成計算,下面只比較其他4 種格式.
圖2 給出了不同格式和網(wǎng)格計算的擾動速度.由于松弛格式計算結(jié)果與其他格式相差較大,為了便于比較,在圖2(b)中沒有展示松弛格式計算的結(jié)果.從圖中可以看出,相同網(wǎng)格精度下,WB-HLL 格式與Lagrange 投影格式精度相當(dāng),比傳統(tǒng)的HLL 格式計算精度更高;網(wǎng)格加密時,WB-HLL 格式也比傳統(tǒng)的HLL 格式收斂更快.
圖2 不同格式計算的流體擾動速度:(a)網(wǎng)格數(shù)N=20;(b)網(wǎng)格數(shù)N=100Fig.2 Fluid perturbed velocities with different schemes:(a)grid number N=20;(b)grid number N=100
為驗證WB-HLL 格式在磁流體問題中的計算效果,我們將3.1 小節(jié)的算例改成磁流體算例.由于Lagrange 投影格式推廣到磁流體問題時較為復(fù)雜,本算例僅比較WB-HLL 格式和HLL 格式.初始條件為
圖3 給出了磁流體方程不同格式和網(wǎng)格計算的擾動速度,圖4 給出了不同格式和網(wǎng)格計算的磁場結(jié)果.從圖中可以看出,對磁流體方程,與傳統(tǒng)的HLL 格式相比,WB-HLL 格式計算精度更高,收斂更快.
圖3 不同格式計算的磁流體擾動速度:(a)網(wǎng)格數(shù)N=20;(b)網(wǎng)格數(shù)N=100Fig.3 MHD perturbed velocities with different schemes:(a)grid number N=20;(b)grid number N=100
圖4 不同格式計算的磁流體磁場:(a)網(wǎng)格數(shù)N=20;(b)網(wǎng)格數(shù)N=100Fig.4 MHD magnetic results with different schemes:(a)grid number N=20;(b)grid number N=100
本文構(gòu)造了含源項的HLL 型近似Riemann 求解器,對通量計算格式進(jìn)行修正,提出了保平衡的HLL 有限體積計算格式,并給出了保平衡證明.與經(jīng)典HLL 格式相比,本文的計算格式只需很小的改動.數(shù)值算例表明,針對大尺度含重力源項的Euler 方程,在精度與收斂速度方面,本文的新格式與Lagrange 投影方法相當(dāng),與傳統(tǒng)HLL 格式相比有較大提高.針對大尺度含重力源項的理想磁流體方程,新格式在精度與收斂速度方面與傳統(tǒng)HLL 格式相比也有較大提高.