REAL_TIME_PROPAGATION
References: Kunert2003, Andermatt2016
Parameters needed to set up the real time propagation for the electron dynamics. This currently works only in the NVE ensemble. [Edit on GitHub]
Keywords
Keyword descriptions
- ACCURACY_REFINEMENT
Type: integer
Default: 100
Usage: ACCURACY_REFINEMENTDescription: If using density propagation some parts should be calculated with a higher accuracy than the rest to reduce numerical noise. This factor determines by how much the filtering threshold is reduced for these calculations.
- APPLY_DELTA_PULSE
Type: logical
Default: F
Lone keyword: T
Usage: APPLY_DELTA_PULSEDescription: Applies a delta kick to the initial wfn (only RTP for now - the EMD case is not yet implemented). Only work for INITIAL_WFN=SCF_WFN
Mentions: ⭐Real-Time Bethe-Salpeter Propagation
- APPLY_DELTA_PULSE_MAG
Type: logical
Default: F
Lone keyword: T
Usage: APPLY_DELTA_PULSE_MAGDescription: Applies a magnetic delta kick to the initial wfn (only RTP for now - the EMD case is not yet implemented). Only work for INITIAL_WFN=SCF_WFN
- APPLY_WFN_MIX_INIT_RESTART
Type: logical
Default: F
Lone keyword: T
Usage: APPLY_WFN_MIX_INIT_RESTARTDescription: If set to True and in the case of INITIAL_WFN=RESTART_WFN, call the DFT%PRINT%WFN_MIX section to mix the read initial wfn. The starting wave-function of the RTP will be the mixed one. Setting this to True without a defined WFN_MIX section will not do anything as defining a WFN_MIX section without this keyword for RTP run with INITIAL_WFN=RESTART_WFN. Note that if INITIAL_WFN=SCF_WFN, this keyword is not needed to apply the mixing defined in the WFN_MIX section. Default is False.
- ASPC_ORDER
Type: integer
Default: 3
Usage: ASPC_ORDER 3Description: Speciefies how many steps will be used for extrapolation. One will be always used which is means X(t+dt)=X(t)
- COM_NL
Type: logical
Default: T
Lone keyword: T
Usage: COM_NLDescription: Include non-local commutator for periodic delta pulse. only affects PERIODIC=.TRUE.
- DELTA_PULSE_DIRECTION
Type: integer[3]
Default: 1 0 0
Usage: DELTA_PULSE_DIRECTION 1 1 1Description: Direction of the applied electric field. The k vector is given as 2Pi[i,j,k]inv(h_mat), which for PERIODIC .FALSE. yields exp(ikr) periodic with the unit cell, only if DELTA_PULSE_SCALE is set to unity. For an orthorhombic cell [1,0,0] yields [2Pi/L_x,0,0]. For small cells, this results in a very large kick.
Mentions: ⭐Real-Time Bethe-Salpeter Propagation, ⭐X-Ray Absorption from RTP and \delta-Kick perturbation
- DELTA_PULSE_SCALE
Type: real
Default: 1.00000000E-003
Usage: DELTA_PULSE_SCALE 0.01Description: Scale the k vector, which for PERIODIC .FALSE. results in exp(ikr) no longer being periodic with the unit cell. The norm of k is the strength of the applied electric field in atomic units.
Mentions: ⭐Real-Time Bethe-Salpeter Propagation, ⭐X-Ray Absorption from RTP and \delta-Kick perturbation
- DENSITY_PROPAGATION
Type: logical
Default: F
Lone keyword: T
Usage: DENSITY_PROPAGATION .TRUE.Description: The density matrix is propagated instead of the molecular orbitals. This can allow a linear scaling simulation. The density matrix is filtered with the threshold based on the EPS_FILTER keyword from the LS_SCF section
Mentions: ⭐Real-Time Propagation and Ehrenfest MD
- EPS_ITER
Type: real
Default: 1.00000000E-007
Usage: EPS_ITER 1.0E-5Description: Convergence criterion for the self consistent propagator loop.
Mentions: ⭐Real-Time Bethe-Salpeter Propagation, ⭐Real-Time Propagation and Ehrenfest MD
- EXP_ACCURACY
Type: real
Default: 1.00000000E-009
Usage: EXP_ACCURACY 1.0E-6Description: Accuracy for the taylor and pade approximation. This is only an upper bound bound since the norm used for the guess is an upper bound for the needed one.
Mentions: ⭐Real-Time Bethe-Salpeter Propagation
- GAUGE_ORIG
Type: enum
Default: COM
Usage: GAUGE_ORIG COMDescription: Define gauge origin for magnetic perturbation
Valid values:
COMUse Center of MassCOACUse Center of Atomic ChargesUSER_DEFINEDUse User Defined Point (Keyword:REF_POINT)ZEROUse Origin of Coordinate System
- GAUGE_ORIG_MANUAL
Type: real[3]
Default: 0.00000000E+000 0.00000000E+000 0.00000000E+000 [bohr]
Usage: GAUGE_ORIG_MANUAL x y zDescription: Manually defined gauge origin for magnetic perturbation [in Bohr!]
- HFX_BALANCE_IN_CORE
Type: logical
Default: F
Lone keyword: T
Usage: HFX_BALANCE_IN_COREDescription: If HFX is used, this keyword forces a redistribution/recalculation of the integrals, balanced with respect to the in core steps.
- INITIAL_WFN
Type: enum
Default: SCF_WFN
Usage: INITIAL_WFN SCF_WFNDescription: Controls the initial WFN used for propagation. Note that some energy contributions may not be initialized in the restart cases, for instance electronic entropy energy in the case of smearing.
Valid values:
SCF_WFNAn SCF run is performed to get the initial state.RESTART_WFNA wavefunction from a previous SCF is propagated. Especially useful, if electronic constraints or restraints are used in the previous calculation, since these do not work in the rtp scheme.RT_RESTARTuse the wavefunction of a real time propagation/ehrenfest run
Mentions: ⭐Real-Time Propagation and Ehrenfest MD
- LEN_REP
Type: logical
Default: F
Lone keyword: T
Usage: LEN_REP TDescription: Use length representation delta pulse (in conjunction with PERIODIC T). This corresponds to a 1st order perturbation in the length gauge. Note that this is NOT compatible with a periodic calculation! Uses the reference point defined in DFT%PRINT%MOMENTS
- LOCALIZE
Type: integer
Default: 0
Usage: LOCALIZEDescription: Localise the Molecular orbitals each n steps real-time propagated TDDFT, 0 means never localise
- MAT_EXP
Type: enum
Default: ARNOLDI
Usage: MAT_EXP TAYLORDescription: Which method should be used to calculate the exponential in the propagator. It is recommended to use BCH when employing density_propagation and ARNOLDI otherwise.
Valid values:
TAYLORexponential is evaluated using scaling and squaring in combination with a taylor expansion of the exponential.PADEuses scaling and squaring together with the pade approximationARNOLDIuses arnoldi subspace algorithm to compute exp(H)*MO directly, can’t be used in combination with Crank Nicholson or density propagationBCHUses a Baker-Campbell-Hausdorff expansion to propagate the density matrix, only works for density propagationEXACTUses diagonalisation of the exponent matrices to determine the matrix exponential exactly. Only implemented for GWBSE.
Mentions: ⭐Real-Time Bethe-Salpeter Propagation, ⭐Real-Time Propagation and Ehrenfest MD
- MAX_ITER
Type: integer
Default: 10
Usage: MAX_ITER 10Description: Maximal number of iterations for the self consistent propagator loop.
Mentions: ⭐Real-Time Bethe-Salpeter Propagation, ⭐Real-Time Propagation and Ehrenfest MD
- MCWEENY_EPS
Type: real
Default: 0.00000000E+000
Usage: MCWEENY_EPS 0.00001Description: Threshold after which McWeeny is terminated
- MCWEENY_MAX_ITER
Type: integer
Default: 1
Usage: MCWEENY_MAX_ITER 2Description: Determines the maximum amount of McWeeny steps used after each converged step in density propagation
- PERIODIC
Type: logical
Default: T
Lone keyword: T
Usage: PERIODICDescription: Apply a delta-kick that is compatible with periodic boundary conditions for any value of DELTA_PULSE_SCALE. Uses perturbation theory for the preparation of the initial wfn with the velocity operator as perturbation. If LEN_REP is .FALSE. this corresponds to a first order velocity gauge. Note that the pulse is only applied when INITIAL_WFN is set to SCF_WFN, and not for restarts (RT_RESTART).
Mentions: ⭐X-Ray Absorption from RTP and \delta-Kick perturbation
- PROPAGATOR
Type: enum
Default: ETRS
Usage: PROPAGATOR ETRSDescription: Which propagator should be used for the orbitals
Valid values:
ETRSenforced time reversible symmetryCNCrank Nicholson propagatorEMExponential midpoint propagator
- SC_CHECK_START
Type: integer
Default: 0
Usage: SC_CHECK_START 3Description: Speciefies how many iteration steps will be done without a check for self consistency. Can save some time in big calculations.
- VELOCITY_GAUGE
Type: logical
Default: F
Lone keyword: T
Usage: VELOCITY_GAUGE TDescription: Perform propagation in the velocity gauge using the explicit vector potential only a constant vector potential as of now (corresonding to a delta-pulse). uses DELTA_PULSE_SCALE and DELTA_PULSE_DIRECTION to define the vector potential
- VG_COM_NL
Type: logical
Default: T
Lone keyword: T
Usage: VG_COM_NL TDescription: apply gauge transformed non-local potential term only affects VELOCITY_GAUGE=.TRUE.