趙 越,周 領(lǐng),劉德有,張永會(huì),王家澤,曹 云,潘天文
(1.河海大學(xué)水利水電學(xué)院,江蘇 南京 210098; 2.國(guó)網(wǎng)新源控股有限公司白山抽水蓄能電站,吉林 吉林 132013)
在有壓管道系統(tǒng)中水力元件(如閥門、泵等)啟閉或啟??赡軙?huì)產(chǎn)生危險(xiǎn)的水錘現(xiàn)象,從而可能對(duì)管道產(chǎn)生破壞甚至造成人員傷亡等嚴(yán)重的事故,因此,水錘問(wèn)題的計(jì)算分析對(duì)于管道系統(tǒng)的設(shè)計(jì)以及安全運(yùn)行至關(guān)重要。特征線法(method of characteristics,MOC)具有簡(jiǎn)單、準(zhǔn)確的特點(diǎn),在解決管道瞬變流問(wèn)題時(shí)被廣泛應(yīng)用。然而,實(shí)際工程中的管道系統(tǒng)常會(huì)出現(xiàn)不同材質(zhì)的管段或支管(不同波速)、短管等問(wèn)題,在采用固定網(wǎng)格的特征線法進(jìn)行計(jì)算分析時(shí)可能需要通過(guò)改變波速或者網(wǎng)格長(zhǎng)度來(lái)滿足庫(kù)朗特?cái)?shù)條件,這就使得計(jì)算變得復(fù)雜而且可能引起較大的計(jì)算誤差。
近年來(lái),有限體積法廣泛用于氣體動(dòng)力學(xué)和淺水方程問(wèn)題的模擬。在保證質(zhì)量和能量守恒條件下,有限體積法對(duì)于不連續(xù)問(wèn)題可提供合理的求解方案,并可有效避免虛假振蕩。Guinot[1]將有限體積法應(yīng)用到水錘問(wèn)題,得到了類似于帶內(nèi)插特征線法的一階格式;余代廣等[2]為提高水錘計(jì)算精度,采用特征線法對(duì)摩阻項(xiàng)積分得到非恒定摩阻模型;Zhao等[3]在基于Godunov格式對(duì)水錘問(wèn)題進(jìn)行模擬時(shí),應(yīng)用Riemann求解器進(jìn)行求解從而得到了一階和二階的格式;耿艷芬等[4-6]采用特征分解的格式構(gòu)造出一階和二階的Godunov格式對(duì)水錘問(wèn)題和淺水方程進(jìn)行了分析,并基于無(wú)結(jié)構(gòu)網(wǎng)格單元中心有限體積法對(duì)二維對(duì)流擴(kuò)散方程進(jìn)行離散;Yazdi等[7]將二階顯式有限體積法Godunov格式應(yīng)用于水錘問(wèn)題;潘存鴻[8]基于三角形網(wǎng)格的有限體積法建立具有空間二階精度的Godunov格式;張大偉等[9]建立了基于 Godunov格式的一維、二維潰壩水流耦合數(shù)學(xué)模型;姜曉明等[10]基于Riemann近似解格式的一維、二維水流數(shù)學(xué)模型通過(guò)堰流公式進(jìn)行耦合;Hwang[11]采用二階精度格式對(duì)水錘問(wèn)題進(jìn)行分析;蔣明等[12]提出了一種求解管道耦合水力瞬變模型的 Godunov 計(jì)算格式;畢勝等[13]建立了Godunov格式下求解二維水流輸運(yùn)方程的高精度耦合數(shù)學(xué)模型;向小華等[14]基于顯式的有限體積法以及TVD限制器構(gòu)建了一維河網(wǎng)水流模型;Zhou等[15]通過(guò)等分控制體,并假定空穴僅出現(xiàn)在控制中心,實(shí)現(xiàn)了Godunov格式對(duì)管道內(nèi)液柱分離現(xiàn)象的模擬分析。
本文采用Godunov格式和Riemann求解器對(duì)水錘方程進(jìn)行數(shù)值求解,并提出了虛擬邊界的處理方法?;趯?duì)算例的模擬分析,驗(yàn)證一階、二階Godunov格式在水錘模擬方面的準(zhǔn)確性,研究庫(kù)朗特?cái)?shù)等參數(shù)的敏感性,并與MOC方法的模擬結(jié)果進(jìn)行對(duì)比。
描述管道水流狀態(tài)的運(yùn)動(dòng)方程和連續(xù)性方程[16]可以寫成矩陣的形式:
(1)
其中
式中:x為沿管軸線的距離;t為時(shí)間;H為測(cè)壓管水頭;V為管道內(nèi)水流流速;a為波速;g為重力加速度;f為恒定摩阻系數(shù);D為管道直徑。
式(1)采用Riemann問(wèn)題的求解方法[17],可以近似的寫成如下形式:
(2)
有限體積法是將計(jì)算區(qū)域劃分為多個(gè)控制體來(lái)對(duì)方程進(jìn)行離散,然后對(duì)每個(gè)控制體進(jìn)行積分。對(duì)于第i個(gè)控制體(圖1),將式(2)沿x方向從控制邊界i-1/2到控制邊界i+1/2進(jìn)行積分:
(3)
式中:fi-1/2為i-1/2界面數(shù)值通量;fi+1/2為i+1/2界面數(shù)值通量。
圖1 計(jì)算區(qū)域的離散網(wǎng)格
(4)
式中:Δt為時(shí)間步長(zhǎng);Δx為每個(gè)控制體的長(zhǎng)度;下標(biāo)n、n+1分別表示t和t+Δt時(shí)刻。
1.2.1 一階Godunov格式
每個(gè)單元控制體具有統(tǒng)一的物理變量值,但是在兩個(gè)單元控制體交界處的數(shù)值是間斷的。為了計(jì)算出Godunov格式中的離散通量,可采用Riemann問(wèn)題的求解方法[17],具體如下:
(5)
(6)
式中:UL,n為n時(shí)刻u在i+1/2界面左側(cè)的平均值,UR,n為n時(shí)刻u在i+1/2界面右側(cè)的平均值。t∈[tn,tn+1]時(shí)刻所有控制體界面i+1/2處的通量為
(7)
其中UL,n=Ui,nUR,n=Ui+1,n
由于采用單元內(nèi)變量平均分布值替代界面左右的值,因此此格式只有一階精度。
1.2.2 二階Godunov格式
采用MUSCL-Hancock方法[17]進(jìn)行線性插值重構(gòu),從而獲得空間為二階精度的Godunov格式,用MUSCL-Hancock方法進(jìn)行線性重構(gòu)的步驟如下:
第1步數(shù)據(jù)重構(gòu)。為避免二階格式在線性插值重構(gòu)時(shí)出現(xiàn)虛假振蕩的現(xiàn)象,引入斜率限制器函數(shù)MINMOD(σj,n,σj-1,n):
Ui,L=Ui,n-0.5ΔxMINMOD(σj,n,σj-1,n)
(8)
Ui,R=Ui,n+0.5ΔxMINMOD(σj,n,σj-1,n)
(9)
式中:下標(biāo)L表示x→xi-1/2且x>xi-1/2;下標(biāo)R表示x→xi+1/2且x 第2步推進(jìn)時(shí)間計(jì)算: (10) (11) 第3步Riemann問(wèn)題的近似求解: (12) 將式(12)代入式(7)中即可得到二階Godunov格式在t∈[tn,tn+1]時(shí)刻所有控制體界面i+1/2處的通量。 在計(jì)算左右通量之后需要求n時(shí)刻到n+1時(shí)刻的解,對(duì)式(4)進(jìn)行積分得: (13) 在有摩阻情況下采用顯式的二階龍格庫(kù)塔法: (14) (15) (16) 如果采用一階格式計(jì)算通量,則式(14)~(16)得到的格式在時(shí)間上為二階精度,在空間上為一階精度。如果采用二階格式計(jì)算通量,則式(14)~(16)得到的格式在時(shí)間和空間上均為二階精度。 時(shí)間步長(zhǎng)應(yīng)該滿足CFL收斂條件,即: (17) 式中:Cr為庫(kù)朗特?cái)?shù)。 1.4.1 一階Godunov格式邊界處理 文獻(xiàn)[3]需要通過(guò)Riemann不變量方程單獨(dú)計(jì)算邊界處的通量,然后計(jì)算其他單元控制體的通量。本文提出虛擬邊界處理方法,可以使邊界和所有單元控制體的通量值統(tǒng)一計(jì)算,采取的模型包含上游邊界(上游水庫(kù))以及下游邊界(末端閥門)。由式(7)可知,若想求得f1/2和fN+1/2,需要已知U0,n和UN+1,n,但是劃分控制體時(shí)只包含單元控制體1至單元控制體N,因此如圖2所示,在上游水庫(kù)入口左邊和管道末端閥門右邊分別加入虛擬單元0和虛擬單元N+1。 圖2 計(jì)算區(qū)域與虛擬網(wǎng)格 上游邊界: U0,n=U1/2 (18) 根據(jù)負(fù)向特征線以及Riemann不變量方程可得: (19) 下游邊界: UN+1,n=UN+1/2 (20) 根據(jù)正向特征線以及Riemann不變量方程可得: (21) 1.4.2 二階Godunov格式邊界處理 與一階Godunov格式類似,二階Godunov格式需要已知相鄰的兩個(gè)單元控制體內(nèi)的數(shù)值,因此在上游水庫(kù)入口左邊和下游閥門右邊分別加入兩個(gè)虛擬單元0、-1和虛擬單元N+1、N+2(圖2)。 上游邊界: U-1,n=U0,n=U1/2 (22) 下游邊界: UN+2,n=UN+1,n=UN+1/2 (23) 其中U1/2和UN+1/2的處理方法和一階Godunov格式相同。 采用上游水庫(kù)-管道-閥門的簡(jiǎn)化模型,管道長(zhǎng)為1 000 m,計(jì)算區(qū)域單元數(shù)量為20,波速為a=1 000 m/s,上游水庫(kù)水位Hr=0 m,初始速度為0.05 m/s,重力加速度g=9.806 m/s2,計(jì)算時(shí)間為20.0 s,下游閥門瞬間關(guān)閉。在數(shù)值模擬過(guò)程中假定:①即使低于水體汽化壓力,也不發(fā)生液柱分離現(xiàn)象;②管道為無(wú)摩阻管道,則壓力計(jì)算結(jié)果衰減均為數(shù)值計(jì)算耗散(誤差)引起。 圖3 三種案例閥門處水頭變化 案例1:在初始速度V0為0.05 m/s的情況下,分別采用本文提出的虛擬邊界處理方法和文獻(xiàn)[3]的方法進(jìn)行數(shù)值模擬,結(jié)果如圖3所示。由圖3(a)可知,雖然邊界處理的方法不同,但壓力計(jì)算曲線基本重合,說(shuō)明本文提出的邊界處理方法和文獻(xiàn)[3]的計(jì)算精度相同,從而驗(yàn)證了虛擬邊界的處理方法是準(zhǔn)確可行的。而且文獻(xiàn)[3]需要通過(guò)Riemann不變量方程得到邊界處的通量值,然后將邊界與其他單元分別進(jìn)行計(jì)算,而本文通過(guò)虛擬邊界的方法可以將邊界和其他單元統(tǒng)一計(jì)算,對(duì)于計(jì)算和編程來(lái)說(shuō)都更加簡(jiǎn)單方便。 案例2:基于MOC方法、Godunov的一階和二階格式計(jì)算Cr=1.0時(shí)閥門處的壓力水頭。由圖3(b)可知,當(dāng)Cr=1.0時(shí),Godunov的一階格式與MOC方法壓力計(jì)算結(jié)果曲線完全重合。由圖3(c)可知,當(dāng)Cr=1.0時(shí),Godunov的一階格式與二階格式壓力計(jì)算結(jié)果曲線完全重合。說(shuō)明Cr=1.0時(shí),Godunov的一階和二階格式與MOC方法壓力計(jì)算結(jié)果一致,再次驗(yàn)證了Godunov格式的準(zhǔn)確性。 案例2:基于MOC方法、Godunov的一階和二階格式計(jì)算Cr分別為0.5和0.1時(shí)閥門處的壓力水頭。由圖3(b)可知,在Cr分別為0.5和0.1時(shí)基于MOC方法與一階Godunov格式的模擬結(jié)果完全相同并發(fā)生數(shù)值耗散,而且耗散量在Cr為0.1時(shí)比Cr為0.5時(shí)更多,說(shuō)明Cr<1.0時(shí)數(shù)值出現(xiàn)耗散情況,二者耗散量相同,并且Cr值越小耗散量越多。 由圖3(c)可知,在Cr=0.5和0.1時(shí),一階Godunov和二階Godunov格式的模擬結(jié)果均出現(xiàn)數(shù)值耗散,且Cr值越小耗散量越明顯。值得注意的是,二階Godunov格式數(shù)值耗散遠(yuǎn)小于一階Godunov格式的數(shù)值耗散,說(shuō)明當(dāng)Cr<1.0時(shí),二階Godunov格式模擬結(jié)果更加穩(wěn)定,具有較強(qiáng)的魯棒性。 綜上所述,Cr<1.0時(shí),3種方法均出現(xiàn)數(shù)值耗散,Cr值越小數(shù)值耗散越嚴(yán)重;一階Godunov格式和MOC具有相同的計(jì)算精度,且均會(huì)產(chǎn)生較為嚴(yán)重的數(shù)值耗散,引起較大的計(jì)算誤差;二階Godunov格式能有效抑制數(shù)值耗散,具有較高的計(jì)算精度。 在一階和二階Godunov格式數(shù)值耗散相同的情況下,Cr=0.5,一階格式的單元數(shù)量為2 000,CPU計(jì)算時(shí)間為27.86 s;二階格式的單元數(shù)量為200,CPU計(jì)算時(shí)間為1.57 s。Cr=0.1時(shí),一階格式單元數(shù)量為500,CPU計(jì)算時(shí)間為16.98 s;二階格式單元數(shù)量為50,CPU計(jì)算時(shí)間為1.36 s。上述結(jié)果說(shuō)明,在計(jì)算精度相同的情況下,二階Godunov格式CPU計(jì)算時(shí)間遠(yuǎn)小于一階格式計(jì)算時(shí)間,具有較高的計(jì)算效率。這是因?yàn)?當(dāng)庫(kù)朗特?cái)?shù)相同時(shí),為了保證相同的計(jì)算精度(耗散量),二階格式在計(jì)算中需要?jiǎng)澐值膯卧獢?shù)量比一階格式的單元數(shù)量少很多,二階格式需要很少的計(jì)算內(nèi)存,因此,其計(jì)算速度快。 a. 根據(jù)Godunov格式的階數(shù)在邊界處增加相應(yīng)數(shù)量的虛擬單元,使所有單元統(tǒng)一計(jì)算,無(wú)須在計(jì)算前單獨(dú)對(duì)邊界的數(shù)值進(jìn)行處理,給水錘計(jì)算以及編程提供了方便,并且得到的模擬結(jié)果與文獻(xiàn)[3]采用的邊界處理方法得到的結(jié)果基本一致。這說(shuō)明,本文提出的虛擬邊界處理方法既保證了計(jì)算精度又避免了繁瑣處理和計(jì)算,所以該方法可以廣泛應(yīng)用于基于有限體積法Godunov格式的邊界問(wèn)題的處理。 b. 分析庫(kù)朗特?cái)?shù)對(duì)模擬結(jié)果的影響,庫(kù)朗特?cái)?shù)Cr=1時(shí),基于Godunov的一階和二階格式的模擬結(jié)果與MOC方法的模擬結(jié)果一致。庫(kù)朗特?cái)?shù)Cr<1時(shí),一階格式和MOC方法的數(shù)值耗散比二階格式更嚴(yán)重。由于二階格式進(jìn)行了線性重構(gòu)并且引入MINMOD函數(shù),能夠有效抑制衰減,所以得到的模擬結(jié)果最為穩(wěn)定。此外,在相同的計(jì)算精度(數(shù)值耗散)情況下,二階格式比一階格式計(jì)算效率更高。 c. 分別計(jì)算分析有無(wú)對(duì)流項(xiàng)對(duì)關(guān)閥水錘模擬結(jié)果的影響,在馬赫數(shù)(流速)較小時(shí),對(duì)流項(xiàng)對(duì)結(jié)果幾乎無(wú)影響,可忽略不計(jì);隨著馬赫數(shù)增大,對(duì)流項(xiàng)的影響變大。1.3 時(shí)間積分
1.4 虛擬邊界
2 算例分析
2.1 模型準(zhǔn)確性分析
2.2 參數(shù)敏感性分析
3 結(jié) 論