reset_periodic2_ewald_data Subroutine

public subroutine reset_periodic2_ewald_data(data)

periodic2 Ewald 用の補助データを初期状態へ戻す。

Arguments

Type IntentOptional Attributes Name
type(periodic2_ewald_data_type), intent(inout) :: data

リセット対象の補助データ。


Called by

proc~~reset_periodic2_ewald_data~~CalledByGraph proc~reset_periodic2_ewald_data reset_periodic2_ewald_data proc~precompute_periodic2_ewald_data precompute_periodic2_ewald_data proc~precompute_periodic2_ewald_data->proc~reset_periodic2_ewald_data proc~reset_fmm_plan reset_fmm_plan proc~reset_fmm_plan->proc~reset_periodic2_ewald_data proc~core_build_plan_impl core_build_plan_impl proc~core_build_plan_impl->proc~precompute_periodic2_ewald_data proc~core_destroy_plan_impl core_destroy_plan_impl proc~core_build_plan_impl->proc~core_destroy_plan_impl proc~core_destroy_plan_impl->proc~reset_fmm_plan

Source Code

  subroutine reset_periodic2_ewald_data(data)
    type(periodic2_ewald_data_type), intent(inout) :: data

    if (allocated(data%screen_shift1)) deallocate (data%screen_shift1)
    if (allocated(data%screen_shift2)) deallocate (data%screen_shift2)
    if (allocated(data%inner_shift1)) deallocate (data%inner_shift1)
    if (allocated(data%inner_shift2)) deallocate (data%inner_shift2)
    if (allocated(data%k1)) deallocate (data%k1)
    if (allocated(data%k2)) deallocate (data%k2)
    if (allocated(data%kmag)) deallocate (data%kmag)
    if (allocated(data%karg0)) deallocate (data%karg0)
    if (allocated(data%kpref1)) deallocate (data%kpref1)
    if (allocated(data%kpref2)) deallocate (data%kpref2)
    if (allocated(data%kprefz)) deallocate (data%kprefz)
    data%ready = .false.
    data%axis1 = 0_i32
    data%axis2 = 0_i32
    data%axis_free = 0_i32
    data%nimg = 0_i32
    data%img_outer = 0_i32
    data%kmax = 0_i32
    data%alpha = 0.0d0
    data%soft2 = 0.0d0
    data%cell_area = 0.0d0
    data%k0_pref = 0.0d0
    data%screen_count = 0_i32
    data%inner_count = 0_i32
    data%k_count = 0_i32
  end subroutine reset_periodic2_ewald_data