パラメータの設定が済んだら, 【ツール】メニューから【実行ウィザード】を実行します.下の画面が出ます.
ジョブ管理システム【SLURM】の場合
SLURMは, 2005年ごろから開発されているフリーのジョブ管理システムです.[対応中]
ジョブ管理システム【Torque+MAUI】の場合
Torque+MAUIは, 2018年までフリーソフトであったAdaptiveComputing社の製品です. 1990-2010年ごろは, 多くの計算機システムで利用されてきました. Torque+MAUIでは, 次の画面が表示されます.
計算準備
解析の準備は, 計算準備欄のボタンを順にクリックしていけば完成します.
- 【基本設定】 パラメータの設定ウィンドウは, ここから表示することもできます.
- 【変数設定】 流量に応じて圧力比を変更する, といった動的境界条件が必要ならば設定します.
- 【気体設定】 DSMCでは, ここで分子モデルや混合気体成分の設定を行います.
- BGKでは, 現在のところ必要ありません.
- 【領域設定】 気体領域の形状をここで設定します.
- 【気体・領域ロック】 領域形状の設定が完了したら, 誤操作を防ぐために, ロックをかけます.
- 【検査領域】 動的境界条件では, 解析中の結果からデータを採取します.どこから採取するか設定します.
- 【境界条件】 領域各壁面に, 数値および【変数設定】の変数を用いてここで境界条件を設定します.
- 【検定】 設定した領域形状および境界条件で, 計算が可能なのかチェックを行います.
- 場合によっては, 並列計算に必要なデータなども準備します.
- 検定を通過していない計算ケースは, 実行できません.
- 【初期条件】 領域の気体に, 初期条件をここで設定します.
- 【初期分布】 設定した初期条件に従って, \(t=0\)の初期データを作成します.
- 初期条件が【不足】の場合,初期化に失敗します.
- BGK初期条件で【インポート】を使うとエラーします.
- 初期データを作成していない計算ケースは, 解析できません.
以下のツールは, 実行ウィザードにまだ入っていません.【File】【インポート】から起動します.
- 【インポート】 現在の解析のパーツの一つとして, 解析済みのデータを配置します.
- ケースの複製と異なり,パーツごとに解析した複数の流れ場を統合し,1つのケースとして解析を行うものです.
- 初期条件で【インポート】が適当に設定されます.
- BGKインポート機能が未完成です.
解析が終了したら, 結果の分析を行いましょう.
計算修復
解析を試みても, 失敗する場合があります.この欄のボタンを用いて, 失敗したデータを修復し,再トライすることが可能です.
- 【矛盾する巨視的量を消去】 時間発展中に計算が停止してしまった場合, そのまま再開すると, 時刻データが重複します.例えば\(t=200\)から計算を開始し, \(t=210, 220\)のデータを保存してから\(t=222.21\)あたりで落雷により計算が停止したとしましょう. 保存データは\(t=200\)ですから, 計算を再開すると, \(t=210,220\)のデータが重複してエラーします. 【矛盾する巨視的量を消去】により, \(t>200\)の時刻データを消去することができます.
- \(t=0\)のデータ(初期値)は, 通常は, 消去されません. パラメータの設定で【初期化済】チェックを外してから【矛盾する巨視的量を消去】すると, \(t=0\)のデータ(初期値)も消去されます.
- 【各種フラッグ消去】 計算を開始すると,【実行中】フラッグがONになり, 同じケースが並行して実行できなくなります.【実行中】フラッグは計算の終了時にOFFになるのですが,計算が途中で停止してしまった場合,計算を再開できなくなります.【各種フラッグ消去】で, 【実行中】フラッグなどをOFFにします.
- 実際には,時間発展ファイルの重複書き込みを防ぐ各種のフラッグもOFFになります.
- 【基準フォルダー選択】 計算機システムによっては, 計算ノードとファイルサーバーにおいて, データファイルのPATH名が異なってしまう場合があります.WebMixは データファイルのPATH名を記録し, それを元にデータファイルにアクセスしますので, 計算が途中で停止すると,間違った(計算ノードにおける)PATH名のままになります.【基準フォルダー選択】をクリックすると, バックアップしておいたPATH名に復元することができます.現在のPATH名は, パラメータの設定で【コメント】欄の末尾【Basedir】に表示されています.
- 計算ノードに残留してしまったデータがまだ無事だから回収する,といった強欲な作業は,ユーザー自身が行う必要があります.
計算が途中で停止し,それを再開する場合には,とりあえず【矛盾する巨視的量を消去】【各種フラッグ消去】をクリックし, 場合によって【基準フォルダー選択】をクリックすることになるでしょう.
非常に運が悪く,解析プログラムがデータファイルを書き出している最中に停電あるいはジョブタイムアウトし, ファイルが破壊される場合があります.WebMixは, ファイルを書き出す際にはバックアップファイルを残していますので, 【ファイル復元】ボタンで復旧できる場合があります(未完成).
解析実行
解析の実行は, ジョブ管理システムに依存します.【実行】欄のボタンを用います. 基本作業は共通です:
- 【撃方用意】 ジョブ管理システムでは, ジョブ文なる簡単な文書を作成する必要があります.このボタンを押すと,その文書を作成するなど,実行準備を整えます.
- 【発射】 このボタンを押すと, ジョブ管理システムに実行を依頼します.計算機に空きがあれば, 実行が開始します.
- 【状況確認】 ジョブ管理システムに, 処理状況を問い合わせます.結果は,画面下部に表示されます.
MPIやOpenMPなどの並列計算設定も, ここで行います.
MPI並列計算設定
DSMC解析は, MPIに対応しています.MPIは,基本的には複数台(ノード)の計算機を用いた並列計算です.
- 【MPI】ジョブ管理システムを用いて確保する計算ノード数を指定します.
- 【process/node】1台のノードで利用するMPIプロセス数を指定します.
確保した計算ノード数 x (process/node) 個のプロセスで並列計算を行います.
OpenMP(OMP)並列計算設定
DSMC, BGKどちらも, OMPに対応しています.OMPは, 1台のノードの多数コアによる並列計算です.
- 【OMP】1プロセスで利用するスレッド数を指定します.
ジョブ管理システムに固有の設定もございます.
【SLURM】の場合
未定
【Torque+MAUI】の場合
- 【試験走行】 設定した計算ケースを, (場合によっては1CPUで)動作するかどうか, 試します.
- Webサーバーで解析が実行されます.Webサーバーのメモリー搭載量が計算ノードのメモリー使用量よりも小さいと,トラブルが発生する場合があります.
- 試験する場合には, ntmax を少なめに設定しておかなければなりません.テスト目的であれば, ntmax = 1 に設定しておきましょう.
- 【保存して終了】 解析実行中であるが, 計算途中の流速場などの様子から, もう十分である, という場合があります.この時には,保存して終了ボタンを押すことにより,解析プログラムがデータを保存して終了します.
- 【バックアップ】 解析実行中であるが, 計算時間が長大になってきたため, 停電などの事故に備えてバックアップを行いたい場合があります.バックアップボタンを押すと,解析プログラムがデータを一旦保存してから,解析を継続します.
- 【死ね】 ディスクが満杯であるとか,設定ミスにより,データ保存を行うと具合が悪い場合があります.この時には,Kill ボタンを押すと,実行中の解析プログラムが(確認メッセージの後)自爆します.