TOML設定ファイルを toml-f で読み込み、app_config へ反映する。
drifting Maxwellian に基づく片側流入束 [1/m^2/s] を返す。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | number_density_m3 | |||
| real(kind=dp), | intent(in) | :: | temperature_k | |||
| real(kind=dp), | intent(in) | :: | m_particle | |||
| real(kind=dp), | intent(in) | :: | drift_velocity(3) | |||
| real(kind=dp), | intent(in) | :: | inward_normal(3) |
標準正規分布の確率密度関数値を返す。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | x |
標準正規分布の累積分布関数値を返す。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=dp), | intent(in) | :: | x |
注入面上矩形開口の面積 [m^2] を計算する。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| character(len=*), | intent(in) | :: | inject_face | |||
| real(kind=dp), | intent(in) | :: | pos_low(3) | |||
| real(kind=dp), | intent(in) | :: | pos_high(3) |
sim.batch_duration と sim.batch_duration_step の整合を検証して確定値を反映する。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(app_config), | intent(inout) | :: | cfg |
sim.e0 または sim.e0_abs + angle 指定を内部ベクトルへ正規化する。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(app_config), | intent(inout) | :: | cfg |
reservoir_face 粒子種の入力値を検証し、必要なら w_particle を解決する。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(app_config), | intent(inout) | :: | cfg | |||
| integer, | intent(in) | :: | species_idx |
photo_raycast 粒子種の入力値を検証し、発射方向などを正規化する。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(app_config), | intent(inout) | :: | cfg | |||
| integer, | intent(in) | :: | species_idx |
注入面名から接線2軸インデックスを返す。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| character(len=*), | intent(in) | :: | inject_face | |||
| integer, | intent(out) | :: | axis_t1 | |||
| integer, | intent(out) | :: | axis_t2 |
文字列が指定した接尾辞で終わるかを判定する。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| character(len=*), | intent(in) | :: | s | |||
| character(len=*), | intent(in) | :: | suffix |
現在のメッシュ入力設定が conductor 表面を生成し得るかを返す。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(app_config), | intent(in) | :: | cfg |
.toml 拡張子の設定ファイルを読み込み、既存値へ上書き適用する。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| character(len=*), | intent(in) | :: | path |
読み込む設定ファイルパス( |
||
| type(app_config), | intent(inout) | :: | cfg |
読み込み結果で上書きするアプリ設定。 |
TOML 文書を toml-f で解釈して設定へ反映する。
現在は sim / mesh / output / [[mesh.templates]] / [[particles.species]] を扱う。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| character(len=*), | intent(in) | :: | path |
読み込むTOMLファイルパス。 |
||
| type(app_config), | intent(inout) | :: | cfg |
読み込み結果で更新するアプリ設定。 |
toml-f のルートテーブルから既知セクションを読み込む。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(app_config), | intent(inout) | :: | cfg | |||
| type(toml_table), | intent(inout) | :: | document | |||
| type(app_config_authoring), | intent(inout) | :: | authoring |
toml-f の status を BEACH の停止メッセージへ変換する。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(in) | :: | stat | |||
| character(len=*), | intent(in) | :: | context |
TOML の数値キーを倍精度実数として読み込む。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(toml_table), | intent(inout) | :: | table | |||
| type(toml_key), | intent(in) | :: | key | |||
| real(kind=dp), | intent(out) | :: | value | |||
| character(len=*), | intent(in) | :: | context |
TOML の整数キーを integer(i32) として読み込む。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(toml_table), | intent(inout) | :: | table | |||
| type(toml_key), | intent(in) | :: | key | |||
| integer(kind=i32), | intent(out) | :: | value | |||
| character(len=*), | intent(in) | :: | context |
TOML の論理値キーを読み込む。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(toml_table), | intent(inout) | :: | table | |||
| type(toml_key), | intent(in) | :: | key | |||
| logical, | intent(out) | :: | value | |||
| character(len=*), | intent(in) | :: | context |
TOML の文字列キーを固定長文字列へ読み込む。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(toml_table), | intent(inout) | :: | table | |||
| type(toml_key), | intent(in) | :: | key | |||
| character(len=*), | intent(out) | :: | value | |||
| character(len=*), | intent(in) | :: | context |
TOML の3成分数値配列キーを読み込む。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(toml_table), | intent(inout) | :: | table | |||
| type(toml_key), | intent(in) | :: | key | |||
| real(kind=dp), | intent(out) | :: | value(3) | |||
| character(len=*), | intent(in) | :: | context |
TOML の2成分数値配列キーを読み込む。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(toml_table), | intent(inout) | :: | table | |||
| type(toml_key), | intent(in) | :: | key | |||
| real(kind=dp), | intent(out) | :: | value(2) | |||
| character(len=*), | intent(in) | :: | context |
TOML の scalar または最大3成分数値配列キーを読み込む。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(toml_table), | intent(inout) | :: | table | |||
| type(toml_key), | intent(in) | :: | key | |||
| real(kind=dp), | intent(out) | :: | value(3) | |||
| integer(kind=i32), | intent(out) | :: | value_len | |||
| character(len=*), | intent(in) | :: | context |
TOML の文字列キーを境界条件モードへ変換する。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(toml_table), | intent(inout) | :: | table | |||
| type(toml_key), | intent(in) | :: | key | |||
| integer(kind=i32), | intent(out) | :: | value | |||
| character(len=*), | intent(in) | :: | context |
[[mesh.templates]] の読み込み数に応じてテンプレート配列容量を拡張する。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(app_config), | intent(inout) | :: | cfg |
容量拡張対象のアプリ設定。 |
||
| integer, | intent(in) | :: | required_size |
必要最小要素数。 |
[[particles.species]] の読み込み数に応じて粒子種配列容量を拡張する。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(app_config), | intent(inout) | :: | cfg |
容量拡張対象のアプリ設定。 |
||
| integer, | intent(in) | :: | required_size |
必要最小要素数。 |
[sim] TOML テーブルを sim_config へ適用する。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(app_config), | intent(inout) | :: | cfg | |||
| type(toml_table), | intent(inout) | :: | table | |||
| type(sim_authoring_spec), | intent(inout) | :: | sim_auth |
[particles] TOML テーブルを適用する。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(app_config), | intent(inout) | :: | cfg | |||
| type(toml_table), | intent(inout) | :: | table | |||
| type(app_config_authoring), | intent(inout) | :: | authoring |
[[particles.species]] の配列テーブルを読み込む。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(app_config), | intent(inout) | :: | cfg | |||
| type(toml_table), | intent(inout) | :: | table | |||
| type(toml_key), | intent(in) | :: | key | |||
| type(app_config_authoring), | intent(inout) | :: | authoring |
[[particles.species]] の1要素を粒子種設定へ適用する。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(particle_species_spec), | intent(inout) | :: | spec | |||
| type(toml_table), | intent(inout) | :: | table | |||
| type(particle_authoring_spec), | intent(inout) | :: | auth |
[mesh] TOML テーブルをメッシュ入力設定へ適用する。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(app_config), | intent(inout) | :: | cfg | |||
| type(toml_table), | intent(inout) | :: | table | |||
| type(app_config_authoring), | intent(inout) | :: | authoring |
[mesh.groups.*] の table 群を読み込む。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(toml_table), | intent(inout) | :: | table | |||
| type(toml_key), | intent(in) | :: | key | |||
| type(app_config_authoring), | intent(inout) | :: | authoring |
1つの [mesh.groups.name] table を読み込む。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(mesh_group_authoring_spec), | intent(inout) | :: | group | |||
| type(toml_table), | intent(inout) | :: | table |
[[mesh.templates]] の配列テーブルを読み込む。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(app_config), | intent(inout) | :: | cfg | |||
| type(toml_table), | intent(inout) | :: | table | |||
| type(toml_key), | intent(in) | :: | key | |||
| type(app_config_authoring), | intent(inout) | :: | authoring |
[[mesh.templates]] の1要素をテンプレート設定へ適用する。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(template_spec), | intent(inout) | :: | spec | |||
| type(toml_table), | intent(inout) | :: | table | |||
| type(template_authoring_spec), | intent(inout) | :: | auth |
[output] TOML テーブルを出力制御設定へ適用する。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(app_config), | intent(inout) | :: | cfg | |||
| type(toml_table), | intent(inout) | :: | table |