コンテンツにスキップ

出力の読み方

このページは、初回実行後に outputs/latest/ で何を見ればよいかをまとめます。 詳細な後処理コマンドは 後処理チュートリアル、全パラメータは 入力パラメータリファレンス を参照してください。

  1. outputs/latest/summary.txt がある。
  2. summary.txtbatchessim.batch_count に到達している。
  3. charges.csv があり、要素ごとの最終電荷が出ている。
  4. beachx inspect outputs/latest がエラーなく概要を表示する。
Terminal window
beachx inspect outputs/latest

output.dir を変更している場合は、outputs/latest を設定した出力ディレクトリに置き換えてください。

ファイルいつ出るかまず見る内容
summary.txt常時batch 数、吸収数、脱出数、最後の相対変化、MPI rank 数
charges.csv常時要素ごとの最終電荷
mesh_triangles.csv常時三角形頂点、要素 ID、mesh_id
mesh_sources.csvtemplate mesh 利用時mesh_id と template kind / surface model / 要素数の対応
mesh_potential.csvoutput.write_mesh_potential=true最終時刻の要素重心電位
charge_history.csvoutput.history_stride > 0batch ごとの要素電荷履歴
potential_history.csvwrite_potential_history=true かつ history_stride > 0batch ごとの要素重心電位履歴
performance_profile.csvBEACH_PROFILE=1phase 別実行時間
rng_state*.txt常時再開用乱数状態
macro_residuals*.csvreservoir 系注入時端数マクロ粒子数の再開用状態

summary.txt で最初に確認する量は次のとおりです。

項目見方
batches通常実行では sim.batch_count と一致していれば完了
absorbed表面に吸収された粒子数。帯電が進んでいるかを見る主指標
escapedopen boundary から出た粒子数。注入・境界条件の確認に使う
survived_max_stepsim.max_step まで生存した粒子数。多い場合は dt、箱、注入条件を見直す
last_rel_change最終 batch の電荷変化監視値。現行実装では早期停止条件ではない

conductordielectric を含む mesh では、summary.txt に注意書きが出る場合があります。 dielectric は現行実装ではメタデータであり、誘電体境界条件を解くモデルではありません。

時間発展を見るには、output.history_stride を正の値にします。

[output]
history_stride = 1
write_potential_history = true

電位履歴は追加の場評価を行うため、要素数や履歴頻度が大きい場合は計算コストが増えます。 最初は history_stride = 1 で小ケースを確認し、大きい計算では間引いてください。

Terminal window
beachx inspect outputs/latest \
--save-mesh outputs/latest/charges_mesh.png \
--save-potential-mesh outputs/latest/potential_mesh.png
beachx animate outputs/latest \
--quantity charge \
--save-gif outputs/latest/charge_history.gif

Python から読む場合:

from beach import Beach
b = Beach("outputs/latest")
print(b.result.absorbed, b.result.escaped)
b.plot_mesh()
b.plot_potential()

output.resume=true の場合、summary.txtcharges.csvrng_state*.txtmacro_residuals*.csv が checkpoint として使われます。 output.restart_from を指定すると、checkpoint は restart_from から読み、新しい出力は output.dir に書きます。