Subroutine to initialize the screening parameters
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(ommp_electrostatics_type), | intent(inout) | :: | eel_obj | |||
real(kind=rp), | intent(in) | :: | m(4) | |||
real(kind=rp), | intent(in) | :: | p(4) | |||
real(kind=rp), | intent(in) | :: | d(4) | |||
real(kind=rp), | intent(in) | :: | u(4) | |||
real(kind=rp), | intent(in), | optional | :: | i(4) |
subroutine set_screening_parameters(eel_obj, m, p, d, u, i)
!! Subroutine to initialize the screening parameters
implicit none
type(ommp_electrostatics_type), intent(inout) :: eel_obj
real(rp), intent(in) :: m(4), p(4), d(4), u(4)
real(rp), optional, intent(in) :: i(4)
eel_obj%mscale = m
eel_obj%pscale = p
eel_obj%dscale = d
eel_obj%uscale = u
if(present(i)) then
if(eel_obj%amoeba) then
eel_obj%pscale_intra = i
else
call fatal_error("Scale factors for atoms of the same group &
&cannot be set outside AMOEBA FF")
end if
else
if(eel_obj%amoeba) &
call fatal_error("Scale factors for atoms of the same group &
&should be defined in AMOEBA FF")
end if
end subroutine set_screening_parameters