# はじめに
かつては乱流計算といえばRAN(レイノルズ平均モデル)一択でした。ただ、近年のコンピューターの発展によってLarge Eddy Simulation(LES)も選択肢に入りつつあります。かつて数値流体力学解析を学んだときは、LESのSubgrid scaleモデルはSmagorinskyが主流だったと思います(たぶん)。現在はいろいろなモデルが使用されるようになってきています。
ここでは、OpenFOAMにも採用されているWALE (Wall Adapting Local Eddy) モデルについてまとめていきたいと思います。
なお、原著論文はこちらになります。詳細を知りたい方はこちらをご参照ください。
LESとは?
Kolmogorovの自己相似性理論より、流れの大きな渦は形状に依存するが、小さなスケールはより普遍的であると考えられます。この特徴を利用して、大きな渦はグリッドスケール(GS)で明示的に解き、小さな渦はサブグリッドスケールモデル(SGSモデル)を使って暗黙的に解くのがLESになります。
空間平均された速度は、フィルターGを用いて
\overline{u}_i ({\bf x}) = \int G({\bf x} - {\bf \xi}) u({\bf \xi}) d {\bf \xi}
で表されます。ここで、
u_i = \overline{u}_i + u'_i
であり、$\overline{u}_i$はGS成分の速度、$u'_i$はSGS成分の速度を表しています。
非圧縮流れの空間平均化されたNavier-Stokes方程式は
\frac{\partial {\bar u_i}}{\partial t} + \frac{\partial {\overline{u_i u_j}}}{\partial x_j} = - \frac{1}{\rho} \frac{\partial {\bar p}}{\partial x_i} + \nu \frac{\partial}{\partial x_j} \left( \frac{\partial \bar u_i}{\partial x_j} + \frac{\partial \bar u_j}{\partial x_i} \right)
で表されます。
移流項 ${\overline{u_i u_j}}$ はLenonardの論文から、以下のように分割することができきます。
\tau_{ij} = {\overline{u_i u_j}} - {\bar u_i}{\bar u_j}
ここで、
\overline{S}_{ij} = \frac{1}{2} \left( \frac{\partial \overline{u}_i}{\partial x_j} + \frac{\partial \overline{u}_j}{\partial x_i} \right)
を用いると、NS方程式は次のように表されます。
\frac{\partial {\bar u_i}}{\partial t} + \frac{\partial {\bar{u_i} \bar{ u_j}}}{\partial x_j} = - \frac{1}{\rho} \frac{\partial {\bar p}}{\partial x_i} + \frac{\partial}{\partial x_i} \left( - \tau_{ij} - 2 \nu {\bar S_{ij}} \right)
$\tau_{ij}$ はSGSテンソルを表しています。渦粘性の仮定により、GSスケールの変形テンソル$\overline{S}_{ij}$を用いると、
\tau_{ij} - \frac{1}{3} \tau_{kk} \delta_{ij} = 2 \nu_t \overline{S}_{ij}
のように表されます。
$\nu_t$は渦動粘性係数になります。この $\tau_{ij}$、渦動粘性をどう記述するかが、SmagorinskyやDynamicなどのモデルの違いになってきます。ここでは、既出の通りWALE
について解説していきます。
WALEモデル
WALEモデルにおいて渦動粘性係数は、
\nu_t = (c_w \Delta )^2 \frac{(S_{ij}^d S_{ij}^d)^{3/2}}{(\overline{S}_{ij} \overline{S}_{ij})^{5/2} + (S_{ij}^d S_{ij}^d) ^{5/4}}
で表されます。ここで
S_{ij}^d = \frac{1}{2} ( \overline{g}_{ij}^2 + \overline{g}_{ji}^2 ) - \frac{1}{3} \delta_{ij} \overline{g}_{kk}^2
\overline{g}_{ij} = \frac{\partial \overline{u}_i}{\partial x_j}
であり前者は二乗速度勾配テンソル(非対角項)を表しています。
また後者は速度勾配テンソルを表しています。
このようにWALE
モデルでは、RANSでお馴染みの乱流エネルギーや消散速度を扱うこと無く、渦動粘性係数、乱流場の計算を行うことができます。
OpenFOAMでは
前述の通り乱流エネルギー$k$、消散速度$\epsilon$などを扱いませんので、0
ディレクトリ下にはnut
のみが必要で、k
やepsilon
などは必要ありません(RANSで育った身としては、最初、???となりました)。
したがって、LES WALEで計算するときは、
simulationType LES;
LES
{
model WALE;
turbulence on;
printCoeffs on;
delta cubeRootVol;
cubeRootVolCoeffs
{
deltaCoeff 1;
}
}
dimensions [0 2 -1 0 0 0 0];
internalField uniform 0;
boundaryField
{
bottomWall
{
type zeroGradient;
}
topWall
{
type zeroGradient;
}
}
などの設定になろうかと思います。
# さいごに
OpenFOAMでLES WALEで計算をしたときに、nutだけで動いて???となったのが、今回のまとめのきっかけになりました。原著論文に戻ったりと、知見を広げることができました。
誤り等がありましたら、そっとご指摘いただければと思います。