非圧縮性Navier-Stokes方程式

カテゴリ: 流体解析(CFD) | 統合版 2026-04-06
CAE visualization for navier stokes incompressible theory - technical simulation diagram
非圧縮性Navier-Stokes方程式

非圧縮性Navier-Stokes方程式の理論基礎

概要

🧑‍🎓

先生、Navier-Stokes方程式ってCFDの根幹ですよね。非圧縮性の場合を詳しく教えてください。


🎓

CFDで解く方程式の中で最も基本的かつ重要なものだ。非圧縮性NS方程式はニュートン流体の粘性流れを記述する。連続の式と運動量方程式のセットで構成される。


支配方程式

🎓

非圧縮性NS方程式は次の2式だ。


連続の式質量保存:

$$ \nabla \cdot \mathbf{u} = 0 $$

運動量方程式(ニュートンの第2法則):

$$ \frac{\partial \mathbf{u}}{\partial t} + (\mathbf{u} \cdot \nabla)\mathbf{u} = -\frac{1}{\rho}\nabla p + \nu \nabla^2 \mathbf{u} + \mathbf{f} $$

🧑‍🎓

各項の物理的意味を教えてください。


🎓

成分表示($x$方向)で書くとわかりやすい。


$$ \underbrace{\frac{\partial u}{\partial t}}_{\text{非定常項}} + \underbrace{u\frac{\partial u}{\partial x} + v\frac{\partial u}{\partial y} + w\frac{\partial u}{\partial z}}_{\text{移流項(慣性力)}} = \underbrace{-\frac{1}{\rho}\frac{\partial p}{\partial x}}_{\text{圧力勾配}} + \underbrace{\nu\left(\frac{\partial^2 u}{\partial x^2} + \frac{\partial^2 u}{\partial y^2} + \frac{\partial^2 u}{\partial z^2}\right)}_{\text{粘性項(拡散)}} + \underbrace{f_x}_{\text{外力}} $$

Reynolds数

🧑‍🎓

Reynolds数ってNS方程式とどう関係するんですか?


🎓

方程式を代表速度 $U$、代表長さ $L$ で無次元化すると、唯一のパラメータとしてRe数が現れる。


$$ \frac{\partial \mathbf{u}^*}{\partial t^*} + (\mathbf{u}^* \cdot \nabla^*)\mathbf{u}^* = -\nabla^* p^* + \frac{1}{Re}\nabla^{*2}\mathbf{u}^* $$

$$ Re = \frac{UL}{\nu} = \frac{\text{慣性力}}{\text{粘性力}} $$

Re範囲流れの特徴典型例
Re < 1クリープ流(Stokes流)微生物の遊泳、MEMS
1 < Re < 2300層流管内流(発達流)
2300 < Re < 4000遷移域管内流(不安定)
Re > 4000乱流ほとんどの工業的流れ

方程式の数学的性質

🧑‍🎓

NS方程式の解の存在と一意性って未解決問題なんですよね?


🎓

その通り。3次元NS方程式の滑らかな解の大域的存在と一意性はクレイ数学研究所のミレニアム懸賞問題の一つだ(賞金100万ドル)。工学的にはDNS(直接数値シミュレーション)で有限時間・有限領域の解は得られているが、数学的な証明は未だ成されていない。


🎓

方程式の非線形性は移流項 $(\mathbf{u}\cdot\nabla)\mathbf{u}$ に起因する。この項が乱流、カオス、渦崩壊などの複雑な現象を生み出す源泉だ。

Coffee Break よもやま話

100万ドルの懸賞、誰も解けていない

非圧縮性Navier-Stokes方程式、実は「解が必ず存在するか」すら数学的に証明されていません。クレイ数学研究所が2000年に選んだ「ミレニアム問題」7問のうちの1つで、解決したら100万ドル(約1.5億円)もらえます。エンジニアが毎日CFDで回している計算は、厳密には「本当に解があるかわからない方程式を数値的に解いている」という、なかなかシュールな状況なんです。しかも残り6問のうちすでに解かれたのは1問だけ——Navier-Stokesはいまだ人類未踏の領域です。

非圧縮性Navier-Stokes方程式の数値計算手法

