9.2 焓阻尼
9.2 焓阻尼
某些情况下,总焓 H(式(2.12))在整个流场中保持常数,例如由 Euler 方程描述、没有热源及外力的外部流动。可以利用这一特点降低计算成本。

第一种选择是在整个流动区域内指定总焓值,从而省去 Euler 方程(2.44)中的能量方程,节省内存和 CPU 时间。
另一种方法是焓阻尼,由 Jameson 为求解势流方程提出 $ [3] $。它利用总焓 H 与自由来流值 $ H_{\infty} $ 的差定义附加驱动项,以显著加速定常收敛。将焓阻尼用于 Euler 方程(2.44)时,得到以下修正 $ [4] $:
$$ \frac{\partial}{\partial t}\int_{\Omega}\vec{W}\mathrm{d}\Omega+\oint_{\partial\Omega}\vec{F}_{\mathrm{c}}\mathrm{d}S=\int_{\Omega}(\vec{Q}-\vec{Q}_{\mathrm{ED}})\mathrm{d}\Omega,\tag{9.1} $$
其中,驱动项 $ \tilde{Q}_{ED} $ 为
$$ \vec{Q}_{\mathrm{ED}}=\vartheta\left[\begin{array}{c}\rho\left(H-H_{\infty}\right)\\ \rho u\left(H-H_{\infty}\right)\\ \rho v\left(H-H_{\infty}\right)\\ \rho w\left(H-H_{\infty}\right)\\ \rho\left(H-H_{\infty}\right)\end{array}\right].\tag{9.2} $$
阻尼因子 $ \vartheta $ 是一个较小的常数,需要根据经验确定。空间离散格式,尤其是人工耗散,必须保证 $ H = H_{\infty} $ 是离散方程的有效解,这样添加源项 $ \vec{Q}_{ED} $ 就不会改变最终定常状态。
每次更新流动解后,额外执行一次焓阻尼步骤。例如,对于显式 m 级时间推进格式(6.1.1 或 6.1.2 节),阻尼步骤为
$$ \vec{W}_{I}^{n+1}=\frac{1}{1+\vartheta\left(H_{I}^{(m)}-H_{\infty}\right)}\vec{W}_{I}^{(m)}\tag{9.3} $$
能量方程例外,其形式为
$$ (\rho E)_{I}^{n+1}=\frac{1}{1+\vartheta}\left[(\rho E)_{I}^{(m)}-\vartheta p_{I}^{(m)}\right].\tag{9.4} $$
式(9.3)中,$ \vec{W}_{I}^{(m)} $ 表示 m 级显式时间推进格式的最终解。文献 $ ^{[1]} $ 对 NACA 0012 翼型跨声速流动($ M_{\infty}=0.8 $,$ \alpha=1.25^{\circ} $)的数值试验表明,达到定常状态所需的时间步数可减少约一半。