Python / Clawpack / GeoClaw

Clawpack 概要・Pythonサンプル

Clawpackは、保存則・浅水流・衝撃波・津波・氾濫などを有限体積法で解くためのオープンソース数値計算パッケージです。 Pythonから使う場合はPyClaw、実地形上の津波・高潮・氾濫ではGeoClawが候補になります。

Pythonソースを見る
Clawpackファミリー構成図

Clawpackの構成

Classic Clawpack

Fortranベースの標準ソルバー。保存則・浅水流・衝撃波問題の基礎確認向き。

AMRClaw

適応格子細分化に対応。波面や急変部だけを細かく計算できます。

GeoClaw

津波・高潮・浸水など、地形上を流れる浅水流解析に向いています。

PyClaw

PythonからClawpackのソルバーを使うためのインターフェースです。

水理・防災解析での使い方

学習・試作ではPyClawで1次元/2次元ダムブレイクを確認し、実地形上の津波・高潮・氾濫解析ではGeoClawへ進む流れが分かりやすいです。

  • PyClawで浅水流方程式の基礎を確認
  • GeoClawで地形データ・wet/dry処理を扱う
  • DEM、河川、堤防、粗度データを前処理
  • 計算結果を浸水深図・流速図・時系列として可視化
Clawpack解析ワークフロー

公式リンク・マニュアル

Clawpackを実務・研究で使う場合は、まず公式ドキュメントでソルバー選定、インストール方法、PyClaw / GeoClaw の使い分けを確認します。 津波・高潮・地形上の氾濫はGeoClaw、Pythonからの学習・試作はPyClawが入口になります。

Pythonソースサンプル

Clawpack本体の導入前でも理解しやすいNumPy版、PyClaw版、GeoClaw向け地形テンプレートです。

scripts/clawpack_numpy_shallow_water_1d.py

読み込み中...

scripts/clawpack_pyclaw_shallow_water_1d.py

読み込み中...

scripts/geoclaw_topography_template.py

読み込み中...