control_parameters Derived Type

type, public, bind(C) :: control_parameters


Inherited by

type~~control_parameters~~InheritedByGraph type~control_parameters control_parameters type~information information type~information->type~control_parameters control

Components

Type Visibility Attributes Name Initial
integer(kind=c_int64_t), public :: hamilton = 10
integer(kind=c_int64_t), public :: scftype = 1
character(len=c_char), public :: runtype(20) = ''
integer(kind=c_int64_t), public :: guess = 1
integer(kind=c_int64_t), public :: maxit = 3
integer(kind=c_int64_t), public :: maxit_dav = 50
integer(kind=c_int64_t), public :: maxit_zv = 50
integer(kind=c_int64_t), public :: maxdiis = 7
integer(kind=c_int64_t), public :: diis_reset_mod = 10
real(kind=c_double), public :: diis_reset_conv = 0.005_dp
real(kind=c_double), public :: diis_method_threshold = 2.0_dp
integer(kind=c_int64_t), public :: diis_type = 5
real(kind=c_double), public :: vdiis_cdiis_switch = 0.3_dp
real(kind=c_double), public :: vdiis_vshift_switch = 0.003_dp
real(kind=c_double), public :: vshift_cdiis_switch = 0.3_dp
real(kind=c_double), public :: vshift = 0.0_dp
logical(kind=c_bool), public :: mom = .false.
logical(kind=c_bool), public :: pfon = .false.
real(kind=c_double), public :: mom_switch = 0.003_dp
real(kind=c_double), public :: pfon_start_temp = 2000.0_dp
real(kind=c_double), public :: pfon_cooling_rate = 50.0_dp
real(kind=c_double), public :: pfon_nsmear = 5.0_dp
real(kind=c_double), public :: conv = 1e-6_dp
integer(kind=c_int64_t), public :: scf_incremental = 1
real(kind=c_double), public :: int2e_cutoff = 5e-11_dp
integer(kind=c_int64_t), public :: esp = 0
integer(kind=c_int64_t), public :: resp_target = 0
real(kind=c_double), public :: resp_constr = 0.01
logical(kind=c_bool), public :: basis_set_issue = .false.
real(kind=c_double), public :: conf_print_threshold = 5.0d-02

Source Code

  type, public, bind(C) :: control_parameters
    integer(c_int64_t) :: hamilton = 10      !< The method of calculations: 10=HF, 20=DFT
    integer(c_int64_t) :: scftype  = 1       !< Refence wavefuction, 1= RHF 2= UHF 3= ROHF
    character(c_char)  :: runtype(20)  = ''  !<  Run type: energy, grad, etc.
    integer(c_int64_t) :: guess    = 1       !< used guess
    integer(c_int64_t) :: maxit    = 3       !< The maximum number of iterations
    integer(c_int64_t) :: maxit_dav = 50     !< The maximum number of iterations in Davidson eigensolver
    integer(c_int64_t) :: maxit_zv = 50      !< The maximum number of CG iterations in Z-vector subroutines
    integer(c_int64_t) :: maxdiis  = 7               !< The maximum number of diis equations
    integer(c_int64_t) :: diis_reset_mod = 10        !< The maximum number of diis iteration before resetting
    real(c_double) :: diis_reset_conv = 0.005_dp     !< Convergency criteria of DIIS reset
    real(c_double) :: diis_method_threshold = 2.0_dp !< DIIS threshold for switching DIIS method
    integer(c_int64_t) :: diis_type = 5              !< 1: none, 2: cdiis, 3: ediis, 4: adiis, 5: vdiis
    real(c_double) :: vdiis_cdiis_switch = 0.3_dp    !< The threshold for selecting cdiis
    real(c_double) :: vdiis_vshift_switch = 0.003_dp !< The threshold for setting vshift = 0
    real(c_double) :: vshift_cdiis_switch = 0.3_dp   !< The threshold for selecting cdiis for vshift
    real(c_double) :: vshift = 0.0_dp                !< Virtual orbital shift for ROHF
    logical(c_bool) :: mom = .false.                 !< Maximum Overlap Method for SCF Convergency
    logical(c_bool) :: pfon = .false.                !< Pseudo-Fractional Occupation Number Method (pFON) for scf
    real(c_double) :: mom_switch = 0.003_dp          !< Turn on criteria of DIIS error
    real(c_double) :: pfon_start_temp = 2000.0_dp    !< Starting tempreature for pFON
    real(c_double) :: pfon_cooling_rate = 50.0_dp    !< Tempreature cooling rate for pFON
    real(c_double) :: pfon_nsmear = 5.0_dp           !< Num. of smearing orbitals for pFON if = 0, all 
    real(c_double) :: conv         = 1e-6_dp         !< Convergency criteria of SCF
    integer(c_int64_t) :: scf_incremental = 1        !< Enable/disable incremental Fock build
    real(c_double) :: int2e_cutoff = 5e-11_dp        !< 2e-integrals cutoff
    integer(c_int64_t) :: esp = 0                    !< (R)ESP charges, 0 - skip, 1 - ESP, 2 - RESP
    integer(c_int64_t) :: resp_target = 0            !< RESP charges target: 0 - zero, 1 - Mulliken
    real(c_double) :: resp_constr = 0.01             !< RESP charges constraint
    logical(c_bool) :: basis_set_issue = .false.     !< Basis set issue flag
    real(c_double) :: conf_print_threshold = 5.0d-02             !< The threshold for configuration printout
  end type control_parameters