渦度方程式 — 数値解法と実装

カテゴリ: 流体解析(CFD) | 2026-01-20
vorticity-equation-method
数値解法の舞台裏

渦度-流れ関数法

🧑‍🎓

渦度方程式をCFDで解くとき、一番基本的な方法って何ですか?


🎓

2次元非圧縮流れでは渦度-流れ関数法(vorticity-stream function method)が古典的な手法だ。渦度方程式と流れ関数のPoisson方程式を連立させる。


$$ \frac{\partial \omega}{\partial t} + u \frac{\partial \omega}{\partial x} + v \frac{\partial \omega}{\partial y} = \nu \nabla^2 \omega $$

$$ \nabla^2 \psi = -\omega $$

速度は $u = \frac{\partial \psi}{\partial y}$、$v = -\frac{\partial \psi}{\partial x}$ で復元する。圧力が未知数から消えるのがこの手法のメリットだよ。


🧑‍🎓

N-S方程式を直接解くのと比べてどんな利点があるんですか?


🎓

2次元では未知数が $\omega$ と $\psi$ の2つだけで、圧力-速度連成の問題(SIMPLE法などの反復が不要)を回避できる。ただし3次元への拡張は渦度が3成分ベクトルになるため複雑で、実用的にはあまり使われない。


空間離散化

🧑‍🎓

空間方向の離散化はどうするんですか?


🎓

有限差分法(FDM)での典型的な離散化を見てみよう。均一格子間隔 $h$ の中心差分を用いると、Poisson方程式は


$$ \frac{\psi_{i+1,j} - 2\psi_{i,j} + \psi_{i-1,j}}{h^2} + \frac{\psi_{i,j+1} - 2\psi_{i,j} + \psi_{i,j-1}}{h^2} = -\omega_{i,j} $$

移流項は中心差分だと格子Reynolds数 $Re_h = |u|h/\nu > 2$ でウィグルが発生する。これを避けるために風上差分QUICK法を使うことが多い。


🧑‍🎓

有限体積法(FVM)だとどう変わりますか?


🎓

FVMではセル界面での渦度フラックスを評価する。移流フラックスには2次精度風上スキーム(Second Order Upwind)やTVDスキーム、拡散フラックスには中心差分を使う。OpenFOAMのscalarTransportFoamソルバーが渦度の移流拡散をFVMで解く実装の参考になるよ。


時間積分

🧑‍🎓

時間方向はどう進めるんですか?


🎓

代表的な時間積分スキームをまとめよう。


スキーム精度安定性特徴
前進Euler1次条件付き安定$\Delta t < h^2/(4\nu)$ の制約
Crank-Nicolson2次無条件安定陰的、毎ステップ連立方程式
Adams-Bashforth 2次2次条件付き安定陽的、2ステップ法
Runge-Kutta 4次4次条件付き安定高精度だがコスト大

実用的にはCrank-Nicolsonで拡散項を陰的に、移流項をAdams-Bashforthで陽的に扱う半陰的手法がよく使われる。


🧑‍🎓

CFL条件も効いてきますよね?


🎓

もちろん。移流のCFL条件は $\Delta t < h/|u_{max}|$ だ。拡散の安定性条件は $\Delta t < h^2/(4\nu)$ で、高Reynolds数では移流のCFLが支配的、低Reynolds数では拡散の制約が厳しくなる。


壁面渦度の境界条件

🧑‍🎓

壁面での渦度の境界条件はどう設定するんですか? これが難しいって聞きました。


🎓

壁面での渦度は直接与えられないから、流れ関数から間接的に導出する。代表的な手法はThomの公式だ。壁面($j=0$)で滑りなし条件 $u=v=0$ と $\psi=0$ を使うと


$$ \omega_{i,0} = -\frac{2(\psi_{i,1} - \psi_{i,0})}{h^2} = -\frac{2\psi_{i,1}}{h^2} $$

これは2次精度で、反復法の中でPoisson方程式と交互に更新する必要がある。


🧑‍🎓

もっと精度の高い方法もあるんですか?


🎓

Woods の公式は $\omega_{i,0} = -\frac{3\psi_{i,1}}{h^2} - \frac{\omega_{i,1}}{2}$ で3次精度になる。またBriley の公式は壁面近傍の渦度分布をTaylor展開して4次精度を達成する。精度が上がるほど収束が遅くなる傾向があるので、実用上はThomの公式で十分な場合が多い。


連立方程式の解法

🧑‍🎓

Poisson方程式を毎ステップ解くのはコストが高そうですね。


🎓

その通りで、ここがボトルネックになる。代表的な解法は以下だ。


  • SOR法: 実装が簡単。緩和係数 $\omega_{SOR} \approx 2 - \pi h$ が最適
  • ADI法: 交互方向陰解法。各方向の三重対角行列をThomas法で解く
  • マルチグリッド法: $O(N)$ の計算量で最も高速。粗いグリッドで低周波誤差を効率的に除去
  • FFT法: 矩形領域で一様格子の場合に $O(N \log N)$ で直接解ける

