DFT calculation options
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| integer, | public | :: | angular_points | = | 302 |
Number of angular grid points (Lebedev) |
|
| character(len=32), | public | :: | aux_basis_set | = | '' |
Auxiliary basis set for density fitting |
|
| character(len=32), | public | :: | basis_set | = | 'sto-3g' |
Basis set name |
|
| real(kind=dp), | public | :: | density_tol | = | 1.0e-6_dp |
Density matrix convergence threshold |
|
| integer, | public | :: | diis_size | = | 8 |
Number of Fock matrices in DIIS |
|
| character(len=8), | public | :: | dispersion_type | = | 'd3bj' |
Dispersion type: “d3”, “d3bj”, “d4” |
|
| real(kind=dp), | public | :: | energy_tol | = | 1.0e-8_dp |
Energy convergence threshold |
|
| character(len=32), | public | :: | functional | = | 'b3lyp' |
Exchange-correlation functional |
|
| character(len=16), | public | :: | grid_type | = | 'medium' |
Integration grid quality |
|
| integer, | public | :: | max_iter | = | 100 |
Maximum SCF iterations |
|
| integer, | public | :: | radial_points | = | 75 |
Number of radial grid points per atom |
|
| logical, | public | :: | spherical | = | .true. |
Use spherical (true) or Cartesian (false) basis |
|
| logical, | public | :: | use_density_fitting | = | .false. |
Use RI-J approximation |
|
| logical, | public | :: | use_diis | = | .true. |
Use DIIS for SCF convergence |
|
| logical, | public | :: | use_dispersion | = | .false. |
Add empirical dispersion correction |
|
| logical, | public | :: | verbose | = | .false. |
Print SCF iterations |
type :: dft_options_t !! DFT calculation options character(len=32) :: basis_set = 'sto-3g' !! Basis set name character(len=32) :: functional = 'b3lyp' !! Exchange-correlation functional integer :: max_iter = 100 !! Maximum SCF iterations real(dp) :: energy_tol = 1.0e-8_dp !! Energy convergence threshold real(dp) :: density_tol = 1.0e-6_dp !! Density matrix convergence threshold logical :: spherical = .true. !! Use spherical (true) or Cartesian (false) basis logical :: verbose = .false. !! Print SCF iterations ! Grid settings character(len=16) :: grid_type = 'medium' !! Integration grid quality integer :: radial_points = 75 !! Number of radial grid points per atom integer :: angular_points = 302 !! Number of angular grid points (Lebedev) ! Density fitting logical :: use_density_fitting = .false. !! Use RI-J approximation character(len=32) :: aux_basis_set = '' !! Auxiliary basis set for density fitting ! Dispersion correction logical :: use_dispersion = .false. !! Add empirical dispersion correction character(len=8) :: dispersion_type = 'd3bj' !! Dispersion type: "d3", "d3bj", "d4" ! DIIS acceleration logical :: use_diis = .true. !! Use DIIS for SCF convergence integer :: diis_size = 8 !! Number of Fock matrices in DIIS end type dft_options_t