dft_config_t Derived Type

type, public :: dft_config_t

Configuration for Kohn-Sham DFT method Note: SCF settings (convergence, DIIS) come from scf_config_t


Inherited by

type~~dft_config_t~~InheritedByGraph type~dft_config_t dft_config_t type~method_config_t method_config_t type~method_config_t->type~dft_config_t dft type~driver_config_t driver_config_t type~driver_config_t->type~method_config_t method_config type~many_body_expansion_t many_body_expansion_t type~many_body_expansion_t->type~method_config_t method_config type~many_body_expansion_t->type~driver_config_t driver_config type~gmbe_context_t gmbe_context_t type~gmbe_context_t->type~many_body_expansion_t type~mbe_context_t mbe_context_t type~mbe_context_t->type~many_body_expansion_t

Components

Type Visibility Attributes Name Initial
integer, public :: angular_points = 302

Angular grid points (Lebedev)

character(len=32), public :: aux_basis_set = ''

Auxiliary basis for density fitting

character(len=8), public :: dispersion_type = 'd3bj'

Dispersion type: “d3”, “d3bj”, “d4”

character(len=32), public :: functional = 'b3lyp'

XC functional: “lda”, “pbe”, “b3lyp”, “m06-2x”, etc.

character(len=16), public :: grid_type = 'medium'

Grid quality: “coarse”, “medium”, “fine”, “ultrafine”

integer, public :: radial_points = 75

Radial grid points per atom

logical, public :: use_density_fitting = .false.

Use RI-J approximation

logical, public :: use_dispersion = .false.

Add empirical dispersion


Source Code

   type :: dft_config_t
      !! Configuration for Kohn-Sham DFT method
      !! Note: SCF settings (convergence, DIIS) come from scf_config_t
      character(len=32) :: functional = 'b3lyp'
         !! XC functional: "lda", "pbe", "b3lyp", "m06-2x", etc.

      ! Integration grid
      character(len=16) :: grid_type = 'medium'
         !! Grid quality: "coarse", "medium", "fine", "ultrafine"
      integer :: radial_points = 75
         !! Radial grid points per atom
      integer :: angular_points = 302
         !! Angular grid points (Lebedev)

      ! Density fitting
      logical :: use_density_fitting = .false.
         !! Use RI-J approximation
      character(len=32) :: aux_basis_set = ''
         !! Auxiliary basis for density fitting

      ! Dispersion correction
      logical :: use_dispersion = .false.
         !! Add empirical dispersion
      character(len=8) :: dispersion_type = 'd3bj'
         !! Dispersion type: "d3", "d3bj", "d4"
   end type dft_config_t