🧑‍🎓

実務ではどれを使うのがおすすめですか?


🎓

格子数が $100 \times 100$ 程度ならSOR法で十分だ。$1000 \times 1000$ 以上ならマルチグリッド法が圧倒的に速い。OpenFOAMのfvMatrixではGAMGソルバーがマルチグリッド法に対応している。

Coffee Break よもやま話

F1と空力の戦い

F1マシンは時速300kmで走ると、車重と同じくらいのダウンフォース(下向きの空力的な力)を発生します。つまり理論上、天井に貼り付けて走れる! チームは数千CPU時間のCFDシミュレーションを毎週実行し、フロントウィングの角度を0.1°単位で最適化しています。F1はCAEの技術力がそのまま順位に直結する世界です。

離散化手法の詳細解説

空間離散化における手法選択が数値精度・安定性・計算コストに与える影響を詳述する。

風上差分(Upwind)

1次風上: 数値拡散が大きいが安定。2次風上: 精度向上するが振動のリスク。高レイノルズ数流れでは必須。

中心差分(Central Differencing)

2次精度だが、Pe数 > 2で数値振動が発生。低レイノルズ数の拡散支配流れに適する。

TVDスキーム(MUSCL、QUICK等)

リミッタ関数により数値振動を抑制しつつ高精度を維持。衝撃波や急勾配の捕捉に有効。

有限体積法 vs 有限要素法

FVM: 保存則を自然に満足。CFDの主流。FEM: 複雑形状・マルチフィジックスに有利。SPH等のメッシュフリー法も発展中。

マトリクスソルバーの選定指針

問題規模と特性に応じた最適なソルバー選択のガイドライン。

ソルバー種別詳細・推奨条件
圧力-速度連成(SIMPLE系)SIMPLE: 標準的だが収束が遅い。SIMPLEC: 圧力補正の緩和が改善。PISO: 非定常問題に適する。
連立系ソルバーAMG(代数的マルチグリッド): 大規模問題の標準。ILU前処理: メモリ効率良好。ブロックGauss-Seidel: 連成系に有効。
DOF別推奨〜10⁵セル: SIMPLE+AMG、10⁵〜10⁷セル: SIMPLEC+AMG+並列、10⁷セル〜: 結合型ソルバー(Coupled Solver)を検討

時間積分法と収束判定

ソルバー内部の制御パラメータと収束判定基準について記述する。

CFL条件(クーラン数)

陽解法: CFL ≤ 1が安定条件。陰解法: CFL > 1でも安定だが、精度と反復回数に影響。LES: CFL ≈ 1を推奨。物理的意味: 1タイムステップで情報が1セル以上進まないこと。

残差モニタリング

連続の式・運動量・エネルギーの各残差が3〜4桁低下で収束と判断。質量保存の残差は特に重要。

緩和係数

圧力: 0.2〜0.3、速度: 0.5〜0.7が一般的な初期値。発散する場合は緩和係数を下げる。収束後は上げて加速。

非定常計算の内部反復

各タイムステップ内で定常解に収束するまで反復。内部反復数: 5〜20回が目安。残差がタイムステップ間で変動する場合は時間刻みを見直す。

数値解法の直感的理解

FVMのイメージ

有限体積法は「会計帳簿」に似ている。各セル(口座)について「入ってくる量」と「出ていく量」の収支を厳密に管理する。隣のセルに流れ出た量は、そのセルに流れ込む量と完全に一致する——これが「保存性」であり、流体解析で質量やエネルギーが勝手に増減しないことを保証する。

SIMPLE法のたとえ

SIMPLE法は「交互に調整する」手法。まず速度を仮に求め(予測ステップ)、その速度で質量保存が満たされるよう圧力を補正し(補正ステップ)、補正された圧力で速度を修正する——このキャッチボールを繰り返して正解に近づく。2人で棚を水平にする作業に似ている:片方が高さを合わせ、もう片方がバランスを取り、これを交互に繰り返す。

風上差分のたとえ

風上差分は「川の流れに立って上流の情報を重視する」手法。川の中にいる人が下流を見ても水の出所は分からない——上流の情報が下流を決めるという物理を反映した離散化手法。精度は1次だが、流れの方向を正しく捕捉するため安定性が高い。

CFDメッシュの品質管理や乱流モデルの選定に悩む時間を、もっと創造的な設計作業に使えたら。 — Project NovaSolverはそんな実務者の声から生まれました。

渦度方程式の実務で感じる課題を教えてください

Project NovaSolverは、CAEエンジニアが日々直面する課題——セットアップの煩雑さ、計算コスト、結果の解釈——の解決を目指しています。あなたの実務経験が、より良いツール開発の原動力になります。

実務課題アンケートに回答する →