Skip to content
Development documentation — This site follows the main branch and may differ from an installed release. View the changelog.

Fortran Dependency Map

This page is generated by tools/generate_fortran_dependency_report.py. Entity summaries are copied from Fortran source comments.

  • Source files: 125
  • Modules: 84
  • Submodules: 40
  • Programs: 3
  • Internal dependency edges: 477

Fortran module dependency graph

Solid edges are use dependencies. Dashed edges are parent references from submodule(parent).

DirectoryEntitiesInternal dependencies
app321
src/config926
src/config/app_config_parser1023
src/core75
src/mesh311
src/mesh/panel37
src/particles27
src/particles/injection522
src/physics513
src/physics/field_solver835
src/physics/field_solver/fmm/api48
src/physics/field_solver/fmm/internal/common25
src/physics/field_solver/fmm/internal/periodic519
src/physics/field_solver/fmm/internal/runtime214
src/physics/field_solver/fmm/internal/tree212
src/physics/field_solver/panel310
src/physics/field_solver/periodic517
src/physics/sheath22
src/physics/sheath/zhao511
src/runtime1569
src/runtime/configuration738
src/runtime/coupling11
src/runtime/sheath534
src/runtime/sheath/table37
src/runtime/simulator841
src/tools/sheath319
EntitykindIncoming dependencies
bem_kindsmodule82
bem_typesmodule36
bem_string_utilsmodule35
bem_constantsmodule24
bem_app_config_typesmodule20
bem_mpimodule17
bem_panel_geometrymodule13
bem_charge_ledgermodule11
bem_app_config_parsermodule10
bem_electrostatic_snapshotmodule10
EntitykindPathInternal dependenciesSource summary
mainprogramapp/main.f90bem_kinds, bem_version, bem_types, bem_mpi, bem_performance_profile, bem_simulator, bem_restart, bem_periodic_checkpoint, bem_checkpoint_contract, bem_output_writer, bem_app_config, bem_mesh, bem_charge_ledger, bem_electrostatic_snapshot, bem_matching_plane_response_provider設定読込・メッシュ生成・粒子初期化・シミュレーション実行・結果出力を順に行うCLIエントリーポイント。
zhao_atlas_mainprogramapp/zhao_atlas_main.f90bem_kinds, bem_app_config, bem_matching_plane_zhao_atlasZhao A/B/C solvability atlasを生成するCLI。
zhao_response_mainprogramapp/zhao_response_main.f90bem_kinds, bem_app_config, bem_matching_plane_response_generatorZhao online evaluatorからmatching-plane response tableを生成するCLI。
bem_app_config_authoringmodulesrc/config/bem_app_config_authoring.f90bem_kinds, bem_app_config_types, bem_app_config_authoring_typesAuthoring overlay の公開入口。配列管理と領域別変換の入口を持つ。
bem_app_config_authoring_typesmodulesrc/config/bem_app_config_authoring_types.f90bem_kinds, bem_app_config_typesTOML authoring overlay の型と default。実行時設定への変換処理は持たない。
bem_app_config_typesmodulesrc/config/bem_app_config_types.f90bem_kinds, bem_types, bem_physics_config_typesアプリ設定の型定義と、設定由来の粒子数計算をまとめるモジュール。
bem_config_helpersmodulesrc/config/bem_config_helpers.f90bem_kinds, bem_types, bem_app_config_types, bem_string_utils設定型のヘルパー関数。パーサに依存せず下位層から利用可能。
bem_config_tomlmodulesrc/config/bem_config_toml.f90bem_kinds, bem_types, bem_app_config_types, bem_string_utilsTOML の基本型・固定長文字列・配列を検査して読み込む共通入口。
bem_physics_config_typesmodulesrc/config/bem_physics_config_types.f90bem_kinds, bem_types, bem_string_utils場・periodic2・panel の型付き設定と旧 [sim] 設定の正規化を定義する。
bem_app_config_authoring_domainsubmodulesrc/config/bem_app_config_authoring_domain.f90bem_app_config_authoring, bem_types, bem_string_utils計算領域、境界、reservoir 設定の正規化と box の幾何条件。
bem_app_config_authoring_geometrysubmodulesrc/config/bem_app_config_authoring_geometry.f90bem_app_config_authoring, bem_string_utilsMesh template の group、anchor、相対サイズを実座標・実寸へ変換する。
bem_app_config_authoring_sourcessubmodulesrc/config/bem_app_config_authoring_sources.f90bem_app_config_authoring, bem_string_utils粒子源の face_fraction 入力を注入面上の実座標へ変換する。
bem_app_config_parsermodulesrc/config/app_config_parser/bem_app_config_parser.f90bem_kinds, bem_types, bem_app_config_types, bem_physics_config_types, bem_app_config_authoring, bem_string_utils, bem_config_toml, bem_injection_flux, bem_injection_geometryTOML設定ファイルを toml-f で読み込み、app_config へ反映する。
bem_app_config_parser_finalizesubmodulesrc/config/app_config_parser/bem_app_config_parser_finalize.f90bem_app_config_parser設定の正規化と領域別 preflight の実行順を管理する。
bem_app_config_parser_preflight_particlessubmodulesrc/config/app_config_parser/bem_app_config_parser_preflight_particles.f90bem_app_config_parser, bem_app_config_typeslint 済みの粒子種識別子と有効な粒子源の派生量を確定する。
bem_app_config_parser_preflight_simsubmodulesrc/config/app_config_parser/bem_app_config_parser_preflight_sim.f90bem_app_config_parserlint 済み設定の基本的な計算条件を確認し、時間と外部場を確定する。
bem_app_config_parser_preflight_surfacesubmodulesrc/config/app_config_parser/bem_app_config_parser_preflight_surface.f90bem_app_config_parser, bem_constants, bem_config_helpers, bem_app_config_typeslint 済みの表面電流設定について、種の参照と物理モデルの成立条件を検査する。
bem_app_config_parser_read_meshsubmodulesrc/config/app_config_parser/bem_app_config_parser_read_mesh.f90bem_app_config_parserメッシュの TOML 読み取りと、モード・表面モデルの preflight。
bem_app_config_parser_read_particlessubmodulesrc/config/app_config_parser/bem_app_config_parser_read_particles.f90bem_app_config_parser領域別の TOML 読み取り。意味検証と派生値の確定は preflight が担当する。
bem_app_config_parser_read_simsubmodulesrc/config/app_config_parser/bem_app_config_parser_read_sim.f90bem_app_config_parser領域別の TOML 読み取り。意味検証と派生値の確定は preflight が担当する。
bem_app_config_parser_read_surfacesubmodulesrc/config/app_config_parser/bem_app_config_parser_read_surface.f90bem_app_config_parser領域別の TOML 読み取り。意味検証と派生値の確定は preflight が担当する。
bem_app_config_parser_validatesubmodulesrc/config/app_config_parser/bem_app_config_parser_validate.f90bem_app_config_parser, bem_config_helperslint 済みの設定から電場・流束・粒子重みを導出し、計算結果を検査する。
bem_constantsmodulesrc/core/bem_constants.f90bem_kindsシミュレーションで使用する物理定数を定義する。
bem_external_boundary_contractmodulesrc/core/bem_external_boundary_contract.f90bem_kinds, bem_string_utils局所 reservoir 流入と通常 open 面の処理を実行時契約へ正規化する。
bem_kindsmodulesrc/core/bem_kinds.f90-倍精度実数と32bit整数のkind定義を集約する基盤モジュール。
bem_mpimodulesrc/core/bem_mpi.F90bem_kindsMPIの初期化・集約を抽象化し、非MPIビルドでは単一ランク動作へフォールバックする。
bem_string_utilsmodulesrc/core/bem_string_utils.f90-ASCII 文字列操作ユーティリティ。
bem_typesmodulesrc/core/bem_types.f90bem_kindsシミュレーション設定・統計・メッシュ・粒子・衝突情報の主要データ型を定義する。
bem_versionmodulesrc/core/bem_version.F90-BEACH build metadata stamped by build.sh.
bem_importersmodulesrc/mesh/bem_importers.f90bem_kinds, bem_types, bem_meshOBJメッシュを走査・解析し、内部 mesh_type へ変換するインポートモジュール。
bem_meshmodulesrc/mesh/bem_mesh.f90bem_kinds, bem_types, bem_string_utils, bem_panel_geometry, bem_triangle_quadrature三角形メッシュ幾何量(重心・法線・AABB・代表長)を前計算して保持するモジュール。
bem_templatesmodulesrc/mesh/bem_templates.f90bem_kinds, bem_types, bem_mesh平面/穴あき平面/円板/リング/箱/円柱/球テンプレートから三角形メッシュを生成するユーティリティ。
bem_panel_geometrymodulesrc/mesh/panel/bem_panel_geometry.f90bem_kindsOrdered triangle geometry and exact Cartesian surface moments.
bem_panel_surface_sidesmodulesrc/mesh/panel/bem_panel_surface_sides.f90bem_kinds, bem_types, bem_string_utilsResolve physical vacuum sides without changing ordered triangle winding.
bem_triangle_quadraturemodulesrc/mesh/panel/bem_triangle_quadrature.f90bem_kinds, bem_constants, bem_panel_geometryTriangle cubature rules and Gauss-Duffy quadrature plans.
bem_injectionmodulesrc/particles/bem_injection.f90bem_injection_random, bem_injection_geometry, bem_injection_flux, bem_injection_velocity_grid, bem_photoelectron_injection粒子注入APIを責務別internal moduleから再公開する互換facade。
bem_particlesmodulesrc/particles/bem_particles.f90bem_kinds, bem_types粒子SoAデータ構造の初期化を提供するモジュール。
bem_injection_fluxmodulesrc/particles/injection/bem_injection_flux.f90bem_kinds, bem_constants, bem_injection_geometry, bem_injection_randomMaxwell reservoirの流束、macro粒子数、面速度sampling。
bem_injection_geometrymodulesrc/particles/injection/bem_injection_geometry.f90bem_kinds, bem_string_utilsbox面注入で共有する面軸と開口geometryの解決。
bem_injection_randommodulesrc/particles/injection/bem_injection_random.f90bem_kinds, bem_constants, bem_particles, bem_types粒子注入で共有する乱数初期化と基本分布sampling。
bem_injection_velocity_gridmodulesrc/particles/injection/bem_injection_velocity_grid.f90bem_kinds, bem_string_utils, bem_injection_geometryCSV速度grid reservoirの読込、補間、sampling。
bem_photoelectron_injectionmodulesrc/particles/injection/bem_photoelectron_injection.f90bem_kinds, bem_constants, bem_types, bem_boundary, bem_collision, bem_string_utils, bem_injection_flux, bem_injection_geometry, bem_injection_random光線追跡による光電子放出位置と速度のsampling。
bem_boundarymodulesrc/physics/bem_boundary.f90bem_kinds, bem_typesシミュレーションボックス境界(流出/反射/面内再配置反射/周期)を適用するモジュール。
bem_collisionmodulesrc/physics/bem_collision.f90bem_kinds, bem_types, bem_string_utils粒子軌道セグメントと三角形要素の交差判定を提供する衝突検出モジュール。
bem_pushermodulesrc/physics/bem_pusher.f90bem_kinds荷電粒子の時間発展にBoris法を適用する運動方程式ソルバ。
bem_surface_modelsmodulesrc/physics/bem_surface_models.f90bem_kinds, bem_types, bem_string_utils表面モデルごとの電荷更新後処理を扱うモジュール。
bem_surface_models_conductorsubmodulesrc/physics/bem_surface_models_conductor.f90bem_surface_models, bem_constants, bem_panel_geometry, bem_panel_kernelbem_surface_models の浮遊導体電荷再配分を実装する submodule。
bem_electrostatic_snapshotmodulesrc/physics/field_solver/bem_electrostatic_snapshot.f90bem_kinds, bem_constants, bem_types, bem_field_solver, bem_physics_config_types, bem_string_utils, bem_periodic_zero_mode_plan, bem_periodic_zero_mode_eval, bem_coulomb_fmm_periodic_nonzero_reference, bem_coulomb_fmm_periodic_nonzero_upper_vacuum, bem_panel_geometry, bem_panel_kernel1バッチ内で固定する静電場 snapshot。
bem_field_kernel_cmodulesrc/physics/field_solver/bem_field_kernel_c.f90bem_constants, bem_coulomb_fmm_core, bem_kinds, bem_panel_geometry, bem_versionC ABI wrapper for the simulator-independent Coulomb FMM field kernel.
bem_field_solvermodulesrc/physics/field_solver/bem_field_solver.f90bem_kinds, bem_constants, bem_types, bem_coulomb_fmm_core, bem_string_utils, bem_physics_config_types粒子位置での電場評価を direct / treecode / fmm で切り替える場ソルバ。
bem_electrostatic_snapshot_evalsubmodulesrc/physics/field_solver/bem_electrostatic_snapshot_eval.f90bem_electrostatic_snapshot, bem_coulomb_fmm_periodic_nonzero_upper_vacuumbem_electrostatic_snapshot の局所電場・電位評価を実装する submodule。
bem_field_solver_configsubmodulesrc/physics/field_solver/bem_field_solver_config.f90bem_field_solver, bem_coulomb_fmm_core, bem_physics_config_typesbem_field_solver の初期化・設定補助手続きを実装する submodule。
bem_field_solver_evalsubmodulesrc/physics/field_solver/bem_field_solver_eval.f90bem_field_solver, bem_coulomb_fmm_core, bem_panel_geometry, bem_panel_kernelbem_field_solver の電場評価と木走査ロジックを実装する submodule。
bem_field_solver_fmmsubmodulesrc/physics/field_solver/bem_field_solver_fmm.f90bem_field_solver, bem_coulomb_fmm_corebem_field_solver と FMM core の間のパネル幾何・電荷状態の更新を担う。
bem_field_solver_treesubmodulesrc/physics/field_solver/bem_field_solver_tree.f90bem_field_solverbem_field_solver の octree 構築・更新とメモリ管理を実装する submodule。
bem_coulomb_fmm_coremodulesrc/physics/field_solver/fmm/api/bem_coulomb_fmm_core.f90bem_kinds, bem_coulomb_fmm_typesmesh_typesim_config に依存しない Coulomb FMM コア API。
bem_coulomb_fmm_core_buildsubmodulesrc/physics/field_solver/fmm/api/bem_coulomb_fmm_core_build.f90bem_coulomb_fmm_core, bem_coulomb_fmm_plan_opsbem_coulomb_fmm_core の plan 構築 API ラッパ。
bem_coulomb_fmm_core_evalsubmodulesrc/physics/field_solver/fmm/api/bem_coulomb_fmm_core_eval.f90bem_coulomb_fmm_core, bem_coulomb_fmm_eval_opsbem_coulomb_fmm_core の評価 API ラッパ。
bem_coulomb_fmm_core_statesubmodulesrc/physics/field_solver/fmm/api/bem_coulomb_fmm_core_state.f90bem_coulomb_fmm_core, bem_coulomb_fmm_state_opsbem_coulomb_fmm_core の state 更新 API ラッパ。
bem_coulomb_fmm_basismodulesrc/physics/field_solver/fmm/internal/common/bem_coulomb_fmm_basis.f90bem_kinds, bem_coulomb_fmm_typesCoulomb FMM の multi-index と微分テーブル計算。
bem_coulomb_fmm_typesmodulesrc/physics/field_solver/fmm/internal/common/bem_coulomb_fmm_types.f90bem_kinds, bem_panel_geometry, bem_periodic_zero_mode_planCoulomb FMM コアで共有する型定義。
bem_coulomb_fmm_periodicmodulesrc/physics/field_solver/fmm/internal/periodic/bem_coulomb_fmm_periodic.f90bem_kinds, bem_coulomb_fmm_typesCoulomb FMM の periodic2 境界処理。
bem_coulomb_fmm_periodic_cachemodulesrc/physics/field_solver/fmm/internal/periodic/bem_coulomb_fmm_periodic_cache.f90bem_filesystem, bem_kindsVersioned stream codec for cached periodic root operators.
bem_coulomb_fmm_periodic_ewaldmodulesrc/physics/field_solver/fmm/internal/periodic/bem_coulomb_fmm_periodic_ewald.f90bem_kinds, bem_coulomb_fmm_types, bem_coulomb_fmm_periodicperiodic2 cached operator生成用のEwald teacher。
bem_coulomb_fmm_periodic_root_opsmodulesrc/physics/field_solver/fmm/internal/periodic/bem_coulomb_fmm_periodic_root_ops.f90bem_version, bem_kinds, bem_mpi, bem_filesystem, bem_coulomb_fmm_types, bem_coulomb_fmm_basis, bem_coulomb_fmm_periodic, bem_coulomb_fmm_periodic_ewald, bem_coulomb_fmm_periodic_cache, bem_regularized_qr, bem_coulomb_fmm_tree_utilsperiodic2 root operator の前計算。
bem_regularized_qrmodulesrc/physics/field_solver/fmm/internal/periodic/bem_regularized_qr.f90bem_kindsReusable column-scaled QR factorization for ridge-regularized least squares.
bem_coulomb_fmm_eval_opsmodulesrc/physics/field_solver/fmm/internal/runtime/bem_coulomb_fmm_eval_ops.f90bem_kinds, bem_constants, bem_panel_geometry, bem_panel_kernel, bem_coulomb_fmm_types, bem_coulomb_fmm_basis, bem_coulomb_fmm_periodic, bem_coulomb_fmm_tree_utils, bem_periodic_zero_mode_evalCoulomb FMM 電場評価。
bem_coulomb_fmm_state_opsmodulesrc/physics/field_solver/fmm/internal/runtime/bem_coulomb_fmm_state_ops.f90bem_kinds, bem_constants, bem_coulomb_fmm_types, bem_coulomb_fmm_tree_utils, bem_periodic_zero_mode_planCoulomb FMM state 更新と upward/downward pass。
bem_coulomb_fmm_plan_opsmodulesrc/physics/field_solver/fmm/internal/tree/bem_coulomb_fmm_plan_ops.f90bem_kinds, bem_coulomb_fmm_types, bem_coulomb_fmm_basis, bem_coulomb_fmm_periodic, bem_coulomb_fmm_periodic_ewald, bem_coulomb_fmm_periodic_root_ops, bem_panel_geometry, bem_periodic_zero_mode_plan, bem_coulomb_fmm_tree_utilsCoulomb FMM plan 構築と tree トポロジ前計算。
bem_coulomb_fmm_tree_utilsmodulesrc/physics/field_solver/fmm/internal/tree/bem_coulomb_fmm_tree_utils.f90bem_kinds, bem_coulomb_fmm_types, bem_coulomb_fmm_periodicCoulomb FMM tree 構造の共通ユーティリティ。
bem_panel_kernelmodulesrc/physics/field_solver/panel/bem_panel_kernel.f90bem_kinds, bem_constants, bem_panel_geometry, bem_panel_self_termsAnalytic free-space P0 triangle potential, field, principal value, and jump.
bem_panel_quadraturemodulesrc/physics/field_solver/panel/bem_panel_quadrature.f90bem_kinds, bem_constants, bem_panel_geometry, bem_triangle_quadratureIndependent Coulomb potential/field correctness oracles for triangle panels.
bem_panel_self_termsmodulesrc/physics/field_solver/panel/bem_panel_self_terms.f90bem_kinds, bem_panel_geometryOn-surface P0 triangle potential and principal-value field integrals.
bem_coulomb_fmm_periodic_nonzero_referencemodulesrc/physics/field_solver/periodic/bem_coulomb_fmm_periodic_nonzero_reference.f90bem_kinds, bem_constants, bem_types, bem_panel_geometry, bem_triangle_quadrature-
bem_coulomb_fmm_periodic_nonzero_upper_vacuummodulesrc/physics/field_solver/periodic/bem_coulomb_fmm_periodic_nonzero_upper_vacuum.f90bem_kinds, bem_constants, bem_types上部真空領域で周期 k/=0 panel Fourier 和をsource/target因子へ分離する。
bem_periodic_zero_mode_cmodulesrc/physics/field_solver/periodic/bem_periodic_zero_mode_c.f90bem_kinds, bem_periodic_zero_mode_eval, bem_periodic_zero_mode_planC ABI wrapper for the physical periodic zero mode.
bem_periodic_zero_mode_evalmodulesrc/physics/field_solver/periodic/bem_periodic_zero_mode_eval.f90bem_kinds, bem_constants, bem_periodic_zero_mode_plan-
bem_periodic_zero_mode_planmodulesrc/physics/field_solver/periodic/bem_periodic_zero_mode_plan.f90bem_kinds, bem_constants, bem_types-
bem_matching_plane_contractmodulesrc/physics/sheath/bem_matching_plane_contract.f90bem_kindsMatching-plane 応答の 5 入力・6 出力の並び。モデル、CSV、MPI の実装には依存しない。
bem_surface_closure_contractmodulesrc/physics/sheath/bem_surface_closure_contract.f90bem_kindsシミュレータが外部の表面電流モデルから受け取るモデル非依存の境界契約。
bem_matching_plane_zhaomodulesrc/physics/sheath/zhao/bem_matching_plane_zhao.f90bem_kinds, bem_constants, bem_matching_plane_contract, bem_sheath_model_core, bem_string_utils-
bem_sheath_model_coremodulesrc/physics/sheath/zhao/bem_sheath_model_core.f90bem_kinds, bem_constantsZhao 系シース数値モデルの core 実装。
bem_matching_plane_zhao_numericssubmodulesrc/physics/sheath/zhao/bem_matching_plane_zhao_numerics.f90bem_matching_plane_zhao-
bem_matching_plane_zhao_physicssubmodulesrc/physics/sheath/zhao/bem_matching_plane_zhao_physics.f90bem_matching_plane_zhao, bem_sheath_model_core-
bem_matching_plane_zhao_rootssubmodulesrc/physics/sheath/zhao/bem_matching_plane_zhao_roots.f90bem_matching_plane_zhao-
bem_checkpoint_contractmodulesrc/runtime/bem_checkpoint_contract.f90bem_kinds, bem_filesystemBEACH checkpoint metadata and transactional publication shared by output and restart code.
bem_filesystemmodulesrc/runtime/bem_filesystem.f90-Minimal POSIX filesystem operations used by the runtime.
bem_mesh_identitymodulesrc/runtime/bem_mesh_identity.f90bem_kinds, bem_typesOrdered mesh identity for mapping saved element charges.
bem_output_writermodulesrc/runtime/bem_output_writer.f90bem_kinds, bem_types, bem_app_config_types, bem_charge_ledger, bem_checkpoint_contract, bem_electrostatic_snapshot, bem_filesystem実行サマリ・最終CSV・履歴CSVの出力を担当するモジュール。
bem_performance_profilemodulesrc/runtime/bem_performance_profile.f90bem_kinds, bem_mpi, bem_string_utils実行フェーズごとの壁時計計測と MPI 集約出力を担う軽量プロファイラ。
bem_periodic_checkpointmodulesrc/runtime/bem_periodic_checkpoint.f90bem_kinds, bem_types, bem_app_config_types, bem_charge_ledger, bem_checkpoint_contract, bem_filesystem, bem_mpi, bem_output_writer, bem_restartaccepted batch 境界で二重化した定期チェックポイントを保存・解決する。
bem_restartmodulesrc/runtime/bem_restart.f90bem_kinds, bem_types, bem_app_config_types, bem_charge_ledger, bem_checkpoint_contract, bem_mpiチェックポイントファイルの保存/復元を扱う補助モジュール。
integermodulesrc/runtime/bem_output_writer.f90bem_kinds, bem_types, bem_app_config_types, bem_charge_ledger, bem_checkpoint_contract, bem_electrostatic_snapshot, bem_filesystem-
puremodulesrc/runtime/bem_output_writer.f90bem_kinds, bem_types, bem_app_config_types, bem_charge_ledger, bem_checkpoint_contract, bem_electrostatic_snapshot, bem_filesystem-
bem_output_writer_filessubmodulesrc/runtime/bem_output_writer_files.f90bem_output_writer, bem_types, bem_string_utilsメッシュ・電荷・電位・台帳のCSV出力。
bem_output_writer_historysubmodulesrc/runtime/bem_output_writer_history.f90bem_output_writer, bem_string_utils履歴ファイルの生成・再開とスナップショットの出力。
bem_output_writer_summarysubmodulesrc/runtime/bem_output_writer_summary.f90bem_output_writer, bem_types, bem_charge_ledger, bem_checkpoint_contract, bem_field_solver, bem_external_boundary_contract, bem_mesh_identity, bem_physics_config_types, bem_surface_current_model, bem_version, bem_string_utils実行サマリと再構築用メタデータの出力。
bem_restart_contractsubmodulesrc/runtime/bem_restart_contract.f90bem_restart, bem_mesh_identity, bem_physics_config_types, bem_checkpoint_contract再開時のスキーマ・メッシュ整合性の検証。
bem_restart_injectionsubmodulesrc/runtime/bem_restart_injection.f90bem_restart, bem_kinds, bem_mpi再開に必要な乱数状態・マクロ粒子端数の保存と復元。
bem_restart_recordssubmodulesrc/runtime/bem_restart_records.f90bem_restart, bem_kinds, bem_string_utilsチェックポイントの統計・電荷・台帳の読み込みと形式検証。
bem_app_configmodulesrc/runtime/configuration/bem_app_config.f90bem_app_config_types, bem_physics_config_types, bem_app_config_parser, bem_string_utils, bem_app_config_runtime設定型・TOMLパーサ・実行時変換ロジックを束ねる後方互換ファサード。
bem_app_config_mesh_runtimemodulesrc/runtime/configuration/bem_app_config_mesh_runtime.f90bem_kinds, bem_types, bem_templates, bem_mesh, bem_panel_surface_sides, bem_importers, bem_app_config_types, bem_string_utilsapp_config から三角形メッシュを構築する実行時変換。
bem_app_config_particle_runtimemodulesrc/runtime/configuration/bem_app_config_particle_runtime.f90bem_kinds, bem_constants, bem_types, bem_mpi, bem_electrostatic_snapshot, bem_collision, bem_injection, bem_external_boundary_contract, bem_app_config_types, bem_app_config_potential_runtime, bem_string_utils, bem_config_helpersapp_config から粒子源計画と粒子バッチを構築する実行時変換。
bem_app_config_potential_runtimemodulesrc/runtime/configuration/bem_app_config_potential_runtime.f90bem_kinds, bem_constants, bem_types, bem_electrostatic_snapshot, bem_app_config_types, bem_string_utils, bem_config_helpers粒子注入面とbox基準面の電位統計を評価する実行時変換。
bem_app_config_runtimemodulesrc/runtime/configuration/bem_app_config_runtime.f90bem_app_config_mesh_runtime, bem_app_config_particle_runtime, bem_app_config_potential_runtimeapp_config のメッシュ・粒子・電位評価を束ねる後方互換ファサード。
bem_app_config_particle_runtime_batchsubmodulesrc/runtime/configuration/bem_app_config_particle_runtime_batch.f90bem_app_config_particle_runtime, bem_particles粒子源計画に従うMPI粒子数配分、サンプリング、バッチ組み立て。
bem_app_config_particle_runtime_samplingsubmodulesrc/runtime/configuration/bem_app_config_particle_runtime_sampling.f90bem_app_config_particle_runtime粒子種別のサンプリングと電位障壁に応じた注入速度の補正。
bem_charge_ledgermodulesrc/runtime/coupling/bem_charge_ledger.f90bem_kindsbatch 間の signed charge stock と移送 flux から電荷収支を集計する。
bem_matching_plane_couplingmodulesrc/runtime/sheath/bem_matching_plane_coupling.f90bem_kinds, bem_constants, bem_types, bem_app_config, bem_string_utils, bem_charge_ledger, bem_electrostatic_snapshot, bem_surface_closure_contract, bem_matching_plane_response_provider, bem_matching_plane_zhao, bem_matching_plane_implicit, bem_mpiMatching-plane coupling state and batch lifecycle; particle replay is owned by the simulator.
bem_matching_plane_implicitmodulesrc/runtime/sheath/bem_matching_plane_implicit.f90bem_kinds, bem_matching_plane_response_provider, bem_matching_plane_zhao, bem_mpiBackward-Euler displacement solve for a matching-plane response, including continuation and MPI broadcast.
bem_matching_plane_response_providermodulesrc/runtime/sheath/bem_matching_plane_response_provider.f90bem_kinds, bem_app_config_types, bem_matching_plane_response, bem_matching_plane_zhao, bem_mpiMatching-plane 応答の table / online Zhao backend を同じ契約で提供する。
bem_surface_current_modelmodulesrc/runtime/sheath/bem_surface_current_model.f90bem_kinds, bem_constants, bem_app_config_types, bem_surface_closure_contract, bem_config_helpers, bem_sheath_model_core, bem_string_utils外部モデルから species 別の固定表面電流を解決する。
bem_matching_plane_response_provider_mpisubmodulesrc/runtime/sheath/bem_matching_plane_response_provider_mpi.f90bem_matching_plane_response_provider, bem_constants, bem_config_helpers, bem_matching_plane_response, bem_mpi, bem_string_utils応答 provider の設定解決と MPI rank 間の合意・配信を担う。
bem_matching_plane_responsemodulesrc/runtime/sheath/table/bem_matching_plane_response.f90bem_kinds, bem_mpi, bem_matching_plane_contractMatching-plane outer-sheath response table の immutable snapshot と補間。
bem_matching_plane_response_iosubmodulesrc/runtime/sheath/table/bem_matching_plane_response_io.f90bem_matching_plane_response, bem_string_utilsCSV 応答テーブルの読み込み・格子検証を担う。
bem_matching_plane_response_mpisubmodulesrc/runtime/sheath/table/bem_matching_plane_response_mpi.f90bem_matching_plane_response, bem_mpiroot の応答テーブルを配信し、全 rank で同じ補間軸と値を使う。
bem_particle_steppermodulesrc/runtime/simulator/bem_particle_stepper.f90bem_kinds, bem_types, bem_electrostatic_snapshot, bem_pusher, bem_collision, bem_boundary, bem_external_boundary_contract同一時刻の粒子状態から、空間電場を中点評価した1ステップ候補を構築する。
bem_simulatormodulesrc/runtime/simulator/bem_simulator.f90bem_kinds, bem_types, bem_app_config, bem_physics_config_types, bem_config_helpers, bem_app_config_runtime, bem_electrostatic_snapshot, bem_particle_stepper, bem_collision, bem_surface_models, bem_charge_ledger, bem_string_utils, bem_external_boundary_contract, bem_simulator_workspace, bem_surface_closure_contract, bem_surface_current_model, bem_output_writer, bem_mpi吸着(insulator)モデルのメインループを実行し、電荷堆積と統計更新を行う。
bem_simulator_workspacemodulesrc/runtime/simulator/bem_simulator_workspace.f90bem_kindsシミュレーション実行中に再利用するバッチ作業配列を管理する。
bem_simulator_chargesubmodulesrc/runtime/simulator/bem_simulator_charge.f90bem_simulator, bem_charge_ledger電荷差分の確定反映、表面電流補正、バッチ電荷台帳を実装する。
bem_simulator_iosubmodulesrc/runtime/simulator/bem_simulator_io.f90bem_simulator, bem_app_config_runtime, bem_output_writerbem_simulator の進捗表示と履歴出力を実装する submodule。
bem_simulator_loopsubmodulesrc/runtime/simulator/bem_simulator_loop.f90bem_simulator, bem_app_config_runtime, bem_matching_plane_coupling, bem_periodic_zero_mode_plan, bem_performance_profile, bem_mpi, bem_periodic_checkpoint, bem_charge_ledgerbem_simulator の主ループと粒子処理計算を実装する submodule。
bem_simulator_particlessubmodulesrc/runtime/simulator/bem_simulator_particles.f90bem_simulatorバッチ粒子の生成と追跡を実装する。連成反復と受理判定は主ループが管理する。
bem_simulator_statssubmodulesrc/runtime/simulator/bem_simulator_stats.f90bem_simulatorbem_simulator のバッチ集計・統計更新処理を実装する submodule。
bem_matching_plane_query_iomodulesrc/tools/sheath/bem_matching_plane_query_io.f90bem_kinds, bem_string_utilsOffline Zhao ツール共通の数値 query CSV 入力。物理条件と格子条件は呼出側が扱う。
bem_matching_plane_response_generatormodulesrc/tools/sheath/bem_matching_plane_response_generator.f90bem_kinds, bem_app_config_types, bem_matching_plane_response, bem_matching_plane_response_provider, bem_filesystem, bem_mpi, bem_string_utils, bem_matching_plane_query_ioOnline Zhao evaluator から既存形式の matching-plane 応答表を生成する。
bem_matching_plane_zhao_atlasmodulesrc/tools/sheath/bem_matching_plane_zhao_atlas.f90bem_kinds, bem_app_config_types, bem_matching_plane_response, bem_matching_plane_response_provider, bem_matching_plane_zhao, bem_filesystem, bem_mpi, bem_string_utils, bem_matching_plane_query_ioZhao A/B/C branchのsolvabilityを独立評価するoffline atlas生成器。
  • kind: program
  • path: app/main.f90
  • group: app
  • Internal dependencies: bem_kinds, bem_version, bem_types, bem_mpi, bem_performance_profile, bem_simulator, bem_restart, bem_periodic_checkpoint, bem_checkpoint_contract, bem_output_writer, bem_app_config, bem_mesh, bem_charge_ledger, bem_electrostatic_snapshot, bem_matching_plane_response_provider
  • external dependencies: iso_fortran_env
  • Source summary: 設定読込・メッシュ生成・粒子初期化・シミュレーション実行・結果出力を順に行うCLIエントリーポイント。
  • kind: program
  • path: app/zhao_atlas_main.f90
  • group: app
  • Internal dependencies: bem_kinds, bem_app_config, bem_matching_plane_zhao_atlas
  • external dependencies: none
  • Source summary: Zhao A/B/C solvability atlasを生成するCLI。
  • kind: program
  • path: app/zhao_response_main.f90
  • group: app
  • Internal dependencies: bem_kinds, bem_app_config, bem_matching_plane_response_generator
  • external dependencies: none
  • Source summary: Zhao online evaluatorからmatching-plane response tableを生成するCLI。
  • kind: module
  • path: src/config/bem_app_config_authoring.f90
  • group: src/config
  • Internal dependencies: bem_kinds, bem_app_config_types, bem_app_config_authoring_types
  • external dependencies: none
  • Source summary: Authoring overlay の公開入口。配列管理と領域別変換の入口を持つ。
  • kind: module
  • path: src/config/bem_app_config_authoring_types.f90
  • group: src/config
  • Internal dependencies: bem_kinds, bem_app_config_types
  • external dependencies: none
  • Source summary: TOML authoring overlay の型と default。実行時設定への変換処理は持たない。
  • kind: module
  • path: src/config/bem_app_config_types.f90
  • group: src/config
  • Internal dependencies: bem_kinds, bem_types, bem_physics_config_types
  • external dependencies: none
  • Source summary: アプリ設定の型定義と、設定由来の粒子数計算をまとめるモジュール。
  • kind: module
  • path: src/config/bem_config_helpers.f90
  • group: src/config
  • Internal dependencies: bem_kinds, bem_types, bem_app_config_types, bem_string_utils
  • external dependencies: none
  • Source summary: 設定型のヘルパー関数。パーサに依存せず下位層から利用可能。
  • kind: module
  • path: src/config/bem_config_toml.f90
  • group: src/config
  • Internal dependencies: bem_kinds, bem_types, bem_app_config_types, bem_string_utils
  • external dependencies: ieee_arithmetic, iso_fortran_env, tomlf
  • Source summary: TOML の基本型・固定長文字列・配列を検査して読み込む共通入口。
  • kind: module
  • path: src/config/bem_physics_config_types.f90
  • group: src/config
  • Internal dependencies: bem_kinds, bem_types, bem_string_utils
  • external dependencies: ieee_arithmetic
  • Source summary: 場・periodic2・panel の型付き設定と旧 [sim] 設定の正規化を定義する。
  • kind: submodule
  • path: src/config/bem_app_config_authoring_domain.f90
  • group: src/config
  • parent: bem_app_config_authoring
  • Internal dependencies: bem_app_config_authoring, bem_types, bem_string_utils
  • external dependencies: ieee_arithmetic
  • Source summary: 計算領域、境界、reservoir 設定の正規化と box の幾何条件。
  • kind: submodule
  • path: src/config/bem_app_config_authoring_geometry.f90
  • group: src/config
  • parent: bem_app_config_authoring
  • Internal dependencies: bem_app_config_authoring, bem_string_utils
  • external dependencies: none
  • Source summary: Mesh template の group、anchor、相対サイズを実座標・実寸へ変換する。
  • kind: submodule
  • path: src/config/bem_app_config_authoring_sources.f90
  • group: src/config
  • parent: bem_app_config_authoring
  • Internal dependencies: bem_app_config_authoring, bem_string_utils
  • external dependencies: none
  • Source summary: 粒子源の face_fraction 入力を注入面上の実座標へ変換する。
  • kind: module
  • path: src/config/app_config_parser/bem_app_config_parser.f90
  • group: src/config/app_config_parser
  • Internal dependencies: bem_kinds, bem_types, bem_app_config_types, bem_physics_config_types, bem_app_config_authoring, bem_string_utils, bem_config_toml, bem_injection_flux, bem_injection_geometry
  • external dependencies: tomlf, ieee_arithmetic
  • Source summary: TOML設定ファイルを toml-f で読み込み、app_config へ反映する。
  • kind: submodule
  • path: src/config/app_config_parser/bem_app_config_parser_finalize.f90
  • group: src/config/app_config_parser
  • parent: bem_app_config_parser
  • Internal dependencies: bem_app_config_parser
  • external dependencies: none
  • Source summary: 設定の正規化と領域別 preflight の実行順を管理する。
  • kind: submodule
  • path: src/config/app_config_parser/bem_app_config_parser_preflight_particles.f90
  • group: src/config/app_config_parser
  • parent: bem_app_config_parser
  • Internal dependencies: bem_app_config_parser, bem_app_config_types
  • external dependencies: none
  • Source summary: lint 済みの粒子種識別子と有効な粒子源の派生量を確定する。
  • kind: submodule
  • path: src/config/app_config_parser/bem_app_config_parser_preflight_sim.f90
  • group: src/config/app_config_parser
  • parent: bem_app_config_parser
  • Internal dependencies: bem_app_config_parser
  • external dependencies: none
  • Source summary: lint 済み設定の基本的な計算条件を確認し、時間と外部場を確定する。
  • kind: submodule
  • path: src/config/app_config_parser/bem_app_config_parser_preflight_surface.f90
  • group: src/config/app_config_parser
  • parent: bem_app_config_parser
  • Internal dependencies: bem_app_config_parser, bem_constants, bem_config_helpers, bem_app_config_types
  • external dependencies: none
  • Source summary: lint 済みの表面電流設定について、種の参照と物理モデルの成立条件を検査する。
  • kind: submodule
  • path: src/config/app_config_parser/bem_app_config_parser_read_mesh.f90
  • group: src/config/app_config_parser
  • parent: bem_app_config_parser
  • Internal dependencies: bem_app_config_parser
  • external dependencies: none
  • Source summary: メッシュの TOML 読み取りと、モード・表面モデルの preflight。
  • kind: submodule
  • path: src/config/app_config_parser/bem_app_config_parser_read_particles.f90
  • group: src/config/app_config_parser
  • parent: bem_app_config_parser
  • Internal dependencies: bem_app_config_parser
  • external dependencies: none
  • Source summary: 領域別の TOML 読み取り。意味検証と派生値の確定は preflight が担当する。
  • kind: submodule
  • path: src/config/app_config_parser/bem_app_config_parser_read_sim.f90
  • group: src/config/app_config_parser
  • parent: bem_app_config_parser
  • Internal dependencies: bem_app_config_parser
  • external dependencies: none
  • Source summary: 領域別の TOML 読み取り。意味検証と派生値の確定は preflight が担当する。
  • kind: submodule
  • path: src/config/app_config_parser/bem_app_config_parser_read_surface.f90
  • group: src/config/app_config_parser
  • parent: bem_app_config_parser
  • Internal dependencies: bem_app_config_parser
  • external dependencies: none
  • Source summary: 領域別の TOML 読み取り。意味検証と派生値の確定は preflight が担当する。
  • kind: submodule
  • path: src/config/app_config_parser/bem_app_config_parser_validate.f90
  • group: src/config/app_config_parser
  • parent: bem_app_config_parser
  • Internal dependencies: bem_app_config_parser, bem_config_helpers
  • external dependencies: none
  • Source summary: lint 済みの設定から電場・流束・粒子重みを導出し、計算結果を検査する。
  • kind: module
  • path: src/core/bem_constants.f90
  • group: src/core
  • Internal dependencies: bem_kinds
  • external dependencies: none
  • Source summary: シミュレーションで使用する物理定数を定義する。
  • kind: module
  • path: src/core/bem_external_boundary_contract.f90
  • group: src/core
  • Internal dependencies: bem_kinds, bem_string_utils
  • external dependencies: none
  • Source summary: 局所 reservoir 流入と通常 open 面の処理を実行時契約へ正規化する。
  • kind: module
  • path: src/core/bem_kinds.f90
  • group: src/core
  • Internal dependencies: none
  • external dependencies: iso_fortran_env
  • Source summary: 倍精度実数と32bit整数のkind定義を集約する基盤モジュール。
  • kind: module
  • path: src/core/bem_mpi.F90
  • group: src/core
  • Internal dependencies: bem_kinds
  • external dependencies: mpi
  • Source summary: MPIの初期化・集約を抽象化し、非MPIビルドでは単一ランク動作へフォールバックする。
  • kind: module
  • path: src/core/bem_string_utils.f90
  • group: src/core
  • Internal dependencies: none
  • external dependencies: none
  • Source summary: ASCII 文字列操作ユーティリティ。
  • kind: module
  • path: src/core/bem_types.f90
  • group: src/core
  • Internal dependencies: bem_kinds
  • external dependencies: none
  • Source summary: シミュレーション設定・統計・メッシュ・粒子・衝突情報の主要データ型を定義する。
  • kind: module
  • path: src/core/bem_version.F90
  • group: src/core
  • Internal dependencies: none
  • external dependencies: none
  • Source summary: BEACH build metadata stamped by build.sh.
  • kind: module
  • path: src/mesh/bem_importers.f90
  • group: src/mesh
  • Internal dependencies: bem_kinds, bem_types, bem_mesh
  • external dependencies: none
  • Source summary: OBJメッシュを走査・解析し、内部 mesh_type へ変換するインポートモジュール。
  • kind: module
  • path: src/mesh/bem_mesh.f90
  • group: src/mesh
  • Internal dependencies: bem_kinds, bem_types, bem_string_utils, bem_panel_geometry, bem_triangle_quadrature
  • external dependencies: ieee_arithmetic
  • Source summary: 三角形メッシュ幾何量(重心・法線・AABB・代表長)を前計算して保持するモジュール。
  • kind: module
  • path: src/mesh/bem_templates.f90
  • group: src/mesh
  • Internal dependencies: bem_kinds, bem_types, bem_mesh
  • external dependencies: none
  • Source summary: 平面/穴あき平面/円板/リング/箱/円柱/球テンプレートから三角形メッシュを生成するユーティリティ。
  • kind: module
  • path: src/mesh/panel/bem_panel_geometry.f90
  • group: src/mesh/panel
  • Internal dependencies: bem_kinds
  • external dependencies: ieee_arithmetic
  • Source summary: Ordered triangle geometry and exact Cartesian surface moments.
  • kind: module
  • path: src/mesh/panel/bem_panel_surface_sides.f90
  • group: src/mesh/panel
  • Internal dependencies: bem_kinds, bem_types, bem_string_utils
  • external dependencies: none
  • Source summary: Resolve physical vacuum sides without changing ordered triangle winding.
  • kind: module
  • path: src/mesh/panel/bem_triangle_quadrature.f90
  • group: src/mesh/panel
  • Internal dependencies: bem_kinds, bem_constants, bem_panel_geometry
  • external dependencies: none
  • Source summary: Triangle cubature rules and Gauss-Duffy quadrature plans.
  • kind: module
  • path: src/particles/bem_injection.f90
  • group: src/particles
  • Internal dependencies: bem_injection_random, bem_injection_geometry, bem_injection_flux, bem_injection_velocity_grid, bem_photoelectron_injection
  • external dependencies: none
  • Source summary: 粒子注入APIを責務別internal moduleから再公開する互換facade。
  • kind: module
  • path: src/particles/bem_particles.f90
  • group: src/particles
  • Internal dependencies: bem_kinds, bem_types
  • external dependencies: none
  • Source summary: 粒子SoAデータ構造の初期化を提供するモジュール。
  • kind: module
  • path: src/particles/injection/bem_injection_flux.f90
  • group: src/particles/injection
  • Internal dependencies: bem_kinds, bem_constants, bem_injection_geometry, bem_injection_random
  • external dependencies: ieee_arithmetic
  • Source summary: Maxwell reservoirの流束、macro粒子数、面速度sampling。
  • kind: module
  • path: src/particles/injection/bem_injection_geometry.f90
  • group: src/particles/injection
  • Internal dependencies: bem_kinds, bem_string_utils
  • external dependencies: none
  • Source summary: box面注入で共有する面軸と開口geometryの解決。
  • kind: module
  • path: src/particles/injection/bem_injection_random.f90
  • group: src/particles/injection
  • Internal dependencies: bem_kinds, bem_constants, bem_particles, bem_types
  • external dependencies: none
  • Source summary: 粒子注入で共有する乱数初期化と基本分布sampling。
  • kind: module
  • path: src/particles/injection/bem_injection_velocity_grid.f90
  • group: src/particles/injection
  • Internal dependencies: bem_kinds, bem_string_utils, bem_injection_geometry
  • external dependencies: ieee_arithmetic
  • Source summary: CSV速度grid reservoirの読込、補間、sampling。
  • kind: module
  • path: src/particles/injection/bem_photoelectron_injection.f90
  • group: src/particles/injection
  • Internal dependencies: bem_kinds, bem_constants, bem_types, bem_boundary, bem_collision, bem_string_utils, bem_injection_flux, bem_injection_geometry, bem_injection_random
  • external dependencies: iso_fortran_env
  • Source summary: 光線追跡による光電子放出位置と速度のsampling。
  • kind: module
  • path: src/physics/bem_boundary.f90
  • group: src/physics
  • Internal dependencies: bem_kinds, bem_types
  • external dependencies: ieee_arithmetic
  • Source summary: シミュレーションボックス境界(流出/反射/面内再配置反射/周期)を適用するモジュール。
  • kind: module
  • path: src/physics/bem_collision.f90
  • group: src/physics
  • Internal dependencies: bem_kinds, bem_types, bem_string_utils
  • external dependencies: ieee_arithmetic, iso_fortran_env
  • Source summary: 粒子軌道セグメントと三角形要素の交差判定を提供する衝突検出モジュール。
  • kind: module
  • path: src/physics/bem_pusher.f90
  • group: src/physics
  • Internal dependencies: bem_kinds
  • external dependencies: none
  • Source summary: 荷電粒子の時間発展にBoris法を適用する運動方程式ソルバ。
  • kind: module
  • path: src/physics/bem_surface_models.f90
  • group: src/physics
  • Internal dependencies: bem_kinds, bem_types, bem_string_utils
  • external dependencies: none
  • Source summary: 表面モデルごとの電荷更新後処理を扱うモジュール。
  • kind: submodule
  • path: src/physics/bem_surface_models_conductor.f90
  • group: src/physics
  • parent: bem_surface_models
  • Internal dependencies: bem_surface_models, bem_constants, bem_panel_geometry, bem_panel_kernel
  • external dependencies: none
  • Source summary: bem_surface_models の浮遊導体電荷再配分を実装する submodule。
  • kind: module
  • path: src/physics/field_solver/bem_electrostatic_snapshot.f90
  • group: src/physics/field_solver
  • Internal dependencies: bem_kinds, bem_constants, bem_types, bem_field_solver, bem_physics_config_types, bem_string_utils, bem_periodic_zero_mode_plan, bem_periodic_zero_mode_eval, bem_coulomb_fmm_periodic_nonzero_reference, bem_coulomb_fmm_periodic_nonzero_upper_vacuum, bem_panel_geometry, bem_panel_kernel
  • external dependencies: ieee_arithmetic
  • Source summary: 1バッチ内で固定する静電場 snapshot。
  • kind: module
  • path: src/physics/field_solver/bem_field_kernel_c.f90
  • group: src/physics/field_solver
  • Internal dependencies: bem_constants, bem_coulomb_fmm_core, bem_kinds, bem_panel_geometry, bem_version
  • external dependencies: ieee_arithmetic, iso_c_binding
  • Source summary: C ABI wrapper for the simulator-independent Coulomb FMM field kernel.
  • kind: module
  • path: src/physics/field_solver/bem_field_solver.f90
  • group: src/physics/field_solver
  • Internal dependencies: bem_kinds, bem_constants, bem_types, bem_coulomb_fmm_core, bem_string_utils, bem_physics_config_types
  • external dependencies: ieee_arithmetic
  • Source summary: 粒子位置での電場評価を direct / treecode / fmm で切り替える場ソルバ。
  • kind: submodule
  • path: src/physics/field_solver/bem_electrostatic_snapshot_eval.f90
  • group: src/physics/field_solver
  • parent: bem_electrostatic_snapshot
  • Internal dependencies: bem_electrostatic_snapshot, bem_coulomb_fmm_periodic_nonzero_upper_vacuum
  • external dependencies: none
  • Source summary: bem_electrostatic_snapshot の局所電場・電位評価を実装する submodule。
  • kind: submodule
  • path: src/physics/field_solver/bem_field_solver_config.f90
  • group: src/physics/field_solver
  • parent: bem_field_solver
  • Internal dependencies: bem_field_solver, bem_coulomb_fmm_core, bem_physics_config_types
  • external dependencies: none
  • Source summary: bem_field_solver の初期化・設定補助手続きを実装する submodule。
  • kind: submodule
  • path: src/physics/field_solver/bem_field_solver_eval.f90
  • group: src/physics/field_solver
  • parent: bem_field_solver
  • Internal dependencies: bem_field_solver, bem_coulomb_fmm_core, bem_panel_geometry, bem_panel_kernel
  • external dependencies: none
  • Source summary: bem_field_solver の電場評価と木走査ロジックを実装する submodule。
  • kind: submodule
  • path: src/physics/field_solver/bem_field_solver_fmm.f90
  • group: src/physics/field_solver
  • parent: bem_field_solver
  • Internal dependencies: bem_field_solver, bem_coulomb_fmm_core
  • external dependencies: none
  • Source summary: bem_field_solver と FMM core の間のパネル幾何・電荷状態の更新を担う。
  • kind: submodule
  • path: src/physics/field_solver/bem_field_solver_tree.f90
  • group: src/physics/field_solver
  • parent: bem_field_solver
  • Internal dependencies: bem_field_solver
  • external dependencies: none
  • Source summary: bem_field_solver の octree 構築・更新とメモリ管理を実装する submodule。
  • kind: module
  • path: src/physics/field_solver/fmm/api/bem_coulomb_fmm_core.f90
  • group: src/physics/field_solver/fmm/api
  • Internal dependencies: bem_kinds, bem_coulomb_fmm_types
  • external dependencies: none
  • Source summary: mesh_typesim_config に依存しない Coulomb FMM コア API。
  • kind: submodule
  • path: src/physics/field_solver/fmm/api/bem_coulomb_fmm_core_build.f90
  • group: src/physics/field_solver/fmm/api
  • parent: bem_coulomb_fmm_core
  • Internal dependencies: bem_coulomb_fmm_core, bem_coulomb_fmm_plan_ops
  • external dependencies: none
  • Source summary: bem_coulomb_fmm_core の plan 構築 API ラッパ。
  • kind: submodule
  • path: src/physics/field_solver/fmm/api/bem_coulomb_fmm_core_eval.f90
  • group: src/physics/field_solver/fmm/api
  • parent: bem_coulomb_fmm_core
  • Internal dependencies: bem_coulomb_fmm_core, bem_coulomb_fmm_eval_ops
  • external dependencies: none
  • Source summary: bem_coulomb_fmm_core の評価 API ラッパ。
  • kind: submodule
  • path: src/physics/field_solver/fmm/api/bem_coulomb_fmm_core_state.f90
  • group: src/physics/field_solver/fmm/api
  • parent: bem_coulomb_fmm_core
  • Internal dependencies: bem_coulomb_fmm_core, bem_coulomb_fmm_state_ops
  • external dependencies: none
  • Source summary: bem_coulomb_fmm_core の state 更新 API ラッパ。
  • kind: module
  • path: src/physics/field_solver/fmm/internal/common/bem_coulomb_fmm_basis.f90
  • group: src/physics/field_solver/fmm/internal/common
  • Internal dependencies: bem_kinds, bem_coulomb_fmm_types
  • external dependencies: none
  • Source summary: Coulomb FMM の multi-index と微分テーブル計算。
  • kind: module
  • path: src/physics/field_solver/fmm/internal/common/bem_coulomb_fmm_types.f90
  • group: src/physics/field_solver/fmm/internal/common
  • Internal dependencies: bem_kinds, bem_panel_geometry, bem_periodic_zero_mode_plan
  • external dependencies: none
  • Source summary: Coulomb FMM コアで共有する型定義。
  • kind: module
  • path: src/physics/field_solver/fmm/internal/periodic/bem_coulomb_fmm_periodic.f90
  • group: src/physics/field_solver/fmm/internal/periodic
  • Internal dependencies: bem_kinds, bem_coulomb_fmm_types
  • external dependencies: none
  • Source summary: Coulomb FMM の periodic2 境界処理。
  • kind: module
  • path: src/physics/field_solver/fmm/internal/periodic/bem_coulomb_fmm_periodic_cache.f90
  • group: src/physics/field_solver/fmm/internal/periodic
  • Internal dependencies: bem_filesystem, bem_kinds
  • external dependencies: iso_fortran_env
  • Source summary: Versioned stream codec for cached periodic root operators.
  • kind: module
  • path: src/physics/field_solver/fmm/internal/periodic/bem_coulomb_fmm_periodic_ewald.f90
  • group: src/physics/field_solver/fmm/internal/periodic
  • Internal dependencies: bem_kinds, bem_coulomb_fmm_types, bem_coulomb_fmm_periodic
  • external dependencies: none
  • Source summary: periodic2 cached operator生成用のEwald teacher。
  • kind: module
  • path: src/physics/field_solver/fmm/internal/periodic/bem_coulomb_fmm_periodic_root_ops.f90
  • group: src/physics/field_solver/fmm/internal/periodic
  • Internal dependencies: bem_version, bem_kinds, bem_mpi, bem_filesystem, bem_coulomb_fmm_types, bem_coulomb_fmm_basis, bem_coulomb_fmm_periodic, bem_coulomb_fmm_periodic_ewald, bem_coulomb_fmm_periodic_cache, bem_regularized_qr, bem_coulomb_fmm_tree_utils
  • external dependencies: none
  • Source summary: periodic2 root operator の前計算。
  • kind: module
  • path: src/physics/field_solver/fmm/internal/periodic/bem_regularized_qr.f90
  • group: src/physics/field_solver/fmm/internal/periodic
  • Internal dependencies: bem_kinds
  • external dependencies: none
  • Source summary: Reusable column-scaled QR factorization for ridge-regularized least squares.
  • kind: module
  • path: src/physics/field_solver/fmm/internal/runtime/bem_coulomb_fmm_eval_ops.f90
  • group: src/physics/field_solver/fmm/internal/runtime
  • Internal dependencies: bem_kinds, bem_constants, bem_panel_geometry, bem_panel_kernel, bem_coulomb_fmm_types, bem_coulomb_fmm_basis, bem_coulomb_fmm_periodic, bem_coulomb_fmm_tree_utils, bem_periodic_zero_mode_eval
  • external dependencies: none
  • Source summary: Coulomb FMM 電場評価。
  • kind: module
  • path: src/physics/field_solver/fmm/internal/runtime/bem_coulomb_fmm_state_ops.f90
  • group: src/physics/field_solver/fmm/internal/runtime
  • Internal dependencies: bem_kinds, bem_constants, bem_coulomb_fmm_types, bem_coulomb_fmm_tree_utils, bem_periodic_zero_mode_plan
  • external dependencies: none
  • Source summary: Coulomb FMM state 更新と upward/downward pass。
  • kind: module
  • path: src/physics/field_solver/fmm/internal/tree/bem_coulomb_fmm_plan_ops.f90
  • group: src/physics/field_solver/fmm/internal/tree
  • Internal dependencies: bem_kinds, bem_coulomb_fmm_types, bem_coulomb_fmm_basis, bem_coulomb_fmm_periodic, bem_coulomb_fmm_periodic_ewald, bem_coulomb_fmm_periodic_root_ops, bem_panel_geometry, bem_periodic_zero_mode_plan, bem_coulomb_fmm_tree_utils
  • external dependencies: none
  • Source summary: Coulomb FMM plan 構築と tree トポロジ前計算。
  • kind: module
  • path: src/physics/field_solver/fmm/internal/tree/bem_coulomb_fmm_tree_utils.f90
  • group: src/physics/field_solver/fmm/internal/tree
  • Internal dependencies: bem_kinds, bem_coulomb_fmm_types, bem_coulomb_fmm_periodic
  • external dependencies: none
  • Source summary: Coulomb FMM tree 構造の共通ユーティリティ。
  • kind: module
  • path: src/physics/field_solver/panel/bem_panel_kernel.f90
  • group: src/physics/field_solver/panel
  • Internal dependencies: bem_kinds, bem_constants, bem_panel_geometry, bem_panel_self_terms
  • external dependencies: none
  • Source summary: Analytic free-space P0 triangle potential, field, principal value, and jump.
  • kind: module
  • path: src/physics/field_solver/panel/bem_panel_quadrature.f90
  • group: src/physics/field_solver/panel
  • Internal dependencies: bem_kinds, bem_constants, bem_panel_geometry, bem_triangle_quadrature
  • external dependencies: none
  • Source summary: Independent Coulomb potential/field correctness oracles for triangle panels.
  • kind: module
  • path: src/physics/field_solver/panel/bem_panel_self_terms.f90
  • group: src/physics/field_solver/panel
  • Internal dependencies: bem_kinds, bem_panel_geometry
  • external dependencies: none
  • Source summary: On-surface P0 triangle potential and principal-value field integrals.

