Configure an XTB method instance from config%xtb
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(qc_method_t), | intent(inout) | :: | method | |||
| type(method_config_t), | intent(in) | :: | config |
subroutine configure_xtb(method, config) !! Configure an XTB method instance from config%xtb class(qc_method_t), intent(inout) :: method type(method_config_t), intent(in) :: config select type (m => method) type is (xtb_method_t) ! Core settings m%variant = method_type_to_string(config%method_type) m%verbose = config%verbose m%accuracy = real(config%xtb%accuracy, wp) ! Electronic temperature (convert K to Hartree) ! kt = T * k_B, where k_B = 3.166808578545117e-06 Hartree/K m%kt = real(config%xtb%electronic_temp, wp)*3.166808578545117e-06_wp ! Solvation settings from config%xtb if (config%xtb%has_solvation()) then m%solvent = trim(config%xtb%solvent) if (len_trim(config%xtb%solvation_model) > 0) then m%solvation_model = trim(config%xtb%solvation_model) else m%solvation_model = "alpb" ! Default end if m%use_cds = config%xtb%use_cds m%use_shift = config%xtb%use_shift m%dielectric = real(config%xtb%dielectric, wp) m%cpcm_nang = config%xtb%cpcm_nang m%cpcm_rscale = real(config%xtb%cpcm_rscale, wp) end if end select end subroutine configure_xtb