空間離散化

🧑‍🎓

NS方程式を数値的に解くにはどうするんですか?


🎓

有限体積法(FVM)が商用CFDの主流だ。計算領域をセルに分割し、各セルで保存則の積分形を離散化する。


$$ \frac{d}{dt}\int_V \rho\mathbf{u}\,dV + \oint_S \rho\mathbf{u}(\mathbf{u}\cdot\mathbf{n})\,dS = -\oint_S p\mathbf{n}\,dS + \oint_S \mu(\nabla\mathbf{u})\cdot\mathbf{n}\,dS $$

移流項の離散化

🎓

移流項のスキーム選択は精度と安定性に直結する。


スキーム精度安定性数値拡散用途
1次風上$O(h)$非常に安定初期計算、収束困難時
2次風上$O(h^2)$安定一般的な定常計算
QUICK$O(h^3)$やや不安定高精度計算
中心差分$O(h^2)$不安定(高Pe)なしLES
Bounded CD$O(h^2)$安定最小限LESの標準
🧑‍🎓

LESで中心差分を使うのはなぜですか?


🎓

数値拡散がSGS渦を人工的に減衰させてしまうからだ。LESでは物理的な渦はできるだけ保存し、SGSモデルでのみ散逸させる必要がある。ただし中心差分はチェッカーボード不安定を起こしやすいので、リミッター付きのBounded Central Differenceが実用的だ。


時間積分

🎓

非定常計算の時間積分スキームを比較しよう。


スキーム精度安定性CFL制約
1次陰的(後退Euler)$O(\Delta t)$無条件安定なし
2次陰的(BDF2)$O(\Delta t^2)$無条件安定なし
Crank-Nicolson$O(\Delta t^2)$無条件安定振動の可能性
陽的(RK4等)$O(\Delta t^4)$条件付き安定$CFL < 1$

CFL条件

🧑‍🎓

CFL数ってよく聞きますけど、正確にはどういう意味ですか?


🎓

Courant-Friedrichs-Lewy数は、1タイムステップで情報がセル何個分移動するかの指標だ。


$$ CFL = \frac{u\Delta t}{\Delta x} $$

陽的解法では $CFL < 1$ が安定性の必要条件。陰的解法には制約はないが、時間精度のためには $CFL < 5$〜20程度が推奨される。LESでは $CFL < 1$ を守るのが一般的だ。


線形ソルバー

🎓

離散化後の連立方程式を解く線形ソルバーの選択も重要だ。


対象方程式推奨ソルバー備考
圧力(ポアソン方程式)AMG (代数的マルチグリッド)収束が最も困難、全計算時間の50〜80%
運動量ILU前処理付きBiCGSTAB比較的収束が容易
スカラー(温度等)Gauss-Seidel or ILU線形問題
Coffee Break よもやま話

SIMPLE法誕生秘話——圧力と速度の「神経戦」

非圧縮性流れの最大の難関は「圧力方程式がない」ことです。速度と圧力を同時に解こうとすると連立方程式が破綻する。1972年にPatankarとSpaldingがこの難問を解くアルゴリズム「SIMPLE法」を発表しました。アイデアは「まず圧力を仮置きして速度を解き、そこから圧力を補正して速度を再計算する」という反復ループ。シンプルな考え方に見えますが、このアルゴリズムなしに現代の商用CFDコードはほぼ存在できません。毎日Fluentで「Iterations」を眺めているあの画面の裏側は、半世紀前の2人の知恵が動いています。

非圧縮性Navier-Stokes方程式の実務適用

実践ガイド

🧑‍🎓

実務でNS方程式を解くときの基本的なワークフローを教えてください。


🎓

以下の手順で進めるのが標準的だ。


解析フロー

1. 問題の定式化: Re数を計算し、層流/乱流を判定。非圧縮条件($Ma < 0.3$)を確認

2. 形状とメッシュ: CADから流体領域を抽出、境界層メッシュ含むメッシュ生成

3. 物理モデル設定: 乱流モデル、定常/非定常、エネルギー方程式の有無

4. 境界条件: 入口(速度 or 圧力)、出口(圧力)、壁面(no-slip)、対称面

