在計算流體力學中,震波捕捉方法是一種專為計算無粘性流動中震波而設計的技術。計算包含震波的流動是一個極具挑戰性的任務,因為這類流動會導致流動變數(如壓力、溫度、密度和速度)在震波處出現急劇而不連續的變化。傳統方法面臨著許多挑戰,而現代方法則提供了更優越的解決方案。
震波捕捉方法通常將無粘性流動的控制方程(即歐拉方程)以守恆形式表達,並將震波或不連續性計算為解的一部分。在這種方法中,並不對震波本身進行特殊處理,這與震波擬合方法形成對比,後者會利用相應的震波關係(如Rankine–Hugoniot關係)在解中明確引入震波。
震波捕捉方法的預測通常不如傳統方法那麼尖銳,反而可能在幾個網格元素之間變得模糊。這意味著在由強震波引發的數值計算中,可能導致不自然的振盪現象。
歐拉方程是無粘性流動的控制方程。為了實施震波捕捉方法,必須使用歐拉方程的守恆形式。對於沒有外部熱傳遞和功轉移的流動(等能流),其守恆形式可以用來進行數值求解。
從歷史角度看,震波捕捉方法可以分為古典方法和現代震波捕捉方法(亦稱為高解析度方案)。現代震波捕捉方法通常是向上風偏差的,這與古典的對稱或中心離散化形成對比。向上風偏差差分方案通過基於流動方向的差分來離散化雙曲型偏微分方程,而對稱或中心方案則不考慮波傳播的方向信息。
在震波存在的情況下,不同的震波捕捉方案需要一定程度的數值耗散以保證計算的穩定性,從而避免形成不合理的數值振盪。
古典震波捕捉方法在平滑和弱震波解的情況下會有準確的結果,但當有強震波存在時,可能會出現非線性不穩定性和不連續性上的振盪。相比之下,現代震波捕捉方法經常利用非線性數值耗散,回饋機制根據解的特徵調整所加的人為耗散量。理想中,人為數值耗散只需在震波或其他尖銳特徵附近添加,而平滑流場的區域應保持不變。
著名的古典震波捕捉方法包括MacCormack方法、Lax-Wendroff方法和Beam-Warming方法。而現代震波捕捉方案的例子則包括最初由Harten提出的高階總變差消減(TVD)方案、Boris和Book提出的流量修正傳輸方案、基於Godunov方法且由van Leer引入的單調上游中心方案(MUSCL)、以及Harten等人提出的各種基本非振盪方案(ENO)。
另一重要的高解析度方案類別屬於Riemann近似解算器,由Roe和Osher提出,這些方法在震波捕捉的精確度上有著優異表現。
整體來看,現代震波捕捉方法在應對強震波問題時能提供更穩定且準確的結果,這是基於對數值耗散的改進與調整。而古典方法要素的限制使現代方法逐漸取而代之。在未來的流體力學研究中,這些方法將面對如何繼續提升計算效能和解的準確性的新挑戰。我們是否能找到更加完美的震波捕捉技術來應對日趨複雜的流動情形呢?