bem_output_writer Module

実行サマリ・最終CSV・履歴CSVの出力を担当するモジュール。


Uses

  • module~~bem_output_writer~~UsesGraph module~bem_output_writer bem_output_writer module~bem_app_config_types bem_app_config_types module~bem_output_writer->module~bem_app_config_types module~bem_kinds bem_kinds module~bem_output_writer->module~bem_kinds module~bem_string_utils bem_string_utils module~bem_output_writer->module~bem_string_utils module~bem_types bem_types module~bem_output_writer->module~bem_types module~bem_app_config_types->module~bem_kinds module~bem_app_config_types->module~bem_types iso_fortran_env iso_fortran_env module~bem_kinds->iso_fortran_env module~bem_types->module~bem_kinds

Used by

  • module~~bem_output_writer~~UsedByGraph module~bem_output_writer bem_output_writer program~main main program~main->module~bem_output_writer

Subroutines

public subroutine open_history_writer(app, resumed, history_opened, history_unit)

履歴 CSV のオープンとヘッダ初期化を行う。

Arguments

Type IntentOptional Attributes Name
type(app_config), intent(in) :: app

出力設定を含むアプリ設定。

logical, intent(in) :: resumed

再開実行かどうか。

logical, intent(out) :: history_opened

履歴ファイルを開けた場合に .true.

integer, intent(out) :: history_unit

履歴CSVの出力ユニット番号(未使用時は -1)。

public subroutine open_potential_history_writer(app, resumed, potential_history_opened, potential_history_unit)

電位履歴 CSV のオープンとヘッダ初期化を行う。

Arguments

Type IntentOptional Attributes Name
type(app_config), intent(in) :: app

出力設定を含むアプリ設定。

logical, intent(in) :: resumed

再開実行かどうか。

logical, intent(out) :: potential_history_opened

ファイルを開けた場合に .true.

integer, intent(out) :: potential_history_unit

電位履歴CSVの出力ユニット番号(未使用時は -1)。

public subroutine print_run_summary(mesh, stats)

実行結果の主要統計を標準出力へ表示する。

Arguments

Type IntentOptional Attributes Name
type(mesh_type), intent(in) :: mesh

実行後のメッシュ情報。

type(sim_stats), intent(in) :: stats

実行後の統計値。

public subroutine write_result_files(out_dir, mesh, stats, cfg, mpi_world_size, mesh_potential_v)

解析結果を summary.txt / charges.csv / mesh_triangles.csv などとして保存する。

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: out_dir

出力先ディレクトリ。

type(mesh_type), intent(in) :: mesh

書き出し対象のメッシュ。

type(sim_stats), intent(in) :: stats

書き出し対象の統計値。

type(app_config), intent(in) :: cfg

出力設定を含むアプリ設定。

integer(kind=i32), intent(in), optional :: mpi_world_size
real(kind=dp), intent(in), optional :: mesh_potential_v(:)

public subroutine ensure_output_dir(out_dir)

出力ディレクトリを作成する。

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: out_dir

作成対象ディレクトリのパス。