sim_stats Derived Type

type, public :: sim_stats

処理済み粒子数、吸着/脱出数、バッチ数、最終相対変化量を集計する統計型。


Inherits

type~~sim_stats~~InheritsGraph type~sim_stats sim_stats type~adaptive_nonzero_mode_stats adaptive_nonzero_mode_stats type~sim_stats->type~adaptive_nonzero_mode_stats adaptive_nonzero_mode type~matching_plane_stats matching_plane_stats type~sim_stats->type~matching_plane_stats matching_plane

Components

Type Visibility Attributes Name Initial
integer(kind=i64), public :: processed_particles = 0_i64
integer(kind=i64), public :: absorbed = 0_i64
integer(kind=i64), public :: escaped = 0_i64
integer(kind=i64), public :: escaped_boundary = 0_i64
integer(kind=i64), public :: survived_max_step = 0_i64
integer(kind=i64), public :: multiple_box_events_retry_attempted = 0_i64
integer(kind=i64), public :: multiple_box_events_retry_resolved = 0_i64
integer(kind=i64), public :: multiple_box_events_soft_discarded = 0_i64
real(kind=dp), public :: multiple_box_events_soft_discarded_abs_charge = 0.0_dp
integer(kind=i64), public :: adaptive_substep_halved_steps = 0_i64

適応サブステップ: 半分にした dt step の数、その中で受理した sub-step の総数、半分化の上限に達した step の数。

integer(kind=i64), public :: adaptive_substeps = 0_i64
integer(kind=i64), public :: adaptive_substep_depth_limited_steps = 0_i64
integer(kind=i64), public :: adaptive_grown_steps = 0_i64

step 伸長で dt_s より長く進めた push の数。

integer(kind=i32), public :: batches = 0
real(kind=dp), public :: last_rel_change = -1.0d0
real(kind=dp), public :: simulated_time = 0.0_dp
type(adaptive_nonzero_mode_stats), public :: adaptive_nonzero_mode

非零 mode の電位変化で batch 幅を縮める adaptive batch の状態。

integer(kind=i64), public :: particle_pool_claims = 0_i64

shared particle pool の claim 回数と、claim の critical 区間で費やした秒数(全 rank 合計)。

real(kind=dp), public :: particle_pool_claim_seconds = 0.0_dp
type(matching_plane_stats), public :: matching_plane

外部シース(Zhao 根と z-high の matching-plane)の receipt。summary と checkpoint に出る。

integer(kind=i64), public :: secondary_emission_hits = 0_i64
integer(kind=i64), public :: secondary_emission_count = 0_i64
integer(kind=i64), public :: secondary_generation_capped_count = 0_i64
real(kind=dp), public :: secondary_emitted_charge_c = 0.0_dp
real(kind=dp), public :: secondary_yield_sum = 0.0_dp

Source Code

  type :: sim_stats
    integer(i64) :: processed_particles = 0_i64
    integer(i64) :: absorbed = 0_i64
    integer(i64) :: escaped = 0_i64
    integer(i64) :: escaped_boundary = 0_i64
    integer(i64) :: survived_max_step = 0_i64
    integer(i64) :: multiple_box_events_retry_attempted = 0_i64
    integer(i64) :: multiple_box_events_retry_resolved = 0_i64
    integer(i64) :: multiple_box_events_soft_discarded = 0_i64
    real(dp) :: multiple_box_events_soft_discarded_abs_charge = 0.0_dp
    !> 適応サブステップ: 半分にした dt step の数、その中で受理した sub-step の総数、半分化の上限に達した step の数。
    integer(i64) :: adaptive_substep_halved_steps = 0_i64
    integer(i64) :: adaptive_substeps = 0_i64
    integer(i64) :: adaptive_substep_depth_limited_steps = 0_i64
    !> step 伸長で `dt_s` より長く進めた push の数。
    integer(i64) :: adaptive_grown_steps = 0_i64
    integer(i32) :: batches = 0
    real(dp) :: last_rel_change = -1.0d0
    real(dp) :: simulated_time = 0.0_dp
    !> 非零 mode の電位変化で batch 幅を縮める adaptive batch の状態。
    type(adaptive_nonzero_mode_stats) :: adaptive_nonzero_mode
    !> shared particle pool の claim 回数と、claim の critical 区間で費やした秒数(全 rank 合計)。
    integer(i64) :: particle_pool_claims = 0_i64
    real(dp) :: particle_pool_claim_seconds = 0.0_dp
    !> 外部シース(Zhao 根と z-high の matching-plane)の receipt。summary と checkpoint に出る。
    type(matching_plane_stats) :: matching_plane
    integer(i64) :: secondary_emission_hits = 0_i64
    integer(i64) :: secondary_emission_count = 0_i64
    integer(i64) :: secondary_generation_capped_count = 0_i64
    real(dp) :: secondary_emitted_charge_c = 0.0_dp
    real(dp) :: secondary_yield_sum = 0.0_dp
  end type sim_stats