initialize_fmm_state Subroutine

public subroutine initialize_fmm_state(state)

FMM state のポインタ成分を未関連状態へ初期化する。

Arguments

Type IntentOptional Attributes Name
type(fmm_state_type), intent(inout) :: state

初期化対象の FMM state。


Calls

proc~~initialize_fmm_state~~CallsGraph proc~initialize_fmm_state initialize_fmm_state proc~reset_periodic_shell_mean_state reset_periodic_shell_mean_state proc~initialize_fmm_state->proc~reset_periodic_shell_mean_state

Called by

proc~~initialize_fmm_state~~CalledByGraph proc~initialize_fmm_state initialize_fmm_state proc~core_update_state_impl core_update_state_impl proc~core_update_state_impl->proc~initialize_fmm_state proc~reset_fmm_state reset_fmm_state proc~reset_fmm_state->proc~initialize_fmm_state proc~core_destroy_state_impl core_destroy_state_impl proc~core_destroy_state_impl->proc~reset_fmm_state

Source Code

  subroutine initialize_fmm_state(state)
    type(fmm_state_type), intent(inout) :: state

    nullify (state%src_q)
    nullify (state%multipole)
    nullify (state%local)
    nullify (state%multipole_active)
    nullify (state%local_active)
    if (allocated(state%periodic_multipole)) deallocate (state%periodic_multipole)
    if (allocated(state%anchor_local)) deallocate (state%anchor_local)
    if (allocated(state%anchor_local_active)) deallocate (state%anchor_local_active)
    state%ready = .false.
    state%update_count = 0_i32
    state%periodic_k0_state = periodic_zero_mode_state_type()
    call reset_periodic_shell_mean_state(state%periodic_shell_mean_state)
  end subroutine initialize_fmm_state