bem_coulomb_fmm_periodic_nonzero_reference

Section titled “bem_coulomb_fmm_periodic_nonzero_reference”
  • kind: module
  • path: src/physics/field_solver/periodic/bem_coulomb_fmm_periodic_nonzero_reference.f90
  • group: src/physics/field_solver/periodic
  • Internal dependencies: bem_kinds, bem_constants, bem_types, bem_panel_geometry, bem_triangle_quadrature
  • external dependencies: ieee_arithmetic

bem_coulomb_fmm_periodic_nonzero_upper_vacuum

Section titled “bem_coulomb_fmm_periodic_nonzero_upper_vacuum”
  • kind: module
  • path: src/physics/field_solver/periodic/bem_coulomb_fmm_periodic_nonzero_upper_vacuum.f90
  • group: src/physics/field_solver/periodic
  • Internal dependencies: bem_kinds, bem_constants, bem_types
  • external dependencies: ieee_arithmetic
  • Source summary: 上部真空領域で周期 k/=0 panel Fourier 和をsource/target因子へ分離する。
  • kind: module
  • path: src/physics/field_solver/periodic/bem_periodic_zero_mode_c.f90
  • group: src/physics/field_solver/periodic
  • Internal dependencies: bem_kinds, bem_periodic_zero_mode_eval, bem_periodic_zero_mode_plan
  • external dependencies: ieee_arithmetic, iso_c_binding
  • Source summary: C ABI wrapper for the physical periodic zero mode.
  • kind: module
  • path: src/physics/field_solver/periodic/bem_periodic_zero_mode_eval.f90
  • group: src/physics/field_solver/periodic
  • Internal dependencies: bem_kinds, bem_constants, bem_periodic_zero_mode_plan
  • external dependencies: none
  • kind: module
  • path: src/physics/field_solver/periodic/bem_periodic_zero_mode_plan.f90
  • group: src/physics/field_solver/periodic
  • Internal dependencies: bem_kinds, bem_constants, bem_types
  • external dependencies: ieee_arithmetic
  • kind: module
  • path: src/physics/sheath/bem_matching_plane_contract.f90
  • group: src/physics/sheath
  • Internal dependencies: bem_kinds
  • external dependencies: none
  • Source summary: Matching-plane 応答の 5 入力・6 出力の並び。モデル、CSV、MPI の実装には依存しない。
  • kind: module
  • path: src/physics/sheath/bem_surface_closure_contract.f90
  • group: src/physics/sheath
  • Internal dependencies: bem_kinds
  • external dependencies: none
  • Source summary: シミュレータが外部の表面電流モデルから受け取るモデル非依存の境界契約。
  • kind: module
  • path: src/physics/sheath/zhao/bem_matching_plane_zhao.f90
  • group: src/physics/sheath/zhao
  • Internal dependencies: bem_kinds, bem_constants, bem_matching_plane_contract, bem_sheath_model_core, bem_string_utils
  • external dependencies: ieee_arithmetic
  • kind: module
  • path: src/physics/sheath/zhao/bem_sheath_model_core.f90
  • group: src/physics/sheath/zhao
  • Internal dependencies: bem_kinds, bem_constants
  • external dependencies: ieee_arithmetic
  • Source summary: Zhao 系シース数値モデルの core 実装。
  • kind: submodule
  • path: src/physics/sheath/zhao/bem_matching_plane_zhao_numerics.f90
  • group: src/physics/sheath/zhao
  • parent: bem_matching_plane_zhao
  • Internal dependencies: bem_matching_plane_zhao
  • external dependencies: none
  • kind: submodule
  • path: src/physics/sheath/zhao/bem_matching_plane_zhao_physics.f90
  • group: src/physics/sheath/zhao
  • parent: bem_matching_plane_zhao
  • Internal dependencies: bem_matching_plane_zhao, bem_sheath_model_core
  • external dependencies: none
  • kind: submodule
  • path: src/physics/sheath/zhao/bem_matching_plane_zhao_roots.f90
  • group: src/physics/sheath/zhao
  • parent: bem_matching_plane_zhao
  • Internal dependencies: bem_matching_plane_zhao
  • external dependencies: none
  • kind: module
  • path: src/runtime/bem_checkpoint_contract.f90
  • group: src/runtime
  • Internal dependencies: bem_kinds, bem_filesystem
  • external dependencies: none
  • Source summary: BEACH checkpoint metadata and transactional publication shared by output and restart code.
  • kind: module
  • path: src/runtime/bem_filesystem.f90
  • group: src/runtime
  • Internal dependencies: none
  • external dependencies: iso_c_binding
  • Source summary: Minimal POSIX filesystem operations used by the runtime.
  • kind: module
  • path: src/runtime/bem_mesh_identity.f90
  • group: src/runtime
  • Internal dependencies: bem_kinds, bem_types
  • external dependencies: none
  • Source summary: Ordered mesh identity for mapping saved element charges.
  • kind: module
  • path: src/runtime/bem_output_writer.f90
  • group: src/runtime
  • Internal dependencies: bem_kinds, bem_types, bem_app_config_types, bem_charge_ledger, bem_checkpoint_contract, bem_electrostatic_snapshot, bem_filesystem
  • external dependencies: none
  • Source summary: 実行サマリ・最終CSV・履歴CSVの出力を担当するモジュール。
  • kind: module
  • path: src/runtime/bem_performance_profile.f90
  • group: src/runtime
  • Internal dependencies: bem_kinds, bem_mpi, bem_string_utils
  • external dependencies: iso_fortran_env
  • Source summary: 実行フェーズごとの壁時計計測と MPI 集約出力を担う軽量プロファイラ。
  • kind: module
  • path: src/runtime/bem_periodic_checkpoint.f90
  • group: src/runtime
  • Internal dependencies: bem_kinds, bem_types, bem_app_config_types, bem_charge_ledger, bem_checkpoint_contract, bem_filesystem, bem_mpi, bem_output_writer, bem_restart
  • external dependencies: none
  • Source summary: accepted batch 境界で二重化した定期チェックポイントを保存・解決する。
  • kind: module
  • path: src/runtime/bem_restart.f90
  • group: src/runtime
  • Internal dependencies: bem_kinds, bem_types, bem_app_config_types, bem_charge_ledger, bem_checkpoint_contract, bem_mpi
  • external dependencies: ieee_arithmetic
  • Source summary: チェックポイントファイルの保存/復元を扱う補助モジュール。
  • kind: module
  • path: src/runtime/bem_output_writer.f90
  • group: src/runtime
  • Internal dependencies: bem_kinds, bem_types, bem_app_config_types, bem_charge_ledger, bem_checkpoint_contract, bem_electrostatic_snapshot, bem_filesystem
  • external dependencies: none
  • kind: module
  • path: src/runtime/bem_output_writer.f90
  • group: src/runtime
  • Internal dependencies: bem_kinds, bem_types, bem_app_config_types, bem_charge_ledger, bem_checkpoint_contract, bem_electrostatic_snapshot, bem_filesystem
  • external dependencies: none
  • kind: submodule
  • path: src/runtime/bem_output_writer_files.f90
  • group: src/runtime
  • parent: bem_output_writer
  • Internal dependencies: bem_output_writer, bem_types, bem_string_utils
  • external dependencies: none
  • Source summary: メッシュ・電荷・電位・台帳のCSV出力。
  • kind: submodule
  • path: src/runtime/bem_output_writer_history.f90
  • group: src/runtime
  • parent: bem_output_writer
  • Internal dependencies: bem_output_writer, bem_string_utils
  • external dependencies: none
  • Source summary: 履歴ファイルの生成・再開とスナップショットの出力。
  • kind: submodule
  • path: src/runtime/bem_output_writer_summary.f90
  • group: src/runtime
  • parent: bem_output_writer
  • Internal dependencies: bem_output_writer, bem_types, bem_charge_ledger, bem_checkpoint_contract, bem_field_solver, bem_external_boundary_contract, bem_mesh_identity, bem_physics_config_types, bem_surface_current_model, bem_version, bem_string_utils
  • external dependencies: none
  • Source summary: 実行サマリと再構築用メタデータの出力。
  • kind: submodule
  • path: src/runtime/bem_restart_contract.f90
  • group: src/runtime
  • parent: bem_restart
  • Internal dependencies: bem_restart, bem_mesh_identity, bem_physics_config_types, bem_checkpoint_contract
  • external dependencies: none
  • Source summary: 再開時のスキーマ・メッシュ整合性の検証。
  • kind: submodule
  • path: src/runtime/bem_restart_injection.f90
  • group: src/runtime
  • parent: bem_restart
  • Internal dependencies: bem_restart, bem_kinds, bem_mpi
  • external dependencies: none
  • Source summary: 再開に必要な乱数状態・マクロ粒子端数の保存と復元。
  • kind: submodule
  • path: src/runtime/bem_restart_records.f90
  • group: src/runtime
  • parent: bem_restart
  • Internal dependencies: bem_restart, bem_kinds, bem_string_utils
  • external dependencies: none
  • Source summary: チェックポイントの統計・電荷・台帳の読み込みと形式検証。
  • kind: module
  • path: src/runtime/configuration/bem_app_config.f90
  • group: src/runtime/configuration
  • Internal dependencies: bem_app_config_types, bem_physics_config_types, bem_app_config_parser, bem_string_utils, bem_app_config_runtime
  • external dependencies: none
  • Source summary: 設定型・TOMLパーサ・実行時変換ロジックを束ねる後方互換ファサード。
  • kind: module
  • path: src/runtime/configuration/bem_app_config_mesh_runtime.f90
  • group: src/runtime/configuration
  • Internal dependencies: bem_kinds, bem_types, bem_templates, bem_mesh, bem_panel_surface_sides, bem_importers, bem_app_config_types, bem_string_utils
  • external dependencies: ieee_arithmetic
  • Source summary: app_config から三角形メッシュを構築する実行時変換。
  • kind: module
  • path: src/runtime/configuration/bem_app_config_particle_runtime.f90
  • group: src/runtime/configuration
  • Internal dependencies: bem_kinds, bem_constants, bem_types, bem_mpi, bem_electrostatic_snapshot, bem_collision, bem_injection, bem_external_boundary_contract, bem_app_config_types, bem_app_config_potential_runtime, bem_string_utils, bem_config_helpers
  • external dependencies: iso_fortran_env, ieee_arithmetic
  • Source summary: app_config から粒子源計画と粒子バッチを構築する実行時変換。
  • kind: module
  • path: src/runtime/configuration/bem_app_config_potential_runtime.f90
  • group: src/runtime/configuration
  • Internal dependencies: bem_kinds, bem_constants, bem_types, bem_electrostatic_snapshot, bem_app_config_types, bem_string_utils, bem_config_helpers
  • external dependencies: iso_fortran_env, ieee_arithmetic
  • Source summary: 粒子注入面とbox基準面の電位統計を評価する実行時変換。
  • kind: module
  • path: src/runtime/configuration/bem_app_config_runtime.f90
  • group: src/runtime/configuration
  • Internal dependencies: bem_app_config_mesh_runtime, bem_app_config_particle_runtime, bem_app_config_potential_runtime
  • external dependencies: none
  • Source summary: app_config のメッシュ・粒子・電位評価を束ねる後方互換ファサード。
  • kind: submodule
  • path: src/runtime/configuration/bem_app_config_particle_runtime_batch.f90
  • group: src/runtime/configuration
  • parent: bem_app_config_particle_runtime
  • Internal dependencies: bem_app_config_particle_runtime, bem_particles
  • external dependencies: none
  • Source summary: 粒子源計画に従うMPI粒子数配分、サンプリング、バッチ組み立て。
  • kind: submodule
  • path: src/runtime/configuration/bem_app_config_particle_runtime_sampling.f90
  • group: src/runtime/configuration
  • parent: bem_app_config_particle_runtime
  • Internal dependencies: bem_app_config_particle_runtime
  • external dependencies: none
  • Source summary: 粒子種別のサンプリングと電位障壁に応じた注入速度の補正。
  • kind: module
  • path: src/runtime/coupling/bem_charge_ledger.f90
  • group: src/runtime/coupling
  • Internal dependencies: bem_kinds
  • external dependencies: ieee_arithmetic
  • Source summary: batch 間の signed charge stock と移送 flux から電荷収支を集計する。
  • kind: module
  • path: src/runtime/sheath/bem_matching_plane_coupling.f90
  • group: src/runtime/sheath
  • Internal dependencies: bem_kinds, bem_constants, bem_types, bem_app_config, bem_string_utils, bem_charge_ledger, bem_electrostatic_snapshot, bem_surface_closure_contract, bem_matching_plane_response_provider, bem_matching_plane_zhao, bem_matching_plane_implicit, bem_mpi
  • external dependencies: iso_fortran_env, ieee_arithmetic
  • Source summary: Matching-plane coupling state and batch lifecycle; particle replay is owned by the simulator.
  • kind: module
  • path: src/runtime/sheath/bem_matching_plane_implicit.f90
  • group: src/runtime/sheath
  • Internal dependencies: bem_kinds, bem_matching_plane_response_provider, bem_matching_plane_zhao, bem_mpi
  • external dependencies: iso_fortran_env, ieee_arithmetic
  • Source summary: Backward-Euler displacement solve for a matching-plane response, including continuation and MPI broadcast.
  • kind: module
  • path: src/runtime/sheath/bem_matching_plane_response_provider.f90
  • group: src/runtime/sheath
  • Internal dependencies: bem_kinds, bem_app_config_types, bem_matching_plane_response, bem_matching_plane_zhao, bem_mpi
  • external dependencies: ieee_arithmetic
  • Source summary: Matching-plane 応答の table / online Zhao backend を同じ契約で提供する。
  • kind: module
  • path: src/runtime/sheath/bem_surface_current_model.f90
  • group: src/runtime/sheath
  • Internal dependencies: bem_kinds, bem_constants, bem_app_config_types, bem_surface_closure_contract, bem_config_helpers, bem_sheath_model_core, bem_string_utils
  • external dependencies: ieee_arithmetic
  • Source summary: 外部モデルから species 別の固定表面電流を解決する。
  • kind: submodule
  • path: src/runtime/sheath/bem_matching_plane_response_provider_mpi.f90
  • group: src/runtime/sheath
  • parent: bem_matching_plane_response_provider
  • Internal dependencies: bem_matching_plane_response_provider, bem_constants, bem_config_helpers, bem_matching_plane_response, bem_mpi, bem_string_utils
  • external dependencies: none
  • Source summary: 応答 provider の設定解決と MPI rank 間の合意・配信を担う。
  • kind: module
  • path: src/runtime/sheath/table/bem_matching_plane_response.f90
  • group: src/runtime/sheath/table
  • Internal dependencies: bem_kinds, bem_mpi, bem_matching_plane_contract
  • external dependencies: ieee_arithmetic
  • Source summary: Matching-plane outer-sheath response table の immutable snapshot と補間。
  • kind: submodule
  • path: src/runtime/sheath/table/bem_matching_plane_response_io.f90
  • group: src/runtime/sheath/table
  • parent: bem_matching_plane_response
  • Internal dependencies: bem_matching_plane_response, bem_string_utils
  • external dependencies: none
  • Source summary: CSV 応答テーブルの読み込み・格子検証を担う。
  • kind: submodule
  • path: src/runtime/sheath/table/bem_matching_plane_response_mpi.f90
  • group: src/runtime/sheath/table
  • parent: bem_matching_plane_response
  • Internal dependencies: bem_matching_plane_response, bem_mpi
  • external dependencies: none
  • Source summary: root の応答テーブルを配信し、全 rank で同じ補間軸と値を使う。
  • kind: module
  • path: src/runtime/simulator/bem_particle_stepper.f90
  • group: src/runtime/simulator
  • Internal dependencies: bem_kinds, bem_types, bem_electrostatic_snapshot, bem_pusher, bem_collision, bem_boundary, bem_external_boundary_contract
  • external dependencies: ieee_arithmetic
  • Source summary: 同一時刻の粒子状態から、空間電場を中点評価した1ステップ候補を構築する。
  • kind: module
  • path: src/runtime/simulator/bem_simulator.f90
  • group: src/runtime/simulator
  • Internal dependencies: bem_kinds, bem_types, bem_app_config, bem_physics_config_types, bem_config_helpers, bem_app_config_runtime, bem_electrostatic_snapshot, bem_particle_stepper, bem_collision, bem_surface_models, bem_charge_ledger, bem_string_utils, bem_external_boundary_contract, bem_simulator_workspace, bem_surface_closure_contract, bem_surface_current_model, bem_output_writer, bem_mpi
  • external dependencies: iso_fortran_env, ieee_arithmetic
  • Source summary: 吸着(insulator)モデルのメインループを実行し、電荷堆積と統計更新を行う。
  • kind: module
  • path: src/runtime/simulator/bem_simulator_workspace.f90
  • group: src/runtime/simulator
  • Internal dependencies: bem_kinds
  • external dependencies: none
  • Source summary: シミュレーション実行中に再利用するバッチ作業配列を管理する。
  • kind: submodule
  • path: src/runtime/simulator/bem_simulator_charge.f90
  • group: src/runtime/simulator
  • parent: bem_simulator
  • Internal dependencies: bem_simulator, bem_charge_ledger
  • external dependencies: iso_fortran_env
  • Source summary: 電荷差分の確定反映、表面電流補正、バッチ電荷台帳を実装する。
  • kind: submodule
  • path: src/runtime/simulator/bem_simulator_io.f90
  • group: src/runtime/simulator
  • parent: bem_simulator
  • Internal dependencies: bem_simulator, bem_app_config_runtime, bem_output_writer
  • external dependencies: none
  • Source summary: bem_simulator の進捗表示と履歴出力を実装する submodule。
  • kind: submodule
  • path: src/runtime/simulator/bem_simulator_loop.f90
  • group: src/runtime/simulator
  • parent: bem_simulator
  • Internal dependencies: bem_simulator, bem_app_config_runtime, bem_matching_plane_coupling, bem_periodic_zero_mode_plan, bem_performance_profile, bem_mpi, bem_periodic_checkpoint, bem_charge_ledger
  • external dependencies: iso_fortran_env
  • Source summary: bem_simulator の主ループと粒子処理計算を実装する submodule。
  • kind: submodule
  • path: src/runtime/simulator/bem_simulator_particles.f90
  • group: src/runtime/simulator
  • parent: bem_simulator
  • Internal dependencies: bem_simulator
  • external dependencies: none
  • Source summary: バッチ粒子の生成と追跡を実装する。連成反復と受理判定は主ループが管理する。
  • kind: submodule
  • path: src/runtime/simulator/bem_simulator_stats.f90
  • group: src/runtime/simulator
  • parent: bem_simulator
  • Internal dependencies: bem_simulator
  • external dependencies: none
  • Source summary: bem_simulator のバッチ集計・統計更新処理を実装する submodule。
  • kind: module
  • path: src/tools/sheath/bem_matching_plane_query_io.f90
  • group: src/tools/sheath
  • Internal dependencies: bem_kinds, bem_string_utils
  • external dependencies: ieee_arithmetic
  • Source summary: Offline Zhao ツール共通の数値 query CSV 入力。物理条件と格子条件は呼出側が扱う。
  • kind: module
  • path: src/tools/sheath/bem_matching_plane_response_generator.f90
  • group: src/tools/sheath
  • Internal dependencies: bem_kinds, bem_app_config_types, bem_matching_plane_response, bem_matching_plane_response_provider, bem_filesystem, bem_mpi, bem_string_utils, bem_matching_plane_query_io
  • external dependencies: none
  • Source summary: Online Zhao evaluator から既存形式の matching-plane 応答表を生成する。
  • kind: module
  • path: src/tools/sheath/bem_matching_plane_zhao_atlas.f90
  • group: src/tools/sheath
  • Internal dependencies: bem_kinds, bem_app_config_types, bem_matching_plane_response, bem_matching_plane_response_provider, bem_matching_plane_zhao, bem_filesystem, bem_mpi, bem_string_utils, bem_matching_plane_query_io
  • external dependencies: ieee_arithmetic
  • Source summary: Zhao A/B/C branchのsolvabilityを独立評価するoffline atlas生成器。