無料で使えて手軽な流体シミュレーション・ソフトウェア
CFDの基本原理
本ページでは、数値流体力学(CFD)の原理について、直感的な理解を目指します。Flowsquare+で用いられている、数値手法の詳細はこちらをご覧ください。
シミュレーションの時間前進
数値流体解析(流体数値シミュレーション)では、対象となるシミュレーション領域において、微小時間(\(\Delta t\) 秒)未来の流体に関する方程式を解く操作ステップ(時間ステップ、又はタイムステップ)を繰り返す(時間前進)ことで、流れ場の予測を行います。例えば、\(\Delta t=0.01\) 秒の計算条件で時間ステップを \(100\) 回繰り返すと、シミュレーションで設定する初期の流れ場から、\(0.01\times100=1\) 秒だけ未来の流れ場を得ることができます。
一般的に、時間ステップ幅(\(\Delta t\))が小さくなれば小さくなるほど、数値解析の精度は向上します。しかし、同じ物理時間のシミュレーションに必要な時間ステップ数は増大するため、結果として必要な計算時間が増加します。
- 時間ステップ、又はタイムステップ
- 時間ステップ幅 \(\Delta t\)
- 時間前進
シミュレーションの空間離散化
数値流体解析では、対象となるシミュレーション領域を微小領域に分割(離散化)してそれぞれの離散点(格子点)や微小領域において流体に関する方程式を解きます。例えば、Flowsquare+で採用されているような、直交格子による分割では、縦・横・奥行きが \(L_x, L_y, L_z\) の領域を、それぞれ \(N_x, N_y, N_z\) 個の格子点に分割します。したがって、\(L_x\times L_y\times L_z\) の体積を \(N_x\times N_y\times N_z\) 個の格子点に分割していることになります。
各方向の格子点同士の間隔を格子点間隔と呼び、それぞれ \(\Delta x, \Delta y, \Delta z\) と記述します。したがって、1格子の体積(微小体積)は、\(\Delta x\times \Delta y\times \Delta z\) となります。
一般的に、分割数が増えれば増えるほど(微小体積が小さければ小さいほど)、数値解析の精度は向上します。しかし、流体に関する方程式を解く回数(\(=N_x\times N_y\times N_z\) 回)も増えるので、計算時間が増大します。
- 領域分割
- 格子点
- 格子点間隔 \(\Delta x, \Delta y, \Delta z\)
流体に関する方程式
上では各時間ステップ及び各格子点において、流体に関する方程式を解くと説明しました。この数値流体解析で解く流体に関する方程式を基礎方程式と呼び、一般的にナビエ・ストークス方程式又はそれに基づくモデル化を施した方程式が用いられます。
- 基礎方程式
- モデル化