5. 求解: ソルバー実行、残差・モニタリング量の確認

6. 後処理検証: 理論解やベンチマークとの比較、メッシュ収束性の確認

乱流モデルの選定ガイド

🧑‍🎓

乱流モデルが多すぎて選べないんですけど…


🎓

最もよく使われるモデルの使い分けを整理しよう。


モデル計算コスト剥離の予測推奨用途
Spalart-Allmaras中程度航空機外装、添付流
Realizable k-epsilon弱い管内流、混合、初期検討
SST k-omega良好汎用。迷ったらこれ
Transition SST遷移も捕捉低Re翼型、タービン
DES/IDDES非常に良好大規模剥離、非定常力
LES (WALE/Sigma)非常に高最も正確音響、燃焼、学術

メッシュ収束性の確認

🧑‍🎓

メッシュ収束性ってどうやって確認するんですか?


🎓

GCI(Grid Convergence Index)法が推奨される。3水準のメッシュ(粗・中・密)で注目量を計算し、Richardson外挿で真値を推定する。


$$ GCI_{\text{fine}} = \frac{F_s |\epsilon|}{r^p - 1} $$

ここで $F_s = 1.25$(安全係数)、$\epsilon$ は中密と密の結果の差、$r$ はメッシュ比、$p$ は収束次数。GCIが5%以下なら十分な収束と判断できる。


典型的なベンチマーク問題

問題Re検証量参照データ
Lid-driven cavity100〜10000中心線速度分布Ghia et al. (1982)
円柱後流40〜200Strouhal数、Cd実験多数
後ろ向きステップ36000再付着長さDriver & Seegmiller
NACA0012翼型$6\times10^6$Cl, Cd風洞データ
🧑‍🎓

まずベンチマークで自分の計算環境を検証してから、本番の解析に入るべきなんですね。


🎓

その通り。ベンチマーク問題で良い結果が出せないなら、実問題の結果も信頼できない。

Coffee Break よもやま話

「収束した」は「正しい」ではない

CFDの実務あるある話。残差が1e-6まで下がって「よし収束した!」と喜んでいたら、流量を確認すると入口と出口でバランスが取れていない——なんてことが現場では普通に起こります。非圧縮性N-S方程式を解くとき、残差は「反復計算のブレ幅」であって「物理的な正確さ」ではない。実際のチェックリストは①連続の式の質量収支、②エネルギーバランス、③壁面y+の確認など複数あります。「収束確認=残差確認」だけで済ませると、見た目はきれいだけど物理的に破綻した結果を堂々と報告書に載せることになります。

非圧縮性Navier-Stokes方程式のソフトウェア比較

主要CFDソルバーの比較

🧑‍🎓

非圧縮NS方程式を解く主要なソルバーを比較してもらえますか?


🎓

商用・オープンソースの主要ソルバーを整理しよう。


ソルバー開発元離散化主な強み
Ansys FluentAnsys Inc.FVM (セル中心)汎用性、GUI、サポート
Ansys CFXAnsys Inc.FVM (頂点中心)結合型ソルバー、ターボ機械
STAR-CCM+SiemensFVM (セル中心)自動メッシュ、ポリヘドラル
OpenFOAMオープンソースFVM (セル中心)自由度、拡張性、無償
COMSOLCOMSOL ABFEMマルチフィジックス連成

ソルバータイプの違い

🧑‍🎓

Fluent のPressure-Based と Density-Based ってどう違うんですか?


🎓

非圧縮性流れでは Pressure-Based ソルバーを使う。


Pressure-BasedDensity-Based
対象非圧縮〜低速圧縮高速圧縮性(Ma > 0.3)
圧力の決定圧力補正法状態方程式
連成Segregated or CoupledCoupled(暗黙的)
適用Ma数0〜数Ma程度全Ma数

OpenFOAMのソルバー選択

🧑‍🎓

OpenFOAMはソルバーがたくさんあって迷います。


🎓

非圧縮性の主要ソルバーを整理しよう。


