例題9: ダム崩壊(VOF 自由表面・Martin & Moyce 1952 照合)
自由表面流れの定番ベンチマークダム崩壊(水柱崩壊)を VOF(interFoam)で 解析し、Martin & Moyce (1952) の実験データとサージフロント(水の先端)の 進行速度を照合します。タンク・スロッシング・洪水氾濫など、界面が大きく 変形する問題の出発点になる例題です。
| 項目 | 内容 |
|---|---|
| 解析タイプ | VOF(2 相流 / 自由表面)・非定常 |
| ソルバ | interFoam(Co 数ベースの可変時間刻み) |
| 乱流モデル | Laminar(小型水柱の実験照合の標準) |
| ジオメトリ | 上面開放タンク(内寸 350×30×200 mm・側面と底面が壁、上面が大気開放) |
| 初期水柱 | 幅 a = 57.15 mm(2.25 in)× 高さ 2a = 114.3 mm(Martin & Moyce n²=2) |
| 流体 | 水 / 空気(既定物性・σ = 0.07 N/m) |
| メッシュ | snappyHexMesh・2.5 mm 立方(水柱幅に 23 セル) |
| 実行規模(目安) | 4 コア・約 6 分(実時間 0.25 s)・1 クレジット |
所要時間は目安です。実行環境・メッシュ規模・混雑状況により変動します。
この例題で学べること
- VOF 解析の設定 — 相の物性・重力・初期水域の与え方
- 水柱ボックスによる初期化 — setFields の「水柱ボックス」モードで 任意の直方体水域を置く(水平水面モードとの使い分け)
- 実験データとの照合 — 無次元化(T = t√(2g/a), Z = x/a)でサージ フロントの進行を実験と比較する
実行手順
- ex09_dam_break.ofb.zip をダウンロードする
- StreamWright サイドバーの 📂 Load Project (.ofb.zip) にドラッグ&ドロップする

- 各タブで設定を眺める(変更は不要です)
- 🎯 解析タイプ: VOF(2 相流 / 自由表面)
- 4️⃣ Physics: 水/空気の物性と「💧 初期水位」の水柱ボックス (x ≤ 57.15 mm・z ≤ 114.3 mm)
- 1️⃣ Patch Setup: 上面
atmosphereが outlet(大気開放)、 y 両側面は slip(2D 近似)、底面・端壁は wall - 6️⃣ Run タブ → 🚀 Generate & Run (blockMesh → snappyHexMesh → setFields → interFoam の順で自動実行)

期待される結果
実行が正常に終われば、以下とほぼ同じ数値になります(見本: sample_report.html)。
| 量 | 値 | 確認場所 |
|---|---|---|
| 前縁速度勾配 dZ/dT(Z∈[1.5, 3.5]) | 1.22(実験 1.29・−5.5%) | 軌跡データ(下記の照合手順) |
| 前縁の可視化 | 水柱が崩れ底面を走る α コンター | Post Processor タブ |
| 品質チェック | 合格(PASSED) | 3 段階総合判定 |

水柱の崩壊シーケンス(α = 水の体積率・y 中央断面):

サージフロント位置の時間発展(実験との重ね図):

自由表面の可視化(Post Processor タブ・2D 断面の α コンター):

実験データとの照合(この解析は正しいか?)
Martin & Moyce (1952) は水柱(幅 a・高さ 2a)の崩壊を高速度撮影し、 サージフロント位置を無次元量 T = t√(2g/a)・Z = x/a で報告しました (Phil. Trans. R. Soc. Lond. A 244, 312-324, doi:10.1098/rsta.1952.0006)。
- 照合には時間原点シフトに不変な「線形域(Z∈[1.5, 3.5])の前縁速度勾配 dZ/dT」を使います(実験の時間原点にはゲート開放起因の不確かさがあり、 文献では T を +0.17 程度シフトして重ねるのが慣用です)
- 実験データの同区間勾配: dZ/dT = 1.29
- 照合帯域: ±10%
照合手順(リポジトリの解析スクリプトで再現可能。底面近傍サンプルラインの α = 0.5 交点から前縁を抽出します):
python scripts/analyze_dam_break.py Simulation_Run --plot front.png
解析結果は dZ/dT = 1.22(実験比 −5.5%) で帯域内に収まります。
💡 側壁を slip にしているのは実験との比較を 2D 相当にするためです。 noSlip に変えると幅 30 mm の側壁摩擦で前縁が ~7% 減速します。 逆に水柱を高く(n² を大きく)すると前縁は速くなります。
自分の問題に応用するには
- 水平水面モード: 船体・タンクの静水面は「水平水位 z」モードで 初期化します(本例題の水柱ボックスと切替可能)
- 時間刻み: interFoam は maxCo/maxAlphaCo ベースの可変時間刻みです。 界面が壊れる場合は maxCo を下げてください
- 波の反射: 造波・曳航など流入がある問題では Wave Damping Zone (出口スポンジ層)を有効にすると反射を抑えられます
- 自分のジオメトリで解くには: 容器の内側の空間をボリューム化する手順(水と空気を分ける必要はありません)は ジオメトリ準備ガイド 第1章(内部流れ) にまとめています。CAD ソフト別の操作は 第7章 を参照してください
ジオメトリ: fixtures/vof/dam_break/TANK_FLUID.step(本例題用に新設)。 検証: 2026-07-22 実機 E2E で dZ/dT = 1.217 / 実験 1.288(−5.5%)・PASSED を確認。 実験値の出典は Martin & Moyce 1952(デジタイズ値は Lethe 例題収載データ)