| adaptive_nonzero_mode_stats |
bem_types |
None |
adaptive batch(非零 mode の電位変化で batch 幅を縮める)の状態。summary の adaptive_nonzero_mode_* キー。 |
| app_config |
bem_app_config_types |
None |
実行条件・メッシュ入力・粒子注入・出力設定を一元管理する。 |
| app_config_authoring |
bem_app_config_authoring_types |
None |
|
| batch_injection_layout_type |
bem_app_config_particle_runtime |
None |
1 バッチの注入 layout。全 rank で同じ global 粒子数と面ごとの速度補正を持ち、
static の rank 分割と shared の slot pool の両方がこれを基に粒子を作る。
segment は species 順に source(volume_seed または photo ray)、次に面 1..6 の reservoir が並ぶ。 |
| boundary_event_type |
bem_boundary |
None |
|
| charge_ledger_type |
bem_charge_ledger |
None |
|
| counter_stream_type |
bem_counter_rng |
None |
1 つの (seed, counter) の draw を連番で引く列。鍵の計算と PCG64 生成器の作成を 1 回で済ませ、
next_uniform の n 回目は counter_uniform(seed, counter, first_draw + n - 1) と同じ値を返す。
生成器は C++ 側で確保するので、open したら close する。 |
| domain_authoring_spec |
bem_app_config_authoring_types |
None |
計算領域と周期 topology の公開 authoring 設定。 |
| electrostatic_diagnostics_type |
bem_electrostatic_snapshot |
None |
|
| electrostatic_snapshot_type |
bem_electrostatic_snapshot |
None |
|
| external_boundary_contract_type |
bem_external_boundary_contract |
None |
|
| field_boundary_authoring_spec |
bem_app_config_authoring_types |
None |
場の境界 closure の公開 authoring 設定。 |
| field_physics_config |
bem_physics_config_types |
None |
|
| field_solver_type |
bem_field_solver |
None |
|
| floating_conductor_solver_type |
bem_surface_models |
None |
mesh_id ごとの浮遊導体を、snapshot が返す電位で等電位化する solver。
影響行列は幾何と場の境界条件だけで決まるので初期化時に一度組み、batch ごとには
固定電荷が作る電位だけを snapshot から取り直す。free-space と periodic2 の両方で同じ経路を使う。
|
| fmm_options_type |
bem_coulomb_fmm_types |
None |
|
| fmm_plan_type |
bem_coulomb_fmm_types |
None |
|
| fmm_state_type |
bem_coulomb_fmm_types |
None |
|
| hit_info |
bem_types |
None |
衝突有無、命中要素番号、線分パラメータ、交点座標を返す衝突結果型。 |
| injection_state |
bem_types |
None |
種ごとのマクロ粒子端数を保持し、再開時にも注入期待値を保つ。 |
| irradiation_cell_contract_type |
bem_irradiation_cell_contract |
None |
|
| matching_plane_stats |
bem_types |
None |
外部シースの receipt。summary の matching_plane_* キー(top_field_v_m は surface_current_top_field_v_m)。 |
| mesh_group_authoring_spec |
bem_app_config_authoring_types |
None |
|
| mesh_type |
bem_types |
None |
三角形頂点と前計算幾何量、要素電荷を保持する境界要素メッシュ型。 |
| mpi_context |
bem_mpi |
None |
|
| mpi_shared_counter_type |
bem_mpi |
None |
rank 0 が保持する 64 bit カウンタを全 rank が fetch-and-add で取り合う、バッチ粒子 slot pool の claim 窓口。
claim は OpenMP の critical 区間から呼ぶ前提で、MPI は MPI_THREAD_SERIALIZED 以上を要求する。
非 MPI build や 1 rank では rank 内のカウンタに落ちる。 |
| panel_geometry_type |
bem_panel_geometry |
None |
|
| panel_kernel_config |
bem_physics_config_types |
None |
|
| panel_quadrature_plan_type |
bem_triangle_quadrature |
None |
|
| particle_authoring_spec |
bem_app_config_authoring_types |
None |
|
| particle_boundary_authoring_spec |
bem_app_config_authoring_types |
None |
tracked particle のglobal面作用を保持する。 |
| particle_domain_config |
bem_types |
None |
粒子の追跡・衝突・境界 event が使う解決済みの領域と乱数 seed。
入力の has_*、外部場の角度指定、solver の選択や batch 制御は含めない。 |
| particle_source_plan_type |
bem_app_config_particle_runtime |
None |
|
| particle_species_spec |
bem_app_config_types |
None |
1粒子種の注入設定を表す。 |
| particle_step_result |
bem_particle_stepper |
None |
|
| particle_track_failure_type |
bem_status_codes |
None |
バッチ内で最初に失敗した粒子追跡(最小の粒子番号、同じ粒子なら最小の step)。status が ok なら失敗なし。 |
| particles_soa |
bem_types |
None |
粒子の位置・速度・物性値・生存フラグをSoA形式で保持する型。
配列長は容量で、有効な粒子は先頭 n 個。利用側は 1:n だけを読む。 |
| periodic2_authoring_spec |
bem_app_config_authoring_types |
None |
|
| periodic2_ewald_data_type |
bem_coulomb_fmm_types |
None |
|
| periodic2_physics_config |
bem_physics_config_types |
None |
|
| periodic_cell_cache_lock_type |
bem_coulomb_fmm_periodic_cell_cache |
None |
欠けたセルを作って publish するまで保持する cache ロック。 |
| periodic_nonzero_upper_vacuum_plan_type |
bem_coulomb_fmm_periodic_nonzero_upper_vacuum |
None |
|
| periodic_shell_mean_plan_type |
bem_periodic_shell_mean |
None |
線源ごとの s の高さ表。高さの格子は等間隔。 |
| periodic_shell_mean_state_type |
bem_periodic_shell_mean |
None |
電荷を重ねた S(z) = sum_i q_i s_i(z) と dS/dz の格子値。 |
| periodic_zero_mode_plan_type |
bem_periodic_zero_mode_plan |
None |
|
| periodic_zero_mode_state_type |
bem_periodic_zero_mode_plan |
None |
|
| photo_ray_failure_type |
bem_status_codes |
None |
photo raycast の ray が衝突照会を完了できなかった最初の失敗(最小の ray、同じ ray なら最小の bounce)。
species は batch 注入の段で埋める。status が ok なら失敗なし。 |
| photo_raycast_config |
bem_types |
particle_domain_config |
photo ray に必要な領域、解決済み batch 幅、反射回数上限。 |
| regularized_qr_type |
bem_regularized_qr |
None |
|
| reservoir_authoring_spec |
bem_app_config_authoring_types |
None |
局所 reservoir inflow の公開 authoring 設定。 |
| run_outputs_type |
bem_run_outputs |
None |
|
| secondary_spawn_buffer_type |
bem_secondary_emission |
None |
|
| secondary_spawn_type |
bem_secondary_emission |
None |
|
| sim_config |
bem_types |
photo_raycast_config |
入力と run 制御の設定。physics へは必要な親 component だけを渡す。 |
| sim_stats |
bem_types |
None |
処理済み粒子数、吸着/脱出数、バッチ数、最終相対変化量を集計する統計型。 |
| simulator_batch_workspace_type |
bem_simulator_workspace |
None |
|
| summary_identity_type |
bem_output_writer |
None |
summary.txt に書く run 内不変量: mesh の幾何・材質の識別子と、設定から解いた初期 surface-current model。
どちらも電荷・統計・動的 closure に依存しないので、run の開始時に一度作り、checkpoint と最終出力で使い回す。
mesh の幾何・材質か設定を変えたら作り直す。ready でなければ writer がその場で計算する。
model を allocatable にして、この型を含む構造体を構成子で既定値のまま作れるようにする。 |
| surface_closure_contract_type |
bem_surface_closure_contract |
None |
|
| surface_current_model_config |
bem_app_config_types |
None |
外部シースの零電流根から species 別の表面電流と境界写像を与えるモデルの設定。 |
| surface_current_model_result_type |
bem_surface_current_model |
surface_closure_contract_type |
|
| template_authoring_spec |
bem_app_config_authoring_types |
None |
|
| template_spec |
bem_app_config_types |
None |
OBJ または template 1 要素の表面と幾何パラメータを保持する。 |
| zhao_outflow_refresh_type |
bem_zhao_outflow_refresh |
None |
|