get_rational_damping_name Subroutine

private subroutine get_rational_damping_name(functional, param, s9)

Retrieve rational damping parameters from functional name

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: functional

Functional name for which to retrieve the damping parameters

class(damping_param), intent(out), allocatable :: param

Damping parameters for the functional

real(kind=wp), intent(in), optional :: s9

Scaling factor for the three-body term


Source Code

subroutine get_rational_damping_name(functional, param, s9)
   !DEC$ ATTRIBUTES DLLEXPORT :: get_rational_damping_name

   !> Functional name for which to retrieve the damping parameters
   character(len=*), intent(in) :: functional

   !> Damping parameters for the functional
   class(damping_param), allocatable, intent(out) :: param

   !> Scaling factor for the three-body term
   real(wp), intent(in), optional :: s9

   character(len=:), allocatable :: fname
   integer :: is, id

   is = index(functional, '/')
   if (is == 0) is = len_trim(functional) + 1
   fname = lowercase(functional(:is-1))

   id = get_functional_id(fname)

   call get_rational_damping_id(id, param, s9=s9)

end subroutine get_rational_damping_name