次元解析とπ定理
理論と物理
次元解析の基本原理
先生、次元解析って「単位をチェックする」くらいの認識なんですけど、CFDでそんなに重要なんですか?
それだけじゃないよ。次元解析は物理問題を支配する独立なパラメータの数を最小化する強力な手法だ。Buckinghamのπ定理がその核心にある。
π定理の主張はこうだ。ある物理現象が $n$ 個の物理量で記述され、それらが $k$ 個の基本次元(質量M、長さL、時間Tなど)を含むなら、その現象は $n - k$ 個の独立な無次元数で完全に記述できる。
具体的にはどういうことですか?
例えば、円管内の圧力損失 $\Delta p$ を考えよう。関連する物理量は $\Delta p, \rho, U, D, \mu, L, \varepsilon$ の7つ。基本次元はM, L, Tの3つだから、$7 - 3 = 4$ 個の無次元数で表せる。
ここで $\text{Re} = \rho U D / \mu$ がレイノルズ数、$L/D$ がアスペクト比、$\varepsilon/D$ が相対粗さだ。
7個の変数が4個に減るのは大きいですね!
主要な無次元数とその物理的意味
CFDで頻出する無次元数を整理しよう。各々が「2つの力や効果の比」を表している。
| 無次元数 | 定義 | 物理的意味 |
|---|---|---|
| Reynolds数 Re | $\rho UL/\mu$ | 慣性力/粘性力 |
| Mach数 Ma | $U/c$ | 流速/音速(圧縮性の指標) |
| Froude数 Fr | $U/\sqrt{gL}$ | 慣性力/重力 |
| Weber数 We | $\rho U^2 L/\sigma$ | 慣性力/表面張力 |
| Strouhal数 St | $fL/U$ | 非定常振動の特性 |
| Prandtl数 Pr | $\nu/\alpha = c_p\mu/k$ | 運動量拡散/熱拡散 |
| Nusselt数 Nu | $hL/k$ | 対流伝熱/伝導伝熱 |
| Grashof数 Gr | $g\beta\Delta T L^3/\nu^2$ | 浮力/粘性力 |
Reynolds数は知ってましたけど、こんなにたくさんあるんですね。
問題に応じて適切な無次元数を選ぶのが次元解析の腕の見せどころだよ。例えば自然対流では $\text{Gr}$ と $\text{Pr}$ の積であるRayleigh数 $\text{Ra} = \text{Gr} \cdot \text{Pr}$ が支配パラメータになる。
Navier-Stokes方程式の無次元化
次元解析をNavier-Stokes方程式に適用するとどうなるんですか?
代表長さ $L$、代表速度 $U$、代表時間 $L/U$、代表圧力 $\rho U^2$ で無次元化すると、非圧縮性N-S方程式は次のようになる。
この形から分かるように、Re が大きいほど粘性項の寄与が小さくなり、Fr が大きいほど重力項の影響が小さくなる。CFDの解は結局これらの無次元数で決まるんだ。
だから風洞試験でRe数を合わせることが大事なんですね!
その通り。幾何形状が相似でReが一致すれば、流れ場の無次元解は同一になる。これが動的相似則だ。
フルードの模型船実験——スケール則の発見
19世紀、造船技術者ウィリアム・フルードは「模型船の抵抗測定から実船の性能を予測できるか」という問題に取り組みました。彼が発見したのは「フルード数(Fr = V/√(gL))が等しければ波形は幾何学的に相似になる」というスケール則です。これがπ定理の原型の一つ。現代でも船舶設計は模型水槽実験とCFDの組み合わせが基本で、フルード数の一致は必須条件です。次元解析がなければ、縮尺1/100の模型実験の結果を実船に外挿する正当な根拠がそもそも存在しません。
各項の物理的意味
- 時間項 $\partial(\rho\phi)/\partial t$:蛇口をひねった瞬間を思い浮かべてください。最初は水がバタバタと不安定に出て、しばらくすると安定した流れになりますよね? この「変化している最中」を記述するのが時間項です。心臓の拍動で血流が脈打つのも、エンジンのバルブが開閉するたびに流れが変動するのも、すべて非定常現象。では定常解析とは? 「十分時間が経って流れが落ち着いた後」だけを見る——つまりこの項をゼロにする。計算コストが大幅に下がるため、まず定常で解いてみるのがCFDの基本戦略です。
- 対流項 $\nabla \cdot (\rho \mathbf{u} \phi)$:川に落ち葉を落としたらどうなりますか? 流れに乗って下流に運ばれますよね。これが「対流」——流体の動きが物を運ぶ効果です。暖房の温風が部屋の端まで届くのも、空気という「運び屋」が熱を対流で輸送しているから。ここが面白いところ——この項は「速度×速度」を含むため非線形です。つまり、流れが速くなるとこの項が急激に強くなり、制御が難しくなる。これが乱流の根本原因です。よくある勘違い:「対流と伝導は同じようなもの」→ 全然違います! 対流は流れが運ぶ、伝導は分子が伝える。桁違いの効率差があります。
- 拡散項 $\nabla \cdot (\Gamma \nabla \phi)$:コーヒーにミルクを入れて放置したことはありますか? かき混ぜなくても、しばらく経つと自然に混ざりますよね。あれが分子拡散です。では次の質問——ハチミツとお水、どちらが流しやすいですか? 当然お水ですよね。ハチミツは粘性($\mu$)が高いから流れにくい。粘性が大きいと拡散項が強くなり、流体は「もったりした」動きになります。レイノルズ数が小さい流れ(ゆっくり、ドロドロ)では拡散が支配的。逆にRe数が大きい流れでは対流が圧倒し、拡散は脇役になります。
- 圧力項 $-\nabla p$:注射器のピストンを押すと、液体が針先から勢いよく出ますよね? なぜでしょう? ピストン側が高圧、針先が低圧——この圧力差が流体を押す力になるからです。ダムの放水も同じ原理。天気図で等圧線がギュッと密になっている場所では? そう、強風が吹きます。「圧力差があるところに流れが生まれる」——これがナビエ-ストークス方程式の圧力項の物理的意味。ここでの勘違いポイント:CFDの「圧力」は絶対圧ではなくゲージ圧のことが多い。圧縮性解析に切り替えたとたんに結果がおかしくなる場合、絶対圧/ゲージ圧の混同が原因かもしれません。
- ソース項 $S_\phi$:暖められた空気が上に昇る——なぜでしょう? 周囲より軽く(密度が低く)なったから、浮力で押し上げられるのです。この浮力はソース項として方程式に追加されます。他にも、ガスコンロの炎で化学反応熱が発生する、工場の電磁ポンプで金属溶湯にローレンツ力がかかる…これらはすべて「外部から流体にエネルギーや力を注入する」作用であり、ソース項で表現します。ソース項を忘れるとどうなるか? 自然対流の解析で浮力を入れ忘れると、流体は一切動かない——冬の部屋で暖房をつけたのに暖かい空気が上に行かない、という物理的にありえない結果になります。
仮定条件と適用限界
- 連続体仮定:クヌッセン数 Kn < 0.01(分子平均自由行程 ≪ 代表長さ)で成立
- ニュートン流体仮定:せん断応力と歪み速度が線形関係(非ニュートン流体では粘度モデルが必要)
- 非圧縮性仮定(Ma < 0.3の場合):密度を一定として扱う。マッハ数0.3以上では圧縮性効果を考慮
- ブシネスク近似(自然対流):密度変化を浮力項のみで考慮し、他の項では一定密度を使用
- 適用外ケース:希薄気体(Kn > 0.1)、超音速・極超音速流れ(衝撃波捕捉が必要)、自由表面流れ(VOF/Level Set等が必要)
次元解析と単位系
| 変数 | SI単位 | 注意点・換算メモ |
|---|---|---|
| 速度 $u$ | m/s | 入口条件で体積流量から換算する際、断面積の単位に注意 |
| 圧力 $p$ | Pa | ゲージ圧と絶対圧の区別。圧縮性解析では絶対圧を使用 |
| 密度 $\rho$ | kg/m³ | 空気: 約1.225 kg/m³@20°C、水: 約998 kg/m³@20°C |
| 粘性係数 $\mu$ | Pa·s | 動粘性係数 $\nu = \mu/\rho$ [m²/s] との混同に注意 |
| レイノルズ数 $Re$ | 無次元 | $Re = \rho u L / \mu$。層流/乱流遷移の判定指標 |
| CFL数 | 無次元 | $CFL = u \Delta t / \Delta x$。時間刻みの安定性に直結 |
数値解法と実装
CFDにおける無次元化の実装
実際にCFDで次元解析をどう使うんですか? ソルバーに入れるときは有次元ですよね?
いい質問だ。実装には2つのアプローチがある。
アプローチ1: 有次元で計算し、後処理で無次元化
- 物理量をそのままSI単位で入力
- 結果を代表量で割って無次元化(例: $C_p = \Delta p / (\frac{1}{2}\rho U_\infty^2)$)
- Ansys FluentやSTAR-CCM+ではこちらが主流
アプローチ2: 最初から無次元化した方程式を解く
- 代表量で正規化した変数を入力
- 研究用コードやOpenFOAMのカスタムソルバーで使われる
- Re数だけをパラメータとして設定できる利点がある
商用ソフトだと有次元が普通なんですね。
相似則を用いたスケーリング手法
次元解析の最大の応用が相似則によるスケーリングだ。実機と模型で一致させるべき無次元数を特定し、実験条件を決定する。
例えば、自動車の風洞試験では1/5スケール模型を使う場合を考えよう。
同じ空気(同じ $\rho, \mu$)を使うなら、$U_m = 5 \times U_f$ が必要になる。実車100 km/hなら模型は500 km/hで、圧縮性効果が無視できなくなる。
完全な相似は難しいこともあるんですね。
そうだ。完全相似が不可能な場合は部分相似を使う。支配的な無次元数だけ一致させ、影響の小さい無次元数は妥協する。船舶ではFr数を合わせ(造波抵抗)、Re数の不一致は補正式で対処するのが典型だ。
CFDでの無次元数の計算と監視
CFDの結果から無次元数を計算するときの注意点はありますか?
代表量の選び方が結果の解釈を左右する。以下の点に注意が必要だ。
| 無次元量 | 代表量の選択 | 注意点 |
|---|---|---|
| 抗力係数 $C_D$ | 前方投影面積 $A$、$U_\infty$ | 面積の定義を統一すること |
| 圧力係数 $C_p$ | 自由流速 $U_\infty$、静圧 $p_\infty$ | 基準圧力の選択 |
| 摩擦係数 $C_f$ | 壁面せん断応力 $\tau_w$ | 局所値 vs. 平均値の区別 |
| $y^+$ | $u_\tau = \sqrt{\tau_w/\rho}$ | 壁面第一層メッシュの品質指標 |
特に $y^+$ は乱流モデルの適用可否を判断する重要な無次元数だ。壁関数モデルなら $30 < y^+ < 300$、壁面解像モデルなら $y^+ \approx 1$ が目安になる。
$y^+$ がこんなところで次元解析とつながるとは思いませんでした。
無次元数は「計算回数を劇的に減らす」道具
次元解析の実務的な威力は「パラメータ数の削減」にあります。例えば円管内の圧力損失は「流速V、密度ρ、粘性μ、管径D、長さL、粗さε」の6変数に依存しそうですが、π定理を使うと「Re数とε/D(相対粗さ)」の2変数の関数に圧縮されます。これがムーディ線図です。6変数を独立に変化させる実験計画なら6^3=216回の試験が必要なところ、無次元整理すれば数十回で済む。CFDのパラメータスタディでも同じで、まず無次元数で整理すると計算ケース数を大幅に削減できます。
風上差分(Upwind)
1次風上: 数値拡散が大きいが安定。2次風上: 精度向上するが振動のリスク。高レイノルズ数流れでは必須。
中心差分(Central Differencing)
2次精度だが、Pe数 > 2で数値振動が発生。低レイノルズ数の拡散支配流れに適する。
TVDスキーム(MUSCL、QUICK等)
リミッタ関数により数値振動を抑制しつつ高精度を維持。衝撃波や急勾配の捕捉に有効。
有限体積法 vs 有限要素法
FVM: 保存則を自然に満足。CFDの主流。FEM: 複雑形状・マルチフィジックスに有利。SPH等のメッシュフリー法も発展中。
CFL条件(クーラン数)
陽解法: CFL ≤ 1が安定条件。陰解法: CFL > 1でも安定だが、精度と反復回数に影響。LES: CFL ≈ 1を推奨。物理的意味: 1タイムステップで情報が1セル以上進まないこと。
残差モニタリング
連続の式・運動量・エネルギーの各残差が3〜4桁低下で収束と判断。質量保存の残差は特に重要。
緩和係数
圧力: 0.2〜0.3、速度: 0.5〜0.7が一般的な初期値。発散する場合は緩和係数を下げる。収束後は上げて加速。
非定常計算の内部反復
各タイムステップ内で定常解に収束するまで反復。内部反復数: 5〜20回が目安。残差がタイムステップ間で変動する場合は時間刻みを見直す。
SIMPLE法のたとえ
SIMPLE法は「交互に調整する」手法。まず速度を仮に求め(予測ステップ)、その速度で質量保存が満たされるよう圧力を補正し(補正ステップ)、補正された圧力で速度を修正する——このキャッチボールを繰り返して正解に近づく。2人で棚を水平にする作業に似ている:片方が高さを合わせ、もう片方がバランスを取り、これを交互に繰り返す。
風上差分のたとえ
風上差分は「川の流れに立って上流の情報を重視する」手法。川の中にいる人が下流を見ても水の出所は分からない——上流の情報が下流を決めるという物理を反映した離散化手法。精度は1次だが、流れの方向を正しく捕捉するため安定性が高い。
実践ガイド
π定理の適用手順
実際にπ定理を使って無次元数を導出する手順を教えてください!
ステップバイステップで説明しよう。熱交換器の伝熱問題を例にする。
Step 1: 関連する物理量をリストアップ
伝熱率 $h$、管径 $D$、流速 $U$、密度 $\rho$、粘度 $\mu$、熱伝導率 $k$、比熱 $c_p$ の7量。
Step 2: 基本次元を確認
M, L, T, $\Theta$(温度)の4つ。
Step 3: 無次元数の個数を決定
$7 - 4 = 3$ 個のπグループ。
Step 4: 繰り返し変数を選択
$\rho, U, D, k$ の4つを選ぶ(基本次元の数と同じ)。
Step 5: 各πグループを構成
Dittus-Boelterの相関式 $\text{Nu} = 0.023\,\text{Re}^{0.8}\,\text{Pr}^{0.4}$ はここから来てるんですね!
その通り。π定理が無次元数の「形」を決め、実験や数値計算が係数と指数を決定する。
CFD解析における単位系の管理
単位系のミスで計算結果がおかしくなったことがあるんですけど…
よくある失敗だ。特に注意すべきケースを整理しよう。
| 問題パターン | 具体例 | 影響 |
|---|---|---|
| SI/CGS混在 | 粘度を Pa・s と poise で混同 | Re数が100倍ずれる |
| mm単位の形状にSI物性値 | 長さmm、密度kg/m^3 | 圧力が10^6倍ずれる |
| 角度 deg/rad | 乱流強度の入力 | 境界条件が全く異なる |
| 温度 K/C | 浮力計算でのΔT | Gr数が不正確になる |
Ansys Fluentではmm単位系で形状をインポートした場合、密度を $\text{tonne/mm}^3$ 、粘度を $\text{MPa}\cdot\text{s}$ に変換するか、形状をm単位に変換してからインポートする必要がある。
Fluentでmm形状を使うとき、物性値の変換が必要なんですね。
検証用ベンチマーク問題
次元解析の理解を確認するためのベンチマーク問題を紹介しよう。
1. 円柱まわりの流れ(Re依存性の確認)
- Re = 40: 定常双子渦、$C_D \approx 1.5$
- Re = 100: カルマン渦列発生、$\text{St} \approx 0.16$
- Re = 1000: 乱流遷移開始
- 異なるスケール($D$ と $U$ の組み合わせ)でRe数を一致させ、同じ $C_D$ が得られることを検証
2. 管内層流(Hagen-Poiseuille流れ)
- 理論解: $f = 64/\text{Re}$(Darcy摩擦係数)
- 助走区間長: $L_e/D \approx 0.06\,\text{Re}$
- CFDの結果がこの関係に乗ることを確認
理論解のある問題で検証するのが基本なんですね。次元解析で予測される依存性が再現されるか確認すればいいわけだ。
単位チェックは最強のデバッグ手法
「計算結果がおかしい」と思ったとき、まず単位を確認するのがエンジニアの鉄則です。次元解析の視点で言うと、方程式の両辺の次元が一致しないならどこかに計算ミスがあります。逆に「次元が合っていれば正しい保証はないが、合っていなければ絶対に間違い」です。実務でよくあるのはSI単位とフィート・ポンド単位の混在ミス。1999年に火星探査機マーズ・クライメート・オービターが火星大気に激突して消えた事故の原因も、ニュートン×秒とポンド・フォース×秒の単位混同でした。次元解析は命に関わる話です。
解析フローのたとえ
CFDの解析フローは「水族館の水槽を設計する」感覚で考えてみてください。まず水槽の形を決め(計算領域)、水の入り口と出口を設計し(境界条件)、ポンプの強さを設定する(流量条件)。魚がどう泳ぐか見たければ粒子追跡。水温が気になれば熱解析を追加。…どうですか? 意外と直感的ではありませんか?
初心者が陥りやすい落とし穴
「y+って何ですか?」——この質問が出たら要注意。壁面近くのメッシュ解像度を表すy+は、CFDの結果精度を左右する最重要パラメータの1つ。壁関数を使うなら30〜300、壁を完全に解像するなら1以下。これを確認せずに「摩擦抵抗が合わない!」と悩む人がとても多い。体温計の先端をちゃんと脇に挟まないで「熱がないのに37.5度って出た!」と慌てているようなものです。
境界条件の考え方
入口の境界条件は「蛇口をどのくらい開けるか」と同じ。ちょろちょろ出すか(低速)、全開にするか(高速)。でもCFDではもう一つ——「どのくらい暴れた水を出すか」(乱流強度)も指定する必要があります。蛇口の開け方を間違えると、下流のシンク全体の流れが変わりますよね? CFDでも入口条件のミスは下流全体に波及します。
ソフトウェア比較
主要CFDツールにおける無次元数の扱い
各CFDソフトで無次元数をどう扱っているのか教えてください。
商用ソフトごとに無次元数の参照値設定やレポート機能が異なる。比較してみよう。
Ansys Fluent
Fluentでは Reference Values パネルで代表量(速度、長さ、面積、密度、温度など)を設定する。ここで設定した値が $C_D$, $C_L$, $C_p$, Nu などの無次元量の計算基準になる。
- Report > Forces で抗力・揚力係数を出力
- Surface Integrals で壁面の $y^+$ 分布を確認
- Custom Field Function で任意の無次元数を定義可能
- TUIコマンド:
/report/reference-values
Ansys CFX
CFXではCEL(CFX Expression Language)を使って無次元数を直接定義できる。
Re = density velocity length / viscosityのような式を変数として登録- モニターポイントで無次元数の収束履歴を追跡可能
- 結合型ソルバーのため、圧力基準の選択が結果に影響しにくい
Simcenter STAR-CCM+
STAR-CCM+ではField Functionとして無次元数を定義する。
- 組み込みの $C_D$, $C_L$ レポート機能あり
- Dimensionless Wall Distance($y^+$)はデフォルトで計算される
- パラメトリックスタディでRe数を変化させたDOE(実験計画法)が容易
- Javaマクロで自動化可能
OpenFOAM
OpenFOAMでは functionObjects で無次元数を計算する。
forceCoeffs: 抗力・揚力係数の計算。lRef,Aref,magUInfをcontrolDictに指定yPlus: 壁面 $y^+$ の計算(postProcess -func yPlus)fieldAverage: 時間平均の無次元量- カスタム無次元数は
codedfunctionObject で任意に定義可能
単位系の設定比較
各ソフトの単位系の扱いってどう違うんですか?
| ツール | 単位系 | 注意点 |
|---|---|---|
| Fluent | SI/CGS/カスタム選択可 | 内部はすべてSI。入力時に変換される |
| CFX | SI固定 | 入力時にCELで単位付き数値を指定 |
| STAR-CCM+ | SI/カスタム選択可 | Units Manager で全体管理 |
| OpenFOAM | 暗黙のSI | 単位チェック機能あり(dimensionSet) |
OpenFOAMの dimensionSet は独特で、[kg m s K mol A cd] の7つの指数で次元を管理する。例えば粘度は [0 2 -1 0 0 0 0](動粘度 $\nu$ の場合)。次元が合わない演算をするとコンパイル時にエラーが出る仕組みだ。
OpenFOAMは次元チェックが厳密なんですね。バグ防止に良さそう。
相似則を活用したパラメトリックスタディ
次元解析の実務的な価値は、パラメータスタディの効率化にある。
例えば、配管系の圧力損失を様々な流量・流体で評価したい場合、有次元パラメータの組み合わせは膨大になるが、Re数と相対粗さ $\varepsilon/D$ の2パラメータで整理すれば、Moody線図として1枚のグラフに集約できる。
Moody線図自体が次元解析の産物だったんですね!
その通り。CFDでも同じ発想で、無次元数の空間でパラメトリックスタディを設計すれば、計算ケース数を大幅に削減できる。STAR-CCM+のDesign Managerやmodeller連携が特にこの用途に向いている。
商用コードの「無次元化」設定に要注意
FluentやStarCCM+は内部で無次元化した形で計算しているわけではなく、SI単位系で計算します。一方、研究コードや一部の専門ソルバーは無次元化して計算し、出力も無次元値で返すものがあります。この違いを知らないと、結果を比較するときに桁がまったく合わないという混乱が起きます。また、CFDの検証論文でよく使われる「ベンチマークRe数」の条件を商用コードで再現するには、物性値・速度・形状寸法を明示的に設定してRe数を合わせる必要があります。「Re=1000で解きたい」からといって入力にRe=1000と入れる場所はありません。
選定で最も重要な3つの問い
- 「何を解くか」:次元解析とπ定理に必要な物理モデル・要素タイプが対応しているか。例えば、流体ではLES対応の有無、構造では接触・大変形の対応能力が差になる。
- 「誰が使うか」:初心者チームならGUIが充実したツール、経験者ならスクリプト駆動の柔軟なツールが適する。自動車のAT車(GUI)とMT車(スクリプト)の違いに似ている。
- 「どこまで拡張するか」:将来の解析規模拡大(HPC対応)、他部門への展開、他ツールとの連携を見据えた選択が長期的なコスト削減につながる。
先端技術
不完全相似と補正手法
完全な動的相似が取れないケースではどうするんですか?
実務では完全相似が取れないことのほうが多い。その場合の対処法がいくつかある。
1. 部分相似 + 経験的補正
船舶分野のFroudeの方法が典型だ。模型試験でFr数を合わせ、Re数の不一致による摩擦抵抗の差は、ITTC 1957の摩擦線で補正する。
2. 歪み模型(Distorted model)
河川模型のように、水平・垂直スケール比を変える手法。Fr数は保存するが、幾何相似は崩れる。
3. 代替流体の使用
航空分野では極低温窒素ガス(NTF: National Transonic Facility)を使い、密度を上げてRe数を実機に近づける。
物理的な制約を工夫で乗り越えるんですね。
機械学習と次元解析の融合
近年注目されているのが、次元解析と機械学習の組み合わせだ。
Dimensionless Learning(無次元学習)という手法がある。機械学習モデルの入出力を無次元数にすることで、汎化性能が飛躍的に向上する。
Buckinghamのπ定理を制約条件としてニューラルネットワークに組み込むことで、物理法則に矛盾しない予測が可能になる。Bakarji & Tartakovsky (2021) の研究では、データから自動的に支配的な無次元数を発見するアルゴリズムが提案されている。
次元解析とAIの組み合わせは面白いですね!
マルチスケール問題における次元解析
スケールの異なる物理が共存する問題では、複数の無次元数の相対的な大きさが重要になる。
例えばマイクロバブルを含む乱流境界層では:
- 境界層全体: $\text{Re}_\delta \sim 10^4$(慣性支配)
- バブル近傍: $\text{We} \sim O(1)$(表面張力と慣性が拮抗)
- バブル内部: $\text{Re}_b \sim 10^0$(粘性支配)
このような場合、各スケールで適切な無次元数に基づいたモデリングが必要で、AMR(Adaptive Mesh Refinement)と組み合わせて局所的に解像度を変える手法が使われる。
トラブルシューティング
単位系・スケーリングに起因するトラブル
次元解析がらみで実際に起きるトラブルって、どんなものがありますか?
単位系の不整合やスケーリングミスは、CFDで最も多い初歩的エラーの1つだ。具体的なケースを見ていこう。
1. 圧力値が桁違いにおかしい
症状: 大気圧条件なのに圧力が $10^9$ Pa のオーダーになる
原因: CAD形状がmm単位なのに、物性値をSI(m基準)で入力した。長さが1000倍になるので、$\Delta p \propto \rho U^2$ から圧力が $10^6$ 倍になる。
対策: Fluent の場合、Mesh > Scale で形状をm単位にスケーリングするか、整合する単位系(密度: tonne/mm$^3$、粘度: MPa$\cdot$s)を使う。
2. Re数が想定と合わない
症状: 層流のはずなのに乱流的な振動が出る、または逆に乱流のはずなのに層流解になる
原因: 代表長さや代表速度の定義が不適切。例えば管径 $D$ を使うべきところで半径 $r$ を使っている(Re数が2倍ずれる)。
対策:
- $\text{Re}$ を手計算で確認: $\text{Re} = \rho U D / \mu$
- 管内流の遷移: $\text{Re}_D \approx 2300$
- 外部流(平板): $\text{Re}_x \approx 5 \times 10^5$
Re数を自分で計算して検算するのが大事なんですね。
3. 抗力係数 $C_D$ が文献値と合わない
症状: 球の $C_D$ が文献値から大幅にずれる
考えられる原因:
- Reference Valuesの面積が間違っている(投影面積 $\pi D^2/4$ vs. 表面積 $\pi D^2$)
- 速度の基準が自由流速でない
- 計算領域が狭く、ブロッケージ効果が出ている(推奨: 上流5D以上、下流15D以上、側方5D以上)
面積の定義が文献と合っているか確認するのがポイントですね。
$y^+$ 関連のトラブル
$y^+$ は壁面近傍メッシュの品質を示す最重要無次元数だ。
| 乱流モデル | 必要な $y^+$ | メッシュ戦略 |
|---|---|---|
| 標準壁関数 (Standard Wall Function) | 30 - 300 | 壁面から離して第一層配置 |
| Enhanced Wall Treatment | $\approx 1$ | 壁面に密着したプリズム層 |
| $k$-$\omega$ SST(壁面解像) | $\approx 1$ | 10層以上のプリズム層推奨 |
| SA (Spalart-Allmaras) | $\approx 1$ | 境界層内に十分な層数 |
$y^+$ の事前推定式:
平板の経験式 $C_f \approx 0.058\,\text{Re}_L^{-0.2}$ を使えば、解析前に第一層厚さを概算できる。
計算前に$y^+$を予測してメッシュ設計するんですね。
スケーリングミスの検出チェックリスト
計算結果を評価する際の「次元解析的」チェック項目をまとめよう。
- Re数を手計算で算出し、流れレジーム(層流/遷移/乱流)が想定通りか確認
- $C_D$, $C_L$ がオーダー的に妥当か(鈍頭物体の $C_D \sim O(1)$、流線形は $O(10^{-2})$)
- 圧力損失が $\Delta p \sim \frac{1}{2}\rho U^2$ のオーダーに収まるか
- Ma数が0.3未満であることを確認(非圧縮性仮定を使う場合)
- 温度変化がある場合、Gr/Re$^2$ の大きさで強制/自然対流の支配性を判断
次元解析の知識があると、結果の妥当性を素早く判断できるんですね。
その通り。計算結果を鵜呑みにせず、無次元数のオーダー推定で「おかしい」と気づけることが、CFDエンジニアの基本素養だよ。
Re数が合っても「同じ流れ」にならないことがある
「模型実験でRe数を実機と合わせれば相似則が成立する」——これは多くの場合正しいですが、落とし穴があります。例えば圧縮性効果(マッハ数)、表面張力(ウェーバー数)、重力(フルード数)が同時に重要な問題では、すべての無次元数を同時に一致させることは物理的に不可能です。風洞実験で高Re数を出すために高圧空気を使うと、今度はRe数は合うがマッハ数がズレる——という딜레마が起きます。次元解析のトラブルの本質は「どの無次元数を優先するか」という物理的な判断の問題です。
「解析が合わない」と思ったら
- まず深呼吸——焦って設定をランダムに変えると、問題がさらに複雑になる
- 最小再現ケースを作る——次元解析とπ定理の問題を最も単純な形で再現する。「引き算のデバッグ」が最も効率的
- 1つだけ変えて再実行——複数の変更を同時に行うと、何が効いたか分からなくなる。科学実験と同じ「対照実験」の原則
- 物理に立ち返る——計算結果が「重力に逆らって物が浮く」ような非物理的な結果なら、入力データの根本的な間違いを疑う
なった
詳しく
報告