Configuration for semi-empirical xTB methods
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| real(kind=dp), | public | :: | accuracy | = | 0.01_dp |
Numerical accuracy parameter |
|
| integer, | public | :: | cpcm_nang | = | 110 |
Angular grid points for CPCM |
|
| real(kind=dp), | public | :: | cpcm_rscale | = | 1.0_dp |
Radii scaling for CPCM |
|
| real(kind=dp), | public | :: | dielectric | = | -1.0_dp |
Dielectric constant (-1 = use solvent table) |
|
| real(kind=dp), | public | :: | electronic_temp | = | 300.0_dp |
Electronic temperature in Kelvin (Fermi smearing) |
|
| character(len=16), | public | :: | solvation_model | = | '' |
Solvation model: “alpb”, “gbsa”, “cpcm” |
|
| character(len=32), | public | :: | solvent | = | '' |
Solvent name: “water”, “ethanol”, etc. Empty for gas phase |
|
| logical, | public | :: | use_cds | = | .true. |
Include non-polar CDS terms |
|
| logical, | public | :: | use_shift | = | .true. |
Include solution state shift |
Configure XTB solvation settings from driver configuration
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(xtb_config_t), | intent(inout) | :: | this | |||
| logical, | intent(in) | :: | use_cds |
Include CDS non-polar terms |
||
| logical, | intent(in) | :: | use_shift |
Include solution state shift |
||
| real(kind=dp), | intent(in) | :: | dielectric |
Direct dielectric constant (-1 = use solvent lookup) |
||
| integer, | intent(in) | :: | cpcm_nang |
Angular grid points for CPCM |
||
| real(kind=dp), | intent(in) | :: | cpcm_rscale |
Radii scaling for CPCM |
||
| character(len=*), | intent(in), | optional | :: | solvent |
Solvent name |
|
| character(len=*), | intent(in), | optional | :: | solvation_model |
Solvation model name |
Get solvation configuration info for logging
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(xtb_config_t), | intent(in) | :: | this | |||
| character(len=128), | intent(out) | :: | info_lines(4) |
Up to 4 lines of info |
||
| integer, | intent(out) | :: | n_lines |
Number of lines populated |
Check if solvation is configured for XTB
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(xtb_config_t), | intent(in) | :: | this |
type :: xtb_config_t !! Configuration for semi-empirical xTB methods real(dp) :: accuracy = 0.01_dp !! Numerical accuracy parameter real(dp) :: electronic_temp = 300.0_dp !! Electronic temperature in Kelvin (Fermi smearing) ! Solvation character(len=32) :: solvent = '' !! Solvent name: "water", "ethanol", etc. Empty for gas phase character(len=16) :: solvation_model = '' !! Solvation model: "alpb", "gbsa", "cpcm" logical :: use_cds = .true. !! Include non-polar CDS terms logical :: use_shift = .true. !! Include solution state shift real(dp) :: dielectric = -1.0_dp !! Dielectric constant (-1 = use solvent table) integer :: cpcm_nang = 110 !! Angular grid points for CPCM real(dp) :: cpcm_rscale = 1.0_dp !! Radii scaling for CPCM contains procedure :: has_solvation => xtb_has_solvation procedure :: configure => xtb_configure procedure :: get_solvation_info => xtb_get_solvation_info end type xtb_config_t