SST k-ωモデル(Menter)
SST k-ωモデル(Menter)の理論基礎
概要
先生! SST k-ωモデルってCFDで一番よく使われてる印象がありますが、なぜそんなに人気なんですか?
Menter (1994)が開発したSST(Shear Stress Transport)k-ωモデルは、k-ωモデルの壁面近傍での優位性と、k-εモデルの自由流での安定性を組み合わせたハイブリッドモデルだ。さらに、乱流せん断応力の輸送を考慮するリミッターが加わり、逆圧力勾配下での剥離予測が大幅に改善されている。
一石三鳥みたいなモデルですね。
その通り。工業CFDの「デフォルトモデル」と言っていいほど広く使われている。
支配方程式
数式を教えてください。
k方程式:
ω方程式:
最後のクロス拡散項(Cross-Diffusion Term)がk-εからの変換で生じる項で、$F_1$ ブレンディング関数で制御される。
ブレンディング関数:
壁近傍で $F_1 \to 1$(k-ω挙動)、遠方で $F_1 \to 0$(k-ε挙動)。
渦粘性の定義(SSTリミッター):
$a_1 = 0.31$、$F_2$ は第2ブレンディング関数。このリミッターがBradshaw仮説($-\overline{u'v'} = a_1 k$)を近似し、逆圧力勾配での剥離予測を改善する。
$F_1$ が壁からの距離で切り替わるんですね。
正確には壁距離 $y$ だけでなく、流れ場の局所量($k$、$\omega$、$\nu$)も使って適応的に切り替わる。壁面近傍のk-ω領域と遠方のk-ε領域がスムーズに接続される。
2つのモデルの"いいとこ取り"——Menterの発想
Florian Menterが1994年に論文発表したSSTモデルは、k-εの自由流安定性とk-ωの壁近傍精度をブレンド関数で組み合わせるという、当時としては斬新なハイブリッド手法でした。翼周りの境界層ではk-ωとして動き、自由流ではk-εに近い挙動をするこの切替が、航空・自動車・ターボ機械CFDの標準モデルになった理由です。今や世界中のCFDソルバーでデフォルト設定されるほど普及しています。
SST k-ωモデル(Menter)の数値計算手法
数値実装のポイント
SSTの実装で特に気をつけるべき点は何ですか?
3つの重要ポイントがある。
1. 壁距離の計算
ブレンディング関数に壁距離 $y$ が必要ですよね。
壁距離は計算開始前にPoisson方程式を解いて求める場合と、幾何学的に最近傍壁面セルとの距離を計算する場合がある。複雑形状ではPoisson方程式ベース(例: OpenFOAMのwallDist)が堅牢だ。
Fluentは自動的に壁距離を計算する。OpenFOAMでは fvOptions の wallDist で指定。壁距離の精度がブレンディング関数を通じて結果に影響するため、メッシュの壁面への直交性が重要だ。
2. 生成項のリミッター
$\tilde{P}_k$ ってリミッターがかかっているんですか?
そう。Menter原論文では $\tilde{P}_k = \min(P_k,\; 10 \beta^* \rho k \omega)$ として、生成項が散逸項の10倍を超えないようにリミッティングしている。これは淀み点での乱流エネルギー過剰蓄積(Stagnation Point Anomaly)を防ぐ。
一部のソルバーではVorticity-basedの生成項を使うオプションがあり、淀み点問題をさらに緩和する。
3. クロス拡散項の処理
$\omega$ 方程式のクロス拡散項は数値的に問題ないですか?
$\frac{\partial k}{\partial x_j}\frac{\partial \omega}{\partial x_j}$ は正にも負にもなりうる。$CD_{k\omega} = \max\left(2\rho\sigma_{\omega 2}\frac{1}{\omega}\frac{\partial k}{\partial x_j}\frac{\partial \omega}{\partial x_j},\; 10^{-10}\right)$ としてゼロ除算を防ぐ。
OpenFOAMでの設定
OpenFOAMでの典型的な設定を教えてください。
constant/turbulenceProperties:
```
RAS
{
RASModel kOmegaSST;
turbulence on;
printCoeffs on;
}
```
壁面境界条件:
k:kqRWallFunction($y^+ < 1$ の場合はfixedValue 1e-10)omega:omegaWallFunctionnut:nutUSpaldingWallFunction(全$y^+$対応)
Fluentでの推奨設定
| パラメータ | 推奨値 | 備考 |
|---|---|---|
| モデル | k-omega SST | Production Limiter ONがデフォルト |
| 壁面処理 | 解像する場合$y^+ \approx 1$ | Enhanced Wall Treatmentは不要(SSTは低Re対応) |
| URF (k, omega) | 0.7-0.8 | 収束困難時は0.5に下げる |
| 離散化 | Second Order Upwind | kとωの両方 |
ブレンド関数F1の正体——「ここからk-ε、ここからk-ω」の境界
SSTモデルの核心であるブレンド関数F1は、壁からの距離・乱流エネルギー・渦粘性などから計算された無次元量で、0から1の間をなめらかに変化します。F1=1の領域ではk-ωが支配し、F1=0の領域ではk-εに近い式が動く。実装上は壁距離の計算が必要で、OpenFOAMでは wallDist ライブラリが使われますが、複雑な形状でこの壁距離の計算が不正確になると、ブレンドがおかしくなる場合があります。「SSTの結果がおかしい」と感じたときは、まず wallDist の可視化から始めることをお勧めします。
SST k-ωモデル(Menter)の実務適用
実践ガイド
SSTモデルを実務で使うときのベストプラクティスを教えてください。
SSTは汎用性が高いが、いくつかの注意点がある。
メッシュ要件
壁面の $y^+$ はどうすればいいですか?
SSTは低Reynolds数モデルとしても機能するため、$y^+ \approx 1$ が理想だ。ただし壁関数も使える。
| $y^+$レンジ | 挙動 | 推奨場面 |
|---|---|---|
| $y^+ < 5$ | 粘性底層を直接解像 | 剥離・熱伝達の精密予測 |
| $5 < y^+ < 30$ | 遷移領域(精度低下) | 避けるべき |
| $30 < y^+ < 300$ | 壁関数利用 | 概略評価、初期検討 |
壁面第1セルの推奨高さ: $y^+ \approx 1$ の場合、増加率1.2で15-20層のプリズムレイヤーを配置。
適用事例と精度
どんなケースで使われていますか?
| 適用分野 | 精度評価 | 注意点 |
|---|---|---|
| 翼型の空力解析 | 高 | 剥離点・揚抗比の予測良好 |
| 自動車空力 | 高 | 後流の再循環領域もまずまず |
| ターボ機械 | 高 | 翼面の遷移予測にはγ-Reθ併用推奨 |
| 管路流れ | 高 | 特にU字管、ベンド付き管路 |
| 強旋回流 | 中 | RC補正推奨 |
| 噴流混合 | 中 | 噴流の拡がり率を過小予測傾向 |
| 大規模剥離 | 中-低 | URANSやDDESへの移行を検討 |
SSTの限界
SSTで対応できない流れはありますか?
以下のケースではSSTの限界を認識すべきだ。
- 大規模剥離: 定常RANSでは再循環領域のサイズを過小予測しがち。URANSでも改善は限定的。DDES/IDDESが推奨
- 異方性乱流: SSTはBoussinesq仮説(等方的渦粘性)に基づくため、二次流れの予測は不完全。RSMが必要
- 層流-乱流遷移: SSTは完全乱流を仮定。遷移予測にはγ-Reθ SST(Transition SST)を使う
- 強い浮力流れ: 浮力による乱流抑制/増強の非対称性を捉えにくい
万能ではないけど、最初に試すモデルとしては最適ということですね。
その通り。「迷ったらSST」は実務的に正しい指針だ。そこから不足があれば拡張(RC補正、遷移モデル、DES化)していけばいい。
航空機エンジンナセルの翼型最適化——SSTが変えたフロー
2000年代以降、航空機エンジンナセルの外形設計CFDにSSTモデルが急速に普及しました。ナセルには翼型周りの境界層剥離と自由流の合流が同時に起こるため、k-εだけでも標準k-ωだけでもうまく捉えられなかったのです。エアバスとボーイングの設計チームがSSTを採用して以降、「翼面・圧縮機・ナセル」の全てに同一モデルを使えるようになり、設計サイクルが大幅に短縮された、という話が航空CFDの実務者の間で語り継がれています。
SST k-ωモデル(Menter)のソフトウェア比較
各ソルバーでのSST実装
主要ソルバーでSSTの実装にどんな違いがありますか?
Menterの原論文に基づく基本式はどのソルバーも同じだが、拡張オプションが異なる。
| 拡張機能 | Fluent | CFX | STAR-CCM+ | OpenFOAM |
|---|---|---|---|---|
| 基本SST | ○ | ○ | ○ | ○ |
| Production Limiter | ○(デフォルトON) | ○ | ○ | ○ |
| Vorticity-based Production | ○ | ○ | ○ | カスタム |
| Curvature Correction (RC) | ○ | ○ | ○ | ○ |
| Transition SST (γ-Reθ) | ○ | ○ | ○ | ○ |
| DES/DDES/IDDES化 | ○ | ○ | ○ | ○ |
| Kato-Launder修正 | ○ | ○ | ○ | カスタム |
CFXでの特徴
CFXでは何か特別なことはありますか?
CFXはMenter本人がAnsysで働いていた関係で、SSTの実装が最も「オリジナル」に近い。CFXのAutomatic Wall Treatmentは $y^+$ の値に応じて低Re処理と壁関数を自動的に切り替えるため、メッシュの $y^+$ 分布にばらつきがあっても安定して計算できる。
STAR-CCM+での特徴
STAR-CCM+ではどうですか?
STAR-CCM+はAll $y^+$ Wall Treatmentがデフォルトで、SSTとの相性が良い。また、STAR-CCM+のSST実装にはRealizability制約のオプションがあり、乱流応力テンソルの物理的整合性を保証できる。
OpenFOAMでの実装バリエーション
OpenFOAMでは複数のSST実装がありますよね?
OpenFOAM v2306以降では:
kOmegaSST: Menter 2003版(Production Limiterあり)kOmegaSSTLM: Transition SST(γ-Reθモデル付き)kOmegaSSTDES: DES版kOmegaSSTDDES: DDES版kOmegaSSTIDDES: IDDES版
すべて turbulenceProperties のRASModelまたはLESModelで選択できる。
OpenFOAMは選択肢が多いですね。
ソースコードが公開されているから、自分でカスタマイズもできる。研究用途では大きな利点だ。
SSTの「SST-2003版」問題——細かい違いが大きな差になる
Menterは1994年の元論文の後、2003年にSSTモデルを微修正した版を発表しています。変更点は比較的マイナーですが、渦粘性の分母に渦度を使う部分の定式化が変わっており、強い旋回流れでの挙動が異なります。FluentやSTAR-CCM+では「SST」「Modified SST」などのオプションがあり、ドキュメントを読まずに選ぶとどちらを使っているか分からなくなることがあります。過去に産業検証された設定を変えるときは、必ずリリースノートでSSTのバージョンを確認する癖をつけておきましょう。
SST k-ωモデル(Menter)の先端研究
先端トピック
SSTモデルの最新の発展を教えてください。
SSTは発展を続けている。Menter自身も改良版を発表している。
SST-2003改訂版
オリジナルの1994年版から変わったんですか?
Menter et al. (2003)で定数と定式化に微修正が加えられた。主な変更点:
- $\sigma_{k1}$ が0.85から0.5に変更
- Production Limiterが標準化
- 壁面境界条件の改善
現在のほとんどのソルバーはこの2003年版を実装している。
SAS(Scale-Adaptive Simulation)
SASって何ですか?
Menter & Egorov (2010)が提案したSST-SASモデルは、von Karmanスケール $L_{vK}$ を導入して、LES的な挙動を可能にする。
この追加項をω方程式に加えることで、非定常領域では格子スケールに適応してLES的な解像を行い、壁面近傍では通常のRANS挙動を維持する。メッシュ依存の切替えがないためDESの欠点(GIS問題)を回避できる。
GEKO(Generalized k-ω)モデル
GEKOモデルって最近聞きます。
Menter et al. (2019)が提案した一般化k-ωモデルで、6つの調整可能パラメータ($C_{SEP}$、$C_{NW}$、$C_{MIX}$、$C_{CORNER}$、$C_{JET}$、$C_{REC}$)を持つ。各パラメータがそれぞれ剥離、壁面近傍、混合層、コーナー流、噴流、再循環の挙動を独立に制御する。
これにより、特定の流れに合わせてチューニングできるカスタマイズ可能なRANSモデルが実現した。Fluent 2020R1以降で利用可能。
機械学習との融合
SST + 機械学習の研究はありますか?
活発に研究されている。
- Field Inversion: SSTのβ*やα等の係数を空間的に変動させ、DNS/LESデータとの一致を最適化
- Neural Network Augmented SST: SSTリミッターの $a_1$ を流れ場に応じて動的に変化させるNNを学習
- Bayesian Calibration: モデル定数の不確かさを確率的に定量化
特にGEKOモデルの6パラメータをベイズ最適化で自動チューニングする研究が注目されている。
機械学習でSSTをさらに磨く——データ駆動乱流モデリング
SSTモデルはその広範な実績から、機械学習を活用した乱流モデル補正研究のベースモデルとしても最も多く使われています。フレームワークはシンプルで、SSTで計算したレイノルズ応力テンソルとDNS/LESデータの差をニューラルネットワークで学習し、その補正項をSSTに加える。NASA Langley、DLR、東京大学など多くの機関がこの「RANS-ML」アプローチを研究しており、特定のフロークラス(剥離・再付着)ではSSTを10〜30%上回る精度が報告されています。SSTは「完成形」ではなく「進化中のプラットフォーム」とも言えます。
SST k-ωモデル(Menter)のトラブル対応
トラブルシューティング
SSTを使っていてよく遭遇する問題と対策を教えてください。
実務でよくあるケースをまとめよう。
1. ωの壁面境界値が不適切
ωの壁面境界条件ってどう設定するんですか?
解析的には壁面で $\omega \to \infty$ だが、数値的には有限値を設定する。Menter推奨は:
$\Delta y_1$ は壁面第1セルの高さ、$\beta_1 = 0.075$。$\Delta y_1$ が小さいほどωが大きくなり、反復計算が不安定化しうる。
対策: $y^+ \approx 1$ でもωの値は $O(10^6)$-$O(10^8)$ 程度。URFを0.5-0.7に設定し、ωのクリッピング上限を確認する。
2. 淀み点での乱流過剰生成
翼の前縁付近で乱流エネルギーが異常に高くなります。
原因: 淀み点ではひずみ速度 $S$ が大きいが、実際には乱流生成は少ない。$P_k = \mu_t S^2$ が過大評価される(Stagnation Point Anomaly)。
対策:
- Production Limiter $\tilde{P}_k = \min(P_k, 10\beta^*\rho k\omega)$ が有効になっていることを確認
- Kato-Launder修正: $P_k = \mu_t S \Omega$(渦度ベース)。Fluentでは「Strain/Vorticity Based」オプション
- 一部ソルバーではリミッター係数を10から5に下げるオプションあり
3. 自由流でのωの減衰
入口から遠い場所でωが非常に小さくなり、粘性比 $\mu_t/\mu$ が異常に大きくなります。
原因: 自由流(壁から遠い領域)でωが過度に散逸し、$\mu_t = \rho k/\omega$ が暴走する。
対策:
- 入口のω値を適切に設定。$\omega_{inlet} = \frac{\varepsilon}{C_\mu k}$ または $\omega = \frac{k^{0.5}}{C_\mu^{0.25} l}$
- 乱流粘性比 $\mu_t/\mu$ の上限を設定(Fluentでは10^5がデフォルト)
- ファーフィールド境界条件で $k$ と $\omega$ を一定値に固定
4. 非定常計算での収束
URANSで各時間ステップ内の内部反復が収束しません。
対策:
- 時間刻み $\Delta t$ を小さくする。CFL数が10-50程度になるように調整
- 内部反復数を20-30に増やす
- 初期数百ステップは定常計算で流れ場を発達させてから非定常に切り替え
- 乱流量のURFは運動量より低めに設定(0.5-0.7)
SSTは使いやすいけど、ωの壁面値と淀み点問題は押さえておくべきポイントなんですね。
そうだ。この2点を押さえておけば、大抵の問題はスムーズに解ける。
SSTが剥離を過剰予測するとき——現場でよくある誤解
SSTモデルは逆圧力勾配下での剥離予測が得意とされていますが、実は剥離開始位置を過剰に前側に予測する傾向もあります。翼の迎角が高い状態で「剥離が早すぎる」という実験との乖離が報告されており、これはSSTのせん断応力リミッタが強くかかりすぎることが原因の一つです。航空機設計では失速解析でSSTを使う際に経験的な補正を加えることもある。「SSTは万能ではない」という認識を持ちながら使うことが、正しいモデル活用の第一歩です。
関連トピック
なった
詳しく
報告