Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(d3_param), | intent(out) | :: | param |
Loaded parameter record |
||
character(len=*), | intent(in) | :: | method |
Name of the method to look up |
||
type(error_type), | intent(out), | allocatable | :: | error |
Error handling |
|
real(kind=wp), | intent(in), | optional | :: | s9 |
Overwrite s9 |
|
type(citation_type), | intent(out), | optional | :: | citation |
Citation information |
subroutine get_mzero_damping(param, method, error, s9, citation) !> Loaded parameter record type(d3_param), intent(out) :: param !> Name of the method to look up character(len=*), intent(in) :: method !> Overwrite s9 real(wp), intent(in), optional :: s9 !> Citation information type(citation_type), intent(out), optional :: citation !> Error handling type(error_type), allocatable, intent(out) :: error select case(get_method_id(method)) case default call fatal_error(error, "No entry for '"//method//"' present") return case(p_b2plyp_df) param = d3_param(rs6=1.313134_wp, s8=0.717543_wp, bet=0.016035_wp, s6=0.640000_wp) case(p_b3lyp_df, p_b3lyp_g_df, p_dm21_df, p_dm21m_df, p_dm21mc_df, p_dm21mu_df) param = d3_param(rs6=1.338153_wp, s8=1.532981_wp, bet=0.013988_wp) case(p_b97d_df) param = d3_param(rs6=1.151808_wp, s8=1.020078_wp, bet=0.035964_wp) case(p_blyp_df) param = d3_param(rs6=1.279637_wp, s8=1.841686_wp, bet=0.014370_wp) case(p_bp_df) param = d3_param(rs6=1.233460_wp, s8=1.945174_wp, bet=0.000000_wp) case(p_pbe_df) param = d3_param(rs6=2.340218_wp, s8=0.000000_wp, bet=0.129434_wp) case(p_pbe0_df) param = d3_param(rs6=2.077949_wp, s8=0.000081_wp, bet=0.116755_wp) case(p_lcwpbe_df) param = d3_param(rs6=1.366361_wp, s8=1.280619_wp, bet=0.003160_wp) end select if (present(citation)) citation = get_citation(doi_dftd3_m) if (present(s9)) then param%s9 = s9 end if end subroutine get_mzero_damping