王海云,袁安安,朱洪強(qiáng)
(南京郵電大學(xué)理學(xué)院,南京 210023)
計(jì)算流體力學(xué)的多數(shù)問(wèn)題都可以歸為非線性雙曲守恒律方程,這類方程最大的特點(diǎn)是方程的解可能含有間斷.RKDG(Runge-Kutta discontinuous Galerkin)方法[1]是求解該類方程的前沿和熱點(diǎn)方法之一,它有眾多優(yōu)點(diǎn),如便于進(jìn)行h和p自適應(yīng),邊界條件處理簡(jiǎn)單,能夠應(yīng)對(duì)復(fù)雜幾何區(qū)域,精度高、并行效率高等,目前已有大量研究成果.h自適應(yīng)方法可以根據(jù)解的情況自動(dòng)調(diào)整網(wǎng)格,通常對(duì)間斷處的網(wǎng)格細(xì)化處理和光滑處的網(wǎng)格放粗,能利用較小的代價(jià)更加精確地捕捉間斷,如Hartmann[2]、Remacle[3]、Dedner[4]等利用誤差估計(jì)控制網(wǎng)格加密,獲得了很好的h自適應(yīng)效果.p自適應(yīng)方法[5-7]則是通過(guò)改變各單元上逼近函數(shù)的次數(shù),實(shí)現(xiàn)高階逼近和計(jì)算存儲(chǔ)的節(jié)?。甂ubatko等[5]應(yīng)用p自適應(yīng)RKDG方法對(duì)淺水波方程進(jìn)行求解,自適應(yīng)效果良好.而hp自適應(yīng)方法[8-10]將這兩種自適應(yīng)方法結(jié)合在一起,兼有h和p自適應(yīng)的優(yōu)點(diǎn).目前RKDG的自適應(yīng)方法大多基于誤差估計(jì),而非線性雙曲守恒律方程的誤差估計(jì)通常比較困難.Tian等[11-12]分別對(duì)兩個(gè)不同方程設(shè)計(jì)了一個(gè)基于梯度的自適應(yīng)指標(biāo),實(shí)現(xiàn)局部DG方法的h自適應(yīng);筆者利用壞單元指示子分別給出了RKDG的h自適應(yīng)[13-15]和p自適應(yīng)[16]方法.本文擬在文獻(xiàn)[13]和[16]的基礎(chǔ)上設(shè)計(jì)一種新的hp自適應(yīng)算法,以期兼有h和p自適應(yīng)的優(yōu)點(diǎn),從而進(jìn)一步提高計(jì)算效果.
考慮如下一維標(biāo)量雙曲守恒律問(wèn)題
(1)
(2)
對(duì)解中包含間斷的問(wèn)題,RKDG方法須使用限制器來(lái)控制數(shù)值偽振蕩.限制器首先探測(cè)間斷附近的單元,即壞單元(稱為壞單元指示子),然后通過(guò)修正壞單元上的數(shù)值解來(lái)控制數(shù)值振蕩,使格式穩(wěn)定.本文采用基于minmod函數(shù)的TVB限制器.記
(3)
數(shù)值解在間斷區(qū)域的誤差總是O(1)數(shù)量級(jí),所以如果在間斷處采用低次的多項(xiàng)式逼近,不僅可節(jié)省存儲(chǔ)空間,還能減弱高次多項(xiàng)式逼近引起的數(shù)值振蕩.為實(shí)現(xiàn)對(duì)間斷點(diǎn)的精確捕捉,需要對(duì)間斷區(qū)域采用密網(wǎng)格,光滑區(qū)域采用粗網(wǎng)格,以節(jié)省計(jì)算量.壞單元指示子可以用來(lái)區(qū)分間斷區(qū)域和光滑區(qū)域,通過(guò)對(duì)間斷區(qū)域的壞單元進(jìn)行加密并使用低次多項(xiàng)式逼近,對(duì)光滑區(qū)域的好單元對(duì)(來(lái)自同一次加密的兩個(gè)單元)合并后采用高次多項(xiàng)式逼近,從而實(shí)現(xiàn)hp自適應(yīng).在單元合并時(shí),由于低次多項(xiàng)式和高次多項(xiàng)式合并之后的新單元仍是低次的,這會(huì)降低數(shù)值精度,故只有當(dāng)2個(gè)單元都是高次多項(xiàng)式時(shí)才能合并.基于這些考慮,本文設(shè)計(jì)了hp自適應(yīng)RKDG算法,算法流程圖如圖1所示,具體步驟如下:
圖1 算法流程圖Fig.1 Flowchart of hp-adaptive algorithm
1)給定網(wǎng)格最大加密深度L、高次多項(xiàng)式次數(shù)kmax和低次多項(xiàng)式次數(shù)kmin、最終求解時(shí)間T;
6)如果tn+1 采用3個(gè)經(jīng)典算例進(jìn)行數(shù)值試驗(yàn),給出kmin=1,kmax=3,D=4,初始單元數(shù)N0=40時(shí)的hp自適應(yīng)算法結(jié)果,并與不做任何自適應(yīng)的標(biāo)準(zhǔn)RKDG方法進(jìn)行比較.為了說(shuō)明新算法的有效性和優(yōu)勢(shì),標(biāo)準(zhǔn)RKDG的單元數(shù)分別取N0和2N0. 圖2 一維Burgers方程hp自適應(yīng)算法結(jié)果Fig.2 Results of hp-adaptive algorithm for one-dimensional Burgers’ equation 圖3 Riemann問(wèn)題hp自適應(yīng)算法結(jié)果Fig.3 Results of hp-adaptive algorithm for Riemann problem 圖4 Buckley-Leverett問(wèn)題hp自適應(yīng)算法結(jié)果Fig.4 Results of hp-adaptive algorithm for Buckley-Leverett problem 本文設(shè)計(jì)了一個(gè)新的基于壞單元指示子的hp自適應(yīng)RKDG算法.該算法先使用壞單元指示子來(lái)捕捉間斷,然后在間斷區(qū)域采用密網(wǎng)格和低次多項(xiàng)式逼近,在連續(xù)區(qū)域采用粗網(wǎng)格和高次多項(xiàng)式逼近.?dāng)?shù)值試驗(yàn)表明,這個(gè)新的hp自適應(yīng)算法兼有h和p自適應(yīng)的優(yōu)點(diǎn),不僅捕捉間斷更加精準(zhǔn),而且有效節(jié)約了計(jì)算消耗.3 算例
4 結(jié)論