ソルバー名定常/非定常アルゴリズム用途
simpleFoam定常SIMPLE最も基本的
pisoFoam非定常PISO汎用非定常
pimpleFoam非定常PIMPLE (PISO+SIMPLE)大きいCFL数で安定
icoFoam非定常PISO (層流のみ)学習用、低Re
adjointOptimisationFoam定常随伴法形状最適化

ライセンスとコスト

ソルバーライセンス形態年間コスト目安
Fluent商用(ノードロック/フローティング)数百万円〜
STAR-CCM+商用(トークン制)数百万円〜
OpenFOAMGPL (オープンソース)無償(サポートは有償)
COMSOL CFD Module商用(モジュール別)100万円台〜
🧑‍🎓

OpenFOAMは無料で使えるけど、サポートがないのがネックですね。


🎓

ESI GroupやCFD directが有償サポートを提供している。また、大学や研究機関ではOpenFOAMのコミュニティが充実しているので、情報は入手しやすい。商用ツールは安定性とサポートに対価を払う、という判断だ。

Coffee Break よもやま話

ANSYSもOpenFOAMも、根っこは同じ大学の研究室

主要CFDコードの系譜を辿ると、多くはImperial College London(ロンドン帝国大学)のSpalding教授の研究室に行き着きます。SIMPLE法を発明した研究室です。Fluentの原型もそこから派生し、後にAnsysに買収されました。OpenFOAMも同系統の思想を引き継いでいます。つまり、商用の高級ライセンスを使っていても、フリーのOpenFOAMを使っていても、数値スキームの「DNA」はほぼ共通。ベンダーが違っても計算結果が近いのは、そういう歴史的な理由もあります。

非圧縮性Navier-Stokes方程式の先端研究

先端トピック

🧑‍🎓

NS方程式の数値解法で、最新の動向はどんなものですか?


🎓

いくつかの重要なトレンドを紹介しよう。


DNS(直接数値シミュレーション)の進展

🎓

DNSはNS方程式を乱流モデルなしで直接解く。すべてのスケールを解像するため、セル数は $N \propto Re^{9/4}$ でスケールする。


Re_tauセル数(チャネル流)計算資源
180約$10^6$ワークステーション
1000約$10^9$中規模HPC
5200約$10^{11}$大規模HPC (Lee & Moser 2015)
工業Re ($10^6$以上)$10^{18}$以上現時点で不可能
🧑‍🎓

工業的なReでDNSは当分無理なんですね。


🎓

そう。だからこそRANSやLESの精度向上が重要であり続ける。


GPUによるCFDの加速

🎓

GPUの並列性を活かしたCFDが急速に普及している。


  • Fluent (2024+): Native GPU Solver。最大10倍の高速化
  • AmgX: NVIDIAのAMGライブラリ。圧力ポアソンの高速解法
  • LBM: 格子ボルツマン法はGPUとの相性が特に良い

物理インフォームドニューラルネットワーク (PINN)

🎓

PINNはNS方程式を損失関数に組み込んだニューラルネットワークだ。


$$ \mathcal{L} = \mathcal{L}_{\text{data}} + \lambda_1\mathcal{L}_{\text{momentum}} + \lambda_2\mathcal{L}_{\text{continuity}} $$

メッシュ不要で逆問題にも対応できるが、現時点では高Re乱流の正解法には程遠い。実験データとの融合(データ同化)には有望だ。


高精度手法

🎓

FVMの2次精度を超える手法も進展している。


手法精度特徴
Spectral Element (Nek5000/NekRS)高次(p次)DNS/LESに最適
Discontinuous Galerkin (DG)任意高次衝撃波にも対応
Flux Reconstruction (FR)任意高次DGの効率的実装
Lattice Boltzmann (PowerFLOW)2次空力音響に強い
🧑‍🎓

100年以上前の方程式が、今でもこれほど活発に研究されてるとは驚きです。


🎓

NS方程式は流体力学のすべてを内包している。計算機の進歩とアルゴリズムの革新によって、解ける問題の範囲が着実に広がっている。

Coffee Break よもやま話

DNS計算のとんでもないコスト

乱流の直接数値シミュレーション(DNS)はNavier-Stokes方程式をモデルなしで解く究極の手法ですが、必要なグリッド数がRe数の9/4乗に比例して増えます。自動車まわりの流れ(Re≈10^7)をDNSで解こうとすると、単純計算で地球上のすべてのコンピュータを束ねても計算が終わらない規模になります。現在DNSが実用的なのはせいぜいRe数が数千程度のチャネル流れ。「DNSが使える≒よほど小さい・遅い流れ」と覚えておくと、論文の主張の重さが実感できます。

非圧縮性Navier-Stokes方程式のトラブル対応

トラブルシューティング

🧑‍🎓

NS方程式を解くときによく遭遇するトラブルを教えてください。


🎓

発散(divergence)と非物理的な結果が二大トラブルだ。


1. 計算が発散する

🎓

症状: 残差が急増し、速度や圧力が$10^{20}$等の異常値に。


原因診断対策
CFL数が大きすぎるタイムステップ確認$\Delta t$ を半分にする
メッシュ品質不良最小Orthogonal Quality確認0.1以下のセルを修正
境界条件の矛盾入出口の流量バランスBC見直し
初期条件が不適切初期速度場が非物理的ポテンシャル流で初期化
緩和係数が高すぎるSIMPLE設定確認圧力0.3, 運動量0.5で試行

2. 残差が停滞する

🧑‍🎓

残差が$10^{-3}$くらいで止まっちゃうんですけど…


🎓

対策の優先順位:

1. メッシュ品質の確認・改善

2. 2次精度で計算開始し、1次で初期化してから切替

3. 緩和係数の調整(上げすぎると発散、下げすぎると停滞)

4. Coupled ソルバーに切替(Fluent の場合)

5. 初期条件の改善(粗メッシュの解を補間)


3. 非物理的な逆流

🎓

症状: 出口境界で逆流(Reversed Flow)の警告が大量に出る。


原因: 出口が流れの剥離・再循環領域に近すぎる。


対策:

  • 出口を下流に延長(管径の10〜20倍)
  • Fluentなら Prevent Backflow オプションを有効化
  • 逆流時の温度・乱流量の値を適切に設定

4. 圧力振動(チェッカーボード)

🎓

症状: 圧力場に市松模様状の振動が見られる。


原因: コロケーション格子でのRhie-Chow補間が不十分、またはメッシュの非直交性が高い。


対策:

  • 圧力の離散化を PRESTO! (Fluent) に変更
  • OpenFOAMなら nNonOrthogonalCorrectors を増やす
  • メッシュの直交性を改善

5. 定常計算が収束しない(物理的な原因)

🧑‍🎓

どんなにメッシュを改善しても定常計算が収束しないことがあるんですが…


🎓

流れ自体が非定常の場合がある。 カルマン渦列(Re > 47 で発生)のように、物理的に非定常な流れを定常計算で解こうとすると残差が振動し続ける。このときは非定常計算に切り替えること。モニタリング量の時間変動を確認し、周期的振動が見られたら非定常で解くべきだ。


🧑‍🎓

物理を理解していないと、数値的なトラブルなのか物理的な現象なのか区別がつかないんですね。


🎓

まさにその通り。CFDのデバッグには流体力学の基礎知識が不可欠だ。

Coffee Break よもやま話

発散の犯人、9割は境界条件

「計算が発散した!」——CFD初学者が最初に壁にぶつかるのがこれです。原因として真っ先に疑われるのはメッシュ品質やタイムステップですが、現場の経験則では「発散の原因9割は境界条件の設定ミス」と言われています。例えば、入口を速度境界にして出口も圧力固定にしないと、方程式系が数学的に不定になって発散します。非圧縮性流れは特に圧力境界の設定が繊細で、「少なくとも1か所は圧力を絶対値で固定する」というルールを押さえておくだけで、謎の発散トラブルの大半は防げます。

関連シミュレーター

この分野のインタラクティブシミュレーターで理論を体感しよう

シミュレーター一覧

関連する分野

熱解析V&V・品質保証構造解析
この記事の評価
ご回答ありがとうございます!
参考に
なった
もっと
詳しく
誤りを
報告
参考になった
0
もっと詳しく
0
誤りを報告
0
Written by NovaSolver Contributors
Anonymous Engineers & AI — サイトマップ
プロフィールを見る