resolve_periodic2_ewald_alpha Function

public function resolve_periodic2_ewald_alpha(plan)

periodic2 Ewald の減衰係数 alpha を決定する。

Arguments

Type IntentOptional Attributes Name
type(fmm_plan_type), intent(in) :: plan

FMM 計画。

Return Value real(kind=dp)


Called by

proc~~resolve_periodic2_ewald_alpha~~CalledByGraph proc~resolve_periodic2_ewald_alpha resolve_periodic2_ewald_alpha proc~precompute_periodic2_ewald_data precompute_periodic2_ewald_data proc~precompute_periodic2_ewald_data->proc~resolve_periodic2_ewald_alpha proc~core_build_plan_impl core_build_plan_impl proc~core_build_plan_impl->proc~precompute_periodic2_ewald_data

Source Code

  real(dp) function resolve_periodic2_ewald_alpha(plan)
    type(fmm_plan_type), intent(in) :: plan
    real(dp) :: min_periodic_len

    resolve_periodic2_ewald_alpha = plan%options%periodic_ewald_alpha
    if (resolve_periodic2_ewald_alpha > 0.0d0) return
    min_periodic_len = min(plan%options%periodic_len(1), plan%options%periodic_len(2))
    if (min_periodic_len <= 0.0d0) then
      resolve_periodic2_ewald_alpha = 0.0d0
      return
    end if
    resolve_periodic2_ewald_alpha = 1.2d0/(real(plan%options%periodic_image_layers + 1_i32, dp)*min_periodic_len)
  end function resolve_periodic2_ewald_alpha