Skip to content

dmft input variables

This document lists and provides the description of the name (keywords) of the dmft input variables to be used in the input file for the abinit executable.

dmft_charge_prec

Mnemonics: Dynamical Mean Field Theory: CHARGE density PRECision
Mentioned in topic(s): topic_DMFT, topic_DmftTriqsCthyb
Variable type: real
Dimensions: scalar
Default value: 1e-06
Only relevant if: usedmft == 1
Added in version: before_v9

Test list (click to open). Rarely used, [2/1345] in all abinit tests, [0/179] in abinit tutorials

This variable sets the numerical tolerance used to determine the Fermi level. The root-finding algorithm stops once the calculated electron count matches the target value within this tolerance. A smaller value improves the accuracy of the Fermi level but increases the number of root-finding iterations, which may significantly impact performance for large systems. If you are using noisy solvers (e.g., CT-QMC), it is unnecessary to set a tolerance smaller than the intrinsic noise level of your solver.

See dmft_fermi_step for further tuning of the root-finding algorithm.

dmft_dc

Mnemonics: Dynamical Mean Field Theory: Double Counting
Mentioned in topic(s): topic_DMFT, topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: None if dmft_solv \(\in\) [6,7], 1 otherwise
Only relevant if: usedmft == 1
Added in version: before_v9

Test list (click to open). Moderately used, [34/1345] in all abinit tests, [1/179] in abinit tutorials

Selects the double counting (DC) correction formula used in DFT+DMFT calculations.

  • 1 or 5 - Full Localized Limit (FLL): magnetic (1) and non-magnetic (5) versions.
  • 2 or 6 - Around Mean Field (AMF): magnetic (2) and non-magnetic (6) versions.
  • 7 - Nominal double counting: non-magnetic version only. Uses the nominal occupancy set by dmft_nominal.
  • 8 - Exact formula (cf [Haule2015a]): non-magnetic version only, and only compatible with LDA and PBE (ixc \(\in\) [7,-1012,11,-101130]). This is the formula you should always use. The implementation makes the assumption that the screened potential has the form of a Yukawa potential (cf dmft_yukawa_param), which is rigorously valid only in the case dmft_solv=7, with the full Slater Hamiltonian. Besides, we assume that the projection of the correlated orbital dmft_orbital on the energy window [ dmftbandi,dmftbandf ] is equal to dmft_orbital itself (i.e. the closure relation is assumed). Please look at section 7 of the tutorial on DFT+DMFT with TRIQS/CT-HYB for detailed informations on how to use it.

Magnetic formulas ( dmft_dc < 5 ) need to be used with magnetic DFT (usepawu=10). Non-magnetic formulas ( dmft_dc >= 5 ) need to be used with non-magnetic DFT (usepawu=14). See [Park2015] and [Chen2016a] for more details on the non-magnetic treatment.

dmft_entropy

Mnemonics: Dynamical Mean Field Theory: ENTROPY
Mentioned in topic(s): topic_DMFT
Variable type: integer
Dimensions: scalar
Default value: 0
Only relevant if: usedmft == 1 and dmft_solv == 5
Added in version: before_v9

Test list (click to open). Rarely used, [4/1345] in all abinit tests, [0/179] in abinit tutorials

If 1, enables the calculation of the entropy within the DMFT framework and so allows one the calculation of the total energy (free energy). In the current implementation, this is only possible with dmft_solv = 5 (Continuous Time Quantum Monte Carlo). See also the input variable dmft_nlambda.

dmft_fermi_step

Mnemonics: Dynamical Mean Field Theory: FERMI search maximal STEP
Characteristics: ENERGY
Mentioned in topic(s): topic_DMFT, topic_DmftTriqsCthyb
Variable type: real
Dimensions: scalar
Default value: 0.02
Only relevant if: usedmft == 1
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [1/1345] in all abinit tests, [0/179] in abinit tutorials

During the Fermi level search, the step increment for the Fermi level is capped to dmft_fermi_step . If this value is too low, the root-finding algorithm will be significantly slowed down. If it is too high, the step increment might become too high and the algorithm might encounter instabilities and fail to converge.

Can be specified in the unit of your choice (Ha, Ry, eV, K) since it has the ENERGY characteristics.

See dmft_charge_prec for further tuning of the root-finding algorithm.

dmft_iter

Mnemonics: Dynamical Mean Field Theory: number of DMFT ITERations
Mentioned in topic(s): topic_DMFT, topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: None if dmft_solv \(\in\) [6,7], 10 otherwise
Only relevant if: usedmft == 1
Added in version: before_v9

Test list (click to open). Moderately used, [43/1345] in all abinit tests, [1/179] in abinit tutorials

Number of iterations in the DMFT inner loop, at fixed density. The number of DFT+DMFT cycles (i.e. density updates) is set via nstep, for a total number of nstep \(\times\) dmft_iter calls to the impurity solver.

dmft_kspectralfunc

Mnemonics: Dynamical Mean Field Theory: compute K-resolved SPECTRAL FUNCtion
Mentioned in topic(s): topic_DMFT, topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: 0
Only relevant if: usedmft == 1, iscf in [-3,-2]
Added in version: 9.0.0

Test list (click to open). Rarely used, [2/1345] in all abinit tests, [0/179] in abinit tutorials

When activated, in conjunction with iscf = -2 or -3, a calculation of \(k\)-resolved spectral function (or density of states) is performed. However, the calculation requires as input the self-energy computed in the real axis using an external analytical continuation code. The section 7 of the tutorial on DFT+DMFT details how to obtain this data and related information with the ABINIT’s internal implementation. In order to use it with the TRIQS/CT-HYB interface, please have a look at section 6 in the TRIQS/CT-HYB tutorial.

dmft_magnfield

Mnemonics: Dynamical Mean Field Theory: Magnetic Field
Characteristics: DEVELOP
Mentioned in topic(s): topic_DMFT
Variable type: integer
Dimensions: scalar
Default value: 0
Only relevant if: usedmft == 1, dmft_solv \(\ne\) [6,7]
Added in version: 10.4.0

Test list (click to open). Rarely used, [2/1345] in all abinit tests, [0/179] in abinit tutorials

Apply a magnetic field in Tesla (\(B_z = \mu_0 H_z\)) in combination with dmft_magnfield_b to add the Zeeman contribution to the energy levels. If the applied field is sufficiently small, it can be used to calculate the uniform magnetic susceptibility. The Zeeman contribution in Hartree corresponds to \(B_z \mu_B g_e S_z\) when nspinor == 1.

  • 1 → Add the Zeeman contribution to the calculated Kohn-Sham states to build the green’s function. Only valid for nspinor == 1.

  • 2 → Add the Zeeman contribution to the energy levels of the DMFT local impurity Hamiltonian and not in the Weiss-field. This is a strong approximation.

dmft_magnfield_b

Mnemonics: Dynamical Mean Field Theory: Magnetic Field Value of Bz
Characteristics: DEVELOP
Mentioned in topic(s): topic_DMFT
Variable type: real
Dimensions: scalar
Default value: 0.0
Only relevant if: usedmft == 1, dmft_solv \(\ne\) [6,7]
Added in version: 10.4.0

Test list (click to open). Rarely used, [2/1345] in all abinit tests, [0/179] in abinit tutorials

Value of the magnetic field \(B_z\) (in Tesla) applied when dmft_magnfield is activated.

dmft_mxsf

Mnemonics: Dynamical Mean Field Theory: MiXing parameter for the SelF energy
Mentioned in topic(s): topic_DMFT, topic_DmftTriqsCthyb
Variable type: real
Dimensions: scalar
Default value: 0.6
Only relevant if: usedmft == 1
Added in version: before_v9

Test list (click to open). Moderately used, [43/1345] in all abinit tests, [1/179] in abinit tutorials

Linear mixing parameter of the self-energy. Most of the time, it can be increased to 0.6-0.8, but you can decrease it if you’re having convergence issues. Always try to set it as high as possible to speed up convergence.

dmft_nlambda

Mnemonics: Dynamical Mean Field Theory: Number of LAMBDA points
Characteristics: DEVELOP
Mentioned in topic(s): topic_DMFT
Variable type: integer
Dimensions: scalar
Default value: 6
Only relevant if: usedmft == 1 and dmft_entropy == 1
Added in version: before_v9

Test list (click to open). Rarely used, [4/1345] in all abinit tests, [0/179] in abinit tutorials

dmft_nlambda gives the number of integration points for the thermodynamic integration in case of free energy calculation within DMFT. Its value must be greater or equal to 3.

dmft_nominal

Mnemonics: Dynamical Mean Field Theory: NOMINAL occupancies
Mentioned in topic(s): topic_DMFT, topic_DmftTriqsCthyb
Variable type: integer
Dimensions: (natom)
Default value: None
Only relevant if: usedmft == 1, dmft_dc == 7
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [2/1345] in all abinit tests, [0/179] in abinit tutorials

dmft_nominal gives the nominal occupancies for each atom, used for the nominal double counting (dmft_dc=7). For uncorrelated atoms, just set any arbitrary value.

dmft_nwli

Mnemonics: Dynamical Mean Field Theory: Number of frequency omega (W) in the LInear mesh
Mentioned in topic(s): topic_DMFT
Variable type: integer
Dimensions: scalar
Default value: None
Only relevant if: usedmft == 1, dmft_solv \(\ne\) [6,7]
Added in version: before_v9

Test list (click to open). Moderately used, [30/1345] in all abinit tests, [1/179] in abinit tutorials

Number of Matsubara frequencies (linear mesh), only for the internal solvers of Abinit.

dmft_nwlo

Mnemonics: Dynamical Mean Field Theory: Number of frequency omega (W) in the LOg mesh
Characteristics: DEVELOP
Mentioned in topic(s): topic_DMFT
Variable type: integer
Dimensions: scalar
Default value: 0
Only relevant if: usedmft == 1, dmft_solv \(\ne\) [6,7]
Added in version: before_v9

Test list (click to open). Moderately used, [30/1345] in all abinit tests, [1/179] in abinit tutorials

Number of frequencies in the log mesh, only for the internal solvers of Abinit.

dmft_occnd_imag

Mnemonics: Dynamical Mean Field Theory: Occupation non-diagonal imaginary part
Characteristics: DEVELOP
Mentioned in topic(s): topic_DMFT
Variable type: integer
Dimensions: scalar
Default value: 1
Only relevant if: usedmft == 1
Added in version: before_v9

Test list (click to open). Moderately used, [20/1345] in all abinit tests, [0/179] in abinit tutorials

When 0 force non-diagonal occupations imaginary parts to be null. Do not use this, it is only for compatibility with old tests.

dmft_orbital

Mnemonics: Dynamical Mean Field Theory: correlated ORBITAL
Mentioned in topic(s): topic_DMFT, topic_DmftTriqsCthyb
Variable type: integer
Dimensions: (ntypat)
Default value: 1
Only relevant if: usedmft == 1
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [2/1345] in all abinit tests, [0/179] in abinit tutorials

Set the reduced radial wavefunction \(u_l(r)\) of the correlated orbitals \(\frac{u_l(r)}{r} Y_{lm}(\hat{r})\) for each atom type, where \(Y_{lm}(\hat{r})\) are the real spherical harmonics. For uncorrelated atom types, simply put any arbitrary value. The same radial wavefunction is used for all angular momentum channels \(m\) of a given atom type.

  • If set to \(i >\) 0, use the \(i\)-th radial orbital of the corresponding PAW dataset. They all correspond to atomic orbitals at different energies, with \(i\)=1 having the lowest energy and being the most bound (default choice).
  • If set to \(i \le\) 0, read an arbitrary radial part from the file specified by dmft_orbital_filepath.

dmft_orbital_filepath

Mnemonics: Dynamical Mean Field Theory: correlated ORBITAL FILEPATH
Mentioned in topic(s): topic_DMFT, topic_DmftTriqsCthyb
Variable type: string
Dimensions: scalar
Default value: None
Only relevant if: usedmft == 1, dmft_orbital \(\le\) 0
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [2/1345] in all abinit tests, [0/179] in abinit tutorials

Set the root of the filepath for the correlated orbital in the case of a user-provided reduced radial wavefunction \(u_l(r)\) (dmft_orbital \(\le\) 0).

The filepath for each atom type must be ” dmft_orbital_filepath _xxxx” with “xxxx” the atom type number, written with 4 digits.

The first line must be the number of radial points. Afterwards, you must provide the value of \(u_l(r)\) for each point, with one value per line. Simply provide the value, and nothing else. The file must be one column.

The values of the radii are implicitly set in the code by assuming the radial mesh obeys the same formula as the one used for the radial mesh of the PAW dataset. The first value is the lowest radius (usually 0).

Thus, inside the PAW sphere, the radial mesh of your orbital must be identical to that of the PAW dataset, but your orbital can stop at any arbitrary radius (earlier or even later as long as you extend the mesh in a consistent way). If you do not know how to extrapolate the PAW mesh, this can be done very simply by printing the Wannier functions (dmft_prtwan=1).

If you only know the values of your orbital \(u_l(r)\) on a specific set of radii, simply use a cubic spline interpolation to extrapolate the values on the extended PAW mesh.

dmft_prt_maxent

Mnemonics: Dynamical Mean Field Theory: PRinT files for MAXENT
Mentioned in topic(s): topic_DMFT, topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: 1
Only relevant if: usedmft == 1
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [3/1345] in all abinit tests, [0/179] in abinit tutorials

Set to 1 to write useful files for the analytical continuation of the self-energy. This prints the self-energy in the basis that diagonalizes the local electronic levels. The off-diagonal elements are thus minimized, since they are not handled by most analytical continuation codes. The rotation matrix is also printed, as well as the matrix overlap of the Wannier functions.

dmft_prtself

Mnemonics: Dynamical Mean Field Theory: PRinT SELF-energy
Mentioned in topic(s): topic_DMFT, topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: 0
Only relevant if: usedmft == 1
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [1/1345] in all abinit tests, [0/179] in abinit tutorials

Set to 1 to write the self-energy at each iteration in order to see its evolution along the SCF cycle. Otherwise, the self-energy file is overwritten at each iteration to keep the last value only.

dmft_prtwan

Mnemonics: Dynamical Mean Field Theory: PRinT WANnier functions
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: 0
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7]
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [3/1345] in all abinit tests, [0/179] in abinit tutorials

Compute and write on file the reduced radial part \(u_l(r)\) of the Wannier functions (i.e. the orthonormalized projection of dmft_orbital on [ dmftbandi,dmftbandf ]). This is computed on the same radial mesh as the PAW one, extended up to the radius dmft_wanrad. It corresponds to the local orbital that is used in practice in the code, and is different from dmft_orbital in the general case (unless your energy window is large enough to have a closure relation). This is only available in the case dmft_solv \(\in\) [6,7].

dmft_rslf

Mnemonics: Dynamical Mean Field Theory: Read SeLF energy
Characteristics: DEVELOP
Mentioned in topic(s): topic_DMFT
Variable type: integer
Dimensions: scalar
Default value: 1
Only relevant if: usedmft == 1
Added in version: before_v9

Test list (click to open). Moderately used, [30/1345] in all abinit tests, [1/179] in abinit tutorials

Flag to initialize the self-energy at the beginning of each new DMFT loop.

If set to 1, the self-energy is read either from the file of the dataset specified by getself if this is the first DFT+DMFT iteration, or from the previous iteration otherwise. In other words, this allows a charge self-consistent calculation. If no such file can be found, the self-energy is set to the DFT double-counting value.

If set to 0, the self-energy is always initialized to the double counting value at the beginning of each new DFT+DMFT iteration.

If set to -1, it is initialized to 0.

These last two options are only here for debugging and historical purposes, and should not be used. Note that inside a DMFT loop, the calculation is always self-consistent, regardless of the value of dmft_rslf .

dmft_shiftself

Mnemonics: Dynamical Mean Field Theory: spin SHIFT for the SELF-energy
Characteristics: ENERGY
Mentioned in topic(s): topic_DMFT, topic_DmftTriqsCthyb
Variable type: real
Dimensions: (natom)
Default value: 0
Only relevant if: usedmft == 1, nsppol == 2, usepawu == 14
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [1/1345] in all abinit tests, [0/179] in abinit tutorials

When you are performing a magnetic calculation with a non-magnetic DFT, the magnetization can take quite some time to arise (especially if it’s very low) since you start from a paramagnetic configuration. In this case, it is useful to start directly from a ferromagnetic self-energy to speed up convergence. Thus, at the first iteration, an initial static shift dmft_shiftself is applied between the two spin channels of the DMFT self-energy.

Can be specified in the unit of your choice (Ha, Ry, eV, K) since it has the ENERGY characteristics.

dmft_solv

Mnemonics: Dynamical Mean Field Theory: choice of SOLVer
Mentioned in topic(s): topic_DMFT, topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: 5
Only relevant if: usedmft == 1
Added in version: before_v9

Test list (click to open). Moderately used, [44/1345] in all abinit tests, [1/179] in abinit tutorials

Choice of solver for the Impurity model.

  • 0 → No solver and U=0, J=0 (see upawu and jpawu).
  • 1 → DFT+U self-energy is used (for testing purpose)
  • 2 → Hubbard one solver in the density density approximation of the Coulomb interaction. The Hubbard one solver is an approximation which gives a rough description of correlated Mott insulators. It should not be used for metals.
  • 5 → Use the Continuous Time Quantum Monte Carlo (CTQMC) solver CT-Hyb of ABINIT in the density density approximation of the Coulomb interaction. The calculation is fully parallelized over MPI processes.
  • 6 → TRIQS/CTHYB with the density-density Hamiltonian.
  • 7 → TRIQS/CTHYB with the full rotationally invariant Slater Hamiltonian.
  • 8 → Same as 5, but off-diagonal elements of the hybridization function are taken into account (useful for low symmetry systems or with spin orbit coupling).
  • 9 → Python invocation. Give a symbolic link to your python interpreter as an input like ‘input-tag’_TRIQS_python_lib and the python script as an input like ‘input-tag’_TRIQS_script.py. The inputs for the script will be written in dft_for_triqs.nc and the output as triqs_for_dft.nc.

The CT Hyb algorithm is described in [Werner2006]. For a discussion of density-density approximation with respect with the rotationally invariant formulation, see e.g. [Antipov2012]. The ABINIT/CT Hyb implementation is discussed in [Gonze2016]. The TRIQS/CT Hyb implementation is described in [Seth2016].

See the useful variables for ABINIT/CT-QMC solver: dmftctqmc_basis, dmftctqmc_check, dmftctqmc_correl, dmftctqmc_gmove, dmftctqmc_grnns, dmftctqmc_meas, dmftctqmc_mrka, dmftctqmc_mov, dmftctqmc_order, dmftqmc_l, dmftqmc_n, dmftqmc_seed, dmftqmc_therm

dmft_t2g

Mnemonics: Dynamical Mean Field Theory: t2g orbitals
Mentioned in topic(s): topic_DMFT, topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: 0
Only relevant if: usedmft == 1
Added in version: before_v9

Test list (click to open). Rarely used, [8/1345] in all abinit tests, [1/179] in abinit tutorials

This should be set to 1 only if in cubic symmetry. It enables one to carry a DFT+DMFT calculations on \(\text{t}_{2\text{g}}\) orbitals only.

dmft_tolfreq

Mnemonics: Dynamical Mean Field Theory: TOLerance on DFT correlated electron occupation matrix for the definition of the FREQuency grid
Mentioned in topic(s): topic_DMFT, topic_DmftTriqsCthyb
Variable type: real
Dimensions: scalar
Default value: 0.0001
Added in version: before_v9

Test list (click to open). Rarely used, [2/1345] in all abinit tests, [0/179] in abinit tutorials

The DFT occupation matrix for correlated electrons can be computed by direct integration of the DFT Green’s function. It can be compared to the calculation of the same quantity by downfolding Fermi-Dirac occupations. Because the Matsubara grid is finite, the two quantities numerically differ. This check allows to see if your value of dmft_nwli/dmft_triqs_n_iw (depending on your solver) is large enough. If the difference is larger than dmft_tolfreq , then the code stops and an error message is thrown.

dmft_tollc

Mnemonics: Dynamical Mean Field Theory: TOLerance on Local Charge for convergence of the DMFT loop
Mentioned in topic(s): topic_DMFT, topic_DmftTriqsCthyb
Variable type: real
Dimensions: scalar
Default value: 1e-05
Added in version: before_v9

Test list (click to open). Rarely used, [1/1345] in all abinit tests, [0/179] in abinit tutorials

Tolerance criterion on the variation of Local Charge for the convergence of the DMFT Loop. However, most of the time, charge self-consistent DFT+DMFT calculations can converge faster using dmft_iter=1, so that this variable is not required.

dmft_triqs_basis

Mnemonics: Dynamical Mean Field Theory: TRIQS, Continuous Time Quantum Monte Carlo BASIS
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: None
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7]
Added in version: before_v9

Test list (click to open). Rarely used, [13/1345] in all abinit tests, [0/179] in abinit tutorials

Choose the basis in which to perform CTQMC calculation. This basis should be carefully selected as it determines the magnitude of the off-diagonal elements as well as the conserved quantum numbers in the atomic Hamiltonian, and can therefore greatly impact the computation time.

Note that if you choose the density-density solver (dmft_solv=6), the off-diagonal components of the electronic levels will be neglected by definition. As they carry most of the physics, it is important to choose a basis in which these off-diagonal components are weak.

  • 0 → Stay in the real spherical harmonics (cubic) basis. Useful for systems with cubic symmetry whose off-diagonal elements vanish by symmetry in this basis. Provides a lot of conserved quantum numbers.
  • 1 → Basis that diagonalizes the local electronic levels. Useful to reduce the magnitude of the off-diagonal components, but do not usually provide a lot of conserved quantum numbers.
  • 2 → Basis that diagonalizes the local occupation matrix. Useful to reduce the magnitude of the off-diagonal components, but do not usually provide a lot of conserved quantum numbers.
  • 3 → Spherical harmonics basis. Provides the most conserved quantum numbers.
  • 4 (only when nspinor=2) → JmJ basis. Useful for systems with spin-orbit coupling. Provides a lot of conserved quantum numbers.

dmft_triqs_compute_integral

Mnemonics: Dynamical Mean Field Theory: TRIQS, COMPUTE thermodynamic INTEGRAL
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: 1
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7], dmft_triqs_entropy == 1, dmft_triqs_measure_density_matrix == 1
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [2/1345] in all abinit tests, [0/179] in abinit tutorials

Specify whether to compute the contribution from the impurity entropy when computing the DFT+DMFT entropy (cf dmft_triqs_entropy).

  • 0 → Neglect it. As this is the main bottleneck of a free energy calculation, it can be useful to disable it and only compute the remaining contribution. In this case, only the internal energy is printed under ETOT, as neglecting the impurity entropy is not a good approximation.
  • 1 → Compute it using the coupling constant method over both interaction and chemical potential strength. See the TRIQS/CT-HYB tutorial for more details. This requires the evaluation of the integral of the interaction energy and the electron number over the strength of the coupling constant \(\lambda \in [0,1]\), which is done numerically by solving the impurity problem for several values of \(\lambda\) (cf dmft_triqs_gaussorder and dmft_triqs_nsubdivisions to set the integration points). At \(\lambda\)=0, the interaction Hamiltonian is 0 (as the non-interacting limit is known analytically), and the chemical potential is shifted by dmft_triqs_shift_mu.

dmft_triqs_det_init_size

Mnemonics: Dynamical Mean Field Theory: TRIQS, DETerminant INITial SIZE
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: 100
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7]
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [1/1345] in all abinit tests, [0/179] in abinit tutorials

For the computation of the determinant of the hybridization matrix during the TRIQS/CTHYB run, some memory is initially reserved for a maximal size of dmft_triqs_det_init_size . This is automatically resized (x2) when the perturbation order becomes larger, but this can take some time if this happens too often.

dmft_triqs_det_n_operations_before_check

Mnemonics: Dynamical Mean Field Theory: TRIQS, DETerminant Number of OPERATIONS BEFORE CHECK
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: 10000
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7]
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [1/1345] in all abinit tests, [0/179] in abinit tutorials

At each move, the determinant in TRIQS/CTHYB is updated using the Sherman-Morrison formula. However, this formula can be unstable sometimes, and the determinant is thus recomputed from scratch every dmft_triqs_det_n_operations_before_check operations where the deviation from the Sherman- Morrison formula is checked. This is really computationally expensive, so you should increase this value if you notice this takes too much time. If you see that Sherman-Morrison formula is too unstable and you repeatedly get some error messages during this check, you should decrease this value.

dmft_triqs_det_precision_error

Mnemonics: Dynamical Mean Field Theory: TRIQS, DETerminant PRECISION ERROR
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: real
Dimensions: scalar
Default value: 1e-05
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7]
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [1/1345] in all abinit tests, [0/179] in abinit tutorials

After dmft_triqs_det_n_operations_before_check, the determinant is recomputed from scratch and compared to its current value computed with Sherman-Morrison formula. If the deviation is higher than dmft_triqs_det_precision_error , an error message is thrown. If this happens too often, simply lower the value of dmft_triqs_det_n_operations_before_check.

dmft_triqs_det_precision_warning

Mnemonics: Dynamical Mean Field Theory: TRIQS, DETerminant PRECISION WARNING
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: real
Dimensions: scalar
Default value: 1e-08
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7]
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [1/1345] in all abinit tests, [0/179] in abinit tutorials

After dmft_triqs_det_n_operations_before_check, the determinant is recomputed from scratch and compared to its current value computed with Sherman-Morrison formula. If the deviation is higher than dmft_triqs_det_precision_warning , a warning is printed. If this happens too often, simply lower the value of dmft_triqs_det_n_operations_before_check.

dmft_triqs_det_singular_threshold

Mnemonics: Dynamical Mean Field Theory: TRIQS, DETerminant SINGULAR matrix THRESHOLD
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: real
Dimensions: scalar
Default value: -1.0
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7]
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [1/1345] in all abinit tests, [0/179] in abinit tutorials

Tolerance to check if the hybridization matrix is singular. An error is thrown if that is the case. If dmft_triqs_det_singular_threshold < 0, this is checked using the std::isnormal function on the absolute value of the determinant. Otherwise, this is checked by looking if the absolute value of the determinant is below dmft_triqs_det_singular_threshold .

dmft_triqs_dlr_epsilon

Mnemonics: Dynamical Mean Field Theory: TRIQS, accuracy (EPSILON) for DLR representation
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: real
Dimensions: scalar
Default value: None
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7], dmft_triqs_measure_g_l == 0
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [12/1345] in all abinit tests, [0/179] in abinit tutorials

Specify the accuracy parameter \(\varepsilon\) for the DLR (Discrete Lehmann representation) frequencies used as a compact representation of the noisy imaginary-time Green’s function from the CT-QMC (dmft_triqs_measure_g_l=0).

The DLR frequencies are then computed to ensure that they can represent any arbitrary Green’s function with accuracy dmft_triqs_dlr_epsilon (cf [Kaye2022]).

This parameter should always be higher than the statistical noise of your Green’s function, as you want to filter this noise rather than represent it.

dmft_triqs_dlr_wmax

Mnemonics: Dynamical Mean Field Theory: TRIQS, frequency (W) MAXimal
Characteristics: ENERGY
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: real
Dimensions: scalar
Default value: None
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7], dmft_triqs_measure_g_l == 0
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [12/1345] in all abinit tests, [0/179] in abinit tutorials

Specify the maximal real frequency parameter \(\omega_{\mathrm{max}}\) for the DLR (Discrete Lehmann representation) frequencies used as a compact representation of the noisy imaginary-time Green’s function from the CT-QMC (dmft_triqs_measure_g_l=0).

The DLR frequencies are then computed to ensure that they can represent any arbitrary Green’s function whose spectral function have a support in [ - dmft_triqs_dlr_wmax , dmft_triqs_dlr_wmax ] (cf [Kaye2022]).

Can be specified in the unit of your choice (Ha, Ry, eV, K) since it has the ENERGY characteristics.

dmft_triqs_entropy

Mnemonics: Dynamical Mean Field Theory: TRIQS, compute ENTROPY
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: 0
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7]
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [2/1345] in all abinit tests, [0/179] in abinit tutorials

Computes the DFT+DMFT entropy from the evaluation of the Baym-Kadanoff functional.

dmft_triqs_gaussorder

Mnemonics: Dynamical Mean Field Theory: TRIQS, GAUSS-Legendre ORDER
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: None
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7], dmft_triqs_compute_integral == 1
Added in version: before_v9

Test list (click to open). Rarely used, [2/1345] in all abinit tests, [0/179] in abinit tutorials

When evaluating the coupling constant integral for the computation of the impurity entropy (cf dmft_triqs_compute_integral), the integration interval [0,1] is split in dmft_triqs_nsubdivisions regular subdivisions. Then, each one of these subdivisions is evaluated numerically by Gauss-Legendre quadrature of order dmft_triqs_gaussorder , for a total of dmft_triqs_gaussorder \(\times\) dmft_triqs_nsubdivisions integration points.

dmft_triqs_imag_threshold

Mnemonics: Dynamical Mean Field Theory: TRIQS, IMAGinary part THRESHOLD
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: real
Dimensions: scalar
Default value: 1e-13
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7]
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [1/1345] in all abinit tests, [0/179] in abinit tutorials

In the real version of TRIQS/CTHYB, only the hybridization components having a maximal imaginary part below dmft_triqs_imag_threshold are kept.

dmft_triqs_length_cycle

Mnemonics: Dynamical Mean Field Theory: TRIQS, LENGTH of CYCLE
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: None
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7]
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [13/1345] in all abinit tests, [0/179] in abinit tutorials

Sets the number of sweeps in one cycle of TRIQS/CT-HYB. Measurements are only performed at the end of each cycle.

This variable allows to fully decorrelate a configuration before taking a new measurement, as only independent measurements matter for statistics.

If this variable is lower than the autocorrelation time of the Markov chain, there will be no drawback on the statistics, but you are wasting time measuring correlated samples. Keep in mind that measurements can be very computationally heavy.

If this variable is higher than the autocorrelation time, you will lose statistics.

dmft_triqs_loc_n_max

Mnemonics: Dynamical Mean Field Theory: TRIQS, LOCal Hilbert space Number MAXimal
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: 2147483647
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7]
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [3/1345] in all abinit tests, [0/179] in abinit tutorials

This allows to truncate the local Hilbert space in TRIQS/CTHYB by keeping only the states with a number of electrons comprised between [ dmft_triqs_loc_n_min, dmft_triqs_loc_n_max ]. This greatly speed-up the calculation, but can generate ergodicity issues if you filter states with non-negligible contributions.

dmft_triqs_loc_n_min

Mnemonics: Dynamical Mean Field Theory: TRIQS, LOCal Hilbert space Number MINimal
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: 0
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7]
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [1/1345] in all abinit tests, [0/179] in abinit tutorials

This allows to truncate the local Hilbert space in TRIQS/CTHYB by keeping only the states with a number of electrons comprised between [ dmft_triqs_loc_n_min ,dmft_triqs_loc_n_max ]. This greatly speed-up the calculation, but can generate ergodicity issues if you filter states with non-negligible contributions.

dmft_triqs_measure_density_matrix

Mnemonics: Dynamical Mean Field Theory: TRIQS, MEASUREment of the DENSITY MATRIX
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: 1 if dmft_triqs_off_diag=0, 0 otherwise
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7], dmft_triqs_use_norm_as_weight == 1, dmft_triqs_off_diag == 0
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [1/1345] in all abinit tests, [0/179] in abinit tutorials

Set to 1 to active the measurement of the impurity density matrix in TRIQS/CTHYB. This greatly improves the accuracy of static observables such as the number of electrons, energy… Currently, TRIQS/CTHYB does not support this feature with off-diagonal components.

The sampling efficiency of the density matrix can be improved by activating dmft_triqs_time_invariance.

dmft_triqs_measure_g_l

Mnemonics: Dynamical Mean Field Theory: TRIQS, MEASUREment of the G_l coefficients for Legendre representation
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: 0
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7]
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [1/1345] in all abinit tests, [0/179] in abinit tutorials

Set to 1 if you want to sample the Green’s function directly in the Legendre basis (cf [Boehnke2011]). Otherwise, if set to 0, the Green’s function is sampled on the imaginary time axis, and a constrained fit is then performed to obtain the coefficients of the Discrete Lehmann representation (DLR, cf [Kaye2022]). We strongly advise to use the DLR, as it significantly outperforms the Legendre representation for noise reduction.

See dmft_triqs_n_l to set the parameters of the Legendre representation, and dmft_triqs_dlr_epsilon and dmft_triqs_dlr_wmax for the DLR parameters.

dmft_triqs_move_double

Mnemonics: Dynamical Mean Field Theory: TRIQS, MOVEs DOUBLE
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: dmft_triqs_off_diag
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7]
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [2/1345] in all abinit tests, [0/179] in abinit tutorials

Set to 1 to activate the double moves in TRIQS/CTHYB. Go to their website for more information on this move. It can be required for ergodicity in the off-diagonal case.

dmft_triqs_move_shift

Mnemonics: Dynamical Mean Field Theory: TRIQS, MOVE SHIFT
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: 1
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7]
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [1/1345] in all abinit tests, [0/179] in abinit tutorials

Set to 1 to activate the shift move in TRIQS/CTHYB. Go to their website for more information on this move. It is never required for ergodicity, but is quite efficient in lowering the auto-correlation time, and has very high acceptance rates.

dmft_triqs_n_cycles

Mnemonics: Dynamical Mean Field Theory: TRIQS, Number of measurement CYCLES
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: None
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7]
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [13/1345] in all abinit tests, [0/179] in abinit tutorials

Number of measurement cycles on each CPU for TRIQS/CT-HYB. This parameter controls the level of statistical noise on your output quantities.

dmft_triqs_n_iw

Mnemonics: Dynamical Mean Field Theory: TRIQS, Number of Imaginary frequencies (W)
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: None
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7]
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [13/1345] in all abinit tests, [0/179] in abinit tutorials

Number of linear Matsubara frequencies for the representation of the Green’s function (only in the case dmft_solv \(\in\) [6,7]). The high-frequency behavior is taken into account via a moment expansion of the Green’s function up to order 5, where the moments are computed analytically in a self-consistent fashion.

dmft_triqs_n_l

Mnemonics: Dynamical Mean Field Theory: TRIQS, Number of LEGendre polynomials
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: None
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7], dmft_triqs_measure_g_l == 1
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [1/1345] in all abinit tests, [0/179] in abinit tutorials

Specify the number of Legendre polynomials used for the calculation of Green’s function in TRIQS/CTHYB (cf [Boehnke2011]).

dmft_triqs_n_tau

Mnemonics: Dynamical Mean Field Theory: TRIQS, Number of TAU points
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: None
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7]
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [13/1345] in all abinit tests, [0/179] in abinit tutorials

Specify the number of imaginary time points for the binned representation of the Green’s function and hybridization function on the segment [0, \(\beta\)] in TRIQS/CT-HYB.

dmft_triqs_n_warmup_cycles_init

Mnemonics: Dynamical Mean Field Theory: TRIQS, Number of WARMUP CYCLES at INITialization
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: None
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7]
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [13/1345] in all abinit tests, [0/179] in abinit tutorials

Specify the number of warmup cycles for each CPU when starting from an empty configuration in TRIQS/CT-HYB. This typically needs to be quite high, especially at low temperatures.

dmft_triqs_n_warmup_cycles_restart

Mnemonics: Dynamical Mean Field Theory: TRIQS, Number of WARMUP CYCLES at RESTART
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: None
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7]
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [13/1345] in all abinit tests, [0/179] in abinit tutorials

Specify the number of warmup cycles for each CPU when restarting the TRIQS/CT-HYB simulation from a previous configuration. This typically does not need to be very high, and can even be set to 0 most of the time.

At the initial DFT+DMFT iteration, a configuration file from a previous output can be specified via getctqmcdata. Afterwards, by default, the run automatically restarts from the last configuration of the previous run of the SCF cycle (this behavior is controlled by dmft_triqs_read_ctqmcdata.

The restart feature is only available with our internal version of TRIQS/CT-HYB.

dmft_triqs_nsubdivisions

Mnemonics: Dynamical Mean Field Theory: TRIQS, Number of SUBDIVISIONS
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: None
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7], dmft_triqs_compute_integral == 1
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [2/1345] in all abinit tests, [0/179] in abinit tutorials

When evaluating the coupling constant integral for the computation of the impurity entropy (cf dmft_triqs_compute_integral), the integration interval [0,1] is split in dmft_triqs_nsubdivisions regular subdivisions. Then, each one of these subdivisions is evaluated numerically by Gauss-Legendre quadrature of order dmft_triqs_gaussorder, for a total of dmft_triqs_gaussorder \(\times\) dmft_triqs_nsubdivisions integration points.

dmft_triqs_off_diag

Mnemonics: Dynamical Mean Field Theory: TRIQS, OFF-DIAGonal components
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: None
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7]
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [13/1345] in all abinit tests, [0/179] in abinit tutorials

Set to 1 to keep all off-diagonal components of the hybridization and electronic levels for the TRIQS/CT-HYB run. If set to 0, the off-diagonal elements are set to 0 before the Monte-Carlo run (in the basis specified by dmft_triqs_basis). This allows to use the feature dmft_triqs_measure_density_matrix for more accurate results, but the calculation is no longer numerically exact.

dmft_triqs_pauli_prob

Mnemonics: Dynamical Mean Field Theory: TRIQS, PAULI PROBability
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: real
Dimensions: scalar
Default value: 0.8 if dmft_solv=7, 1 if dmft_solv=6
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7]
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [1/1345] in all abinit tests, [0/179] in abinit tutorials

For the insert/remove moves, a proportion dmft_triqs_pauli_prob of the moves will be proposed according to Pauli principle. This means that the two operators will be inserted/removed such that two operators of the same type do not follow each other. The remaining proportion 1 - dmft_triqs_pauli_prob of the moves will be proposed uniformly.

Pauli moves increase the acceptance rate and reduce the autocorrelation time in a lot of systems, though non Pauli moves are still required for ergodicity in the dmft_solv=7 case ; so be careful not to set dmft_triqs_pauli_prob too close to 1.

This feature is only available with our internal version of TRIQS/CT-HYB.

dmft_triqs_prt_entropy

Mnemonics: Dynamical Mean Field Theory: TRIQS, PRinT additional info for ENTROPY
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: 0
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7]
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [1/1345] in all abinit tests, [0/179] in abinit tutorials

Print additional information when performing the thermodynamic integration (cf dmft_triqs_compute_integral), in order to help you tune your parameters. For each value of the coupling constant \(\lambda\), print the occupation numbers, the Green’s function, etc. This might increase the measurement time.

dmft_triqs_random_seed_a

Mnemonics: Dynamical Mean Field Theory: TRIQS, RANDOM SEED A
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: 34788
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7]
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [1/1345] in all abinit tests, [0/179] in abinit tutorials

Controls the seed of TRIQS/CTHYB, which is dmft_triqs_random_seed_a + rank \(\times\) dmft_triqs_random_seed_b.

dmft_triqs_random_seed_b

Mnemonics: Dynamical Mean Field Theory: TRIQS, RANDOM SEED B
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: 928374
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7]
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [1/1345] in all abinit tests, [0/179] in abinit tutorials

Controls the seed of TRIQS/CTHYB, which is dmft_triqs_random_seed_a + rank \(\times\) dmft_triqs_random_seed_b .

dmft_triqs_read_ctqmcdata

Mnemonics: Dynamical Mean Field Theory: TRIQS, READ CT-QMC DATA
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: 1
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7]
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [1/1345] in all abinit tests, [0/179] in abinit tutorials

At each CT-HYB run, the initial configuration of the Monte-Carlo is read from file (either the last configuration of the previous iteration or the one specified by getctqmcdata if this is the first iteration). This greatly speeds up warmup. At very low temperatures, this can sometimes cause some issues since the weights become very low, and the weight of a configuration can become 0 at the next iteration if you’re not converged yet. In this case, disable this.

The restart feature is only available with our internal version of TRIQS/CT-HYB.

dmft_triqs_shift_mu

Mnemonics: Dynamical Mean Field Theory: TRIQS, SHIFT of the chemical potential (MU)
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: real
Dimensions: scalar
Default value: 0.0
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7]
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [2/1345] in all abinit tests, [0/179] in abinit tutorials

During the thermodynamic integration for the entropy calculation, the coupling constant \(\lambda\) can also be set in front of the chemical potential in order to make the CT-HYB run easier. It is set such that the true chemical potential of the system \(\mu\) is recovered at \(\lambda\)=1, and it is shifted by dmft_triqs_shift_mu at \(\lambda\)=0.

The CT-HYB run is easier if the system is either filled or empty, so you want the target chemical potential \(\mu\) + dmft_triqs_shift_mu to be set in order to reach the configuration that is closer to the current configuration of your system. For instance, if your system is nearer from filled than empty, set the shift to a negative value in order to make the system more filled as \(\lambda\) decreases. Be careful however, as setting a high value of dmft_triqs_shift_mu will require a higher number of integration points.

dmft_triqs_time_invariance

Mnemonics: Dynamical Mean Field Theory: TRIQS, TIME INVARIANCE
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: dmft_triqs_measure_density_matrix
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7], dmft_triqs_measure_density_matrix == 1
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [1/1345] in all abinit tests, [0/179] in abinit tutorials

Set to 1 to activate an improved estimator for the density matrix in TRIQS/CTHYB, based on the time translation invariance of the Hamiltonian. This greatly reduces the statistical noise, but can increase the computation time if you measure too often.

This feature is only available with our internal version of TRIQS/CT-HYB.

dmft_triqs_tol_block

Mnemonics: Dynamical Mean Field Theory: TRIQS, TOLerance for the BLOCK detection algorithm
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: real
Dimensions: scalar
Default value: 1e-12
Only relevant if: usedmft = 1, dmft_solv \(\in\) [6,7]
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [1/1345] in all abinit tests, [0/179] in abinit tutorials

Before any CT-HYB run, the code rotates in the basis specified by dmft_triqs_basis. Then, all the off-diagonal elements below the threshold dmft_triqs_tol_block are set to 0 in order to try and reveal a compact block structure to reduce the computation time. This block structure is automatically detected. Try not to set this value above numerical noise.

dmft_triqs_use_norm_as_weight

Mnemonics: Dynamical Mean Field Theory: TRIQS, USE NORM of the matrix AS atomic WEIGHT
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: dmft_triqs_measure_density_matrix
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7]
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [1/1345] in all abinit tests, [0/179] in abinit tutorials

Set to 1 to use the Frobenius norm of the matrix instead of its trace as atomic weight in TRIQS/CTHYB. This is required when sampling the density matrix in order to have full ergodicity.

dmft_wanorthnorm

Mnemonics: Dynamical Mean Field Theory: WANnier OrthoNormalization
Mentioned in topic(s): topic_DMFT, topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: 3
Only relevant if: usedmft == 1
Added in version: 9.4.0

Test list (click to open). Rarely used, [9/1345] in all abinit tests, [0/179] in abinit tutorials

Definition of the orthonormalization scheme for the Wannier functions. As we project the orbitals on a finite energy window [ dmftbandi,dmftbandf ], they might no longer be orthonormal, so it is necessary to orthonormalize them in order to build true Wannier functions.

This is done by multiplication with the inverse square root of their overlaps.

  • If set to 2, the overlap is computed at each individual \(k\)-point for all atoms at the same time. This numerically guarantees the identity Downfold(Upfold) = Id, regardless of the size of the energy window. However, this makes the Wannier functions system-dependent as the orthonormalization scheme depends on the position of the atoms and the reciprocal lattice. This is the default choice when natom > 1 and dmft_solv \(\ne\) [6,7].
  • If set to 3, the overlap is summed over all \(k\)-point and is computed separately for each atom. With this choice, the fundamental identity Downfold(Upfold) = Id is only guaranteed for localized Wannier functions (i.e. large enough energy window), with no overlap to the neighboring atoms. This is the default choice when natom=1 or dmft_solv \(\in\) [6,7] as this is the only rigorous choice to compare energies between different systems.

dmft_wanrad

Mnemonics: Dynamical Mean Field Theory: WANnier functions radius
Characteristics: LENGTH
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: real
Dimensions: scalar
Default value: None
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7], dmft_prtwan == 1
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [2/1345] in all abinit tests, [0/179] in abinit tutorials

Set the maximal radius up to which the Wannier functions are computed when dmft_prtwan=1. The PAW grid is extended if needed.

Can be specified in the unit of your choice (Bohr, Angstrom) as it has the LENGTH characteristics.

dmft_x2my2d

Mnemonics: Dynamical Mean Field Theory: x2my2d orbital
Mentioned in topic(s): topic_DMFT, topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: 0
Only relevant if: usedmft == 1
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [1/1345] in all abinit tests, [0/179] in abinit tutorials

Set to 1 to apply DMFT to the \(d_{x^2-y^2}\) orbital only.

dmft_yukawa_epsilon

Mnemonics: Dynamical Mean Field Theory: dielectric constant (EPSILON) for YUKAWA potential
Mentioned in topic(s): topic_DMFT, topic_DmftTriqsCthyb
Variable type: real
Dimensions: scalar
Default value: None
Only relevant if: usedmft == 1, dmft_yukawa_param == 4
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [1/1345] in all abinit tests, [0/179] in abinit tutorials

Set the value of the dielectric constant \(\varepsilon\) for the Yukawa screened potential (cf dmft_yukawa_param).

dmft_yukawa_lambda

Mnemonics: Dynamical Mean Field Theory: inverse screening length (LAMBDA) for YUKAWA potential
Mentioned in topic(s): topic_DMFT, topic_DmftTriqsCthyb
Variable type: real
Dimensions: scalar
Default value: None
Only relevant if: usedmft == 1, dmft_yukawa_param == 4
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [1/1345] in all abinit tests, [0/179] in abinit tutorials

Set the value of the inverse screening length \(\lambda\) (in atomic units) for the Yukawa screened potential (cf dmft_yukawa_param).

dmft_yukawa_param

Mnemonics: Dynamical Mean Field Theory: YUKAWA potential PARAMetrization
Mentioned in topic(s): topic_DMFT, topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: 1
Only relevant if: usedmft == 1, dmft_dc == 8
Added in version: before_v10.5.6

Test list (click to open). Rarely used, [6/1345] in all abinit tests, [0/179] in abinit tutorials

When activating dmft_dc=8, the screened potential is assumed to have the form of a Yukawa potential with a dielectric constant: \(V_{\text{scr}}(r) = \frac{e^{-\lambda r}}{\varepsilon r}\). The variable dmft_yukawa_param controls how the parameters \(\lambda\) and \(\varepsilon\) are set:

  • If set to 1: \(\lambda\) and \(\varepsilon\) are chosen to yield \(U\) and \(J\) as close as possible to the input upawu and jpawu.
  • If set to 2: \(\varepsilon\) = 1, and \(\lambda\) is chosen to yield \(U\) = upawu.
  • If set to 3: \(\lambda\) = 0, and \(\varepsilon\) is chosen to yield \(U\) = upawu.
  • If set to 4: \(\lambda\) and \(\varepsilon\) are set to the values specified by dmft_yukawa_lambda and dmft_yukawa_epsilon.

dmftbandf

Mnemonics: Dynamical Mean Field Theory: BAND: Final
Mentioned in topic(s): topic_DMFT, topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: None
Only relevant if: usedmft == 1
Added in version: before_v9

Test list (click to open). Moderately used, [46/1345] in all abinit tests, [2/179] in abinit tutorials

dmftbandf is the last band taken into account in the Projected Local Orbitals scheme of DFT+DMFT. With dmftbandi, they define the energy window used to define Wannier Functions (see [Amadon2008]).

dmftbandi

Mnemonics: Dynamical Mean Field Theory: BAND: Initial
Mentioned in topic(s): topic_DMFT, topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: None
Only relevant if: usedmft == 1
Added in version: before_v9

Test list (click to open). Moderately used, [46/1345] in all abinit tests, [2/179] in abinit tutorials

dmftbandi is the first band taken into account in the Projected Local Orbitals scheme of DFT+DMFT. With dmftbandf, they define the energy window used to define Wannier Functions (see [Amadon2008]).

dmftcheck

Mnemonics: Dynamical Mean Field Theory: CHECKs
Characteristics: DEVELOP
Mentioned in topic(s): topic_DMFT
Variable type: integer
Dimensions: scalar
Default value: 0
Only relevant if: usedmft == 1
Added in version: before_v9

Test list (click to open). Moderately used, [31/1345] in all abinit tests, [1/179] in abinit tutorials

Only for developer purposes.

dmftctqmc_basis

Mnemonics: Dynamical Mean Field Theory: Continuous Time Quantum Monte Carlo BASIS
Mentioned in topic(s): topic_DMFT
Variable type: integer
Dimensions: scalar
Default value: 1
Only relevant if: usedmft == 1, dmft_solv == 5
Added in version: before_v9

Test list (click to open). Rarely used, [6/1345] in all abinit tests, [0/179] in abinit tutorials

Choose the basis to perform ABINIT/CTQMC calculation.

  • 0 → Use the local basis in the spherical harmonics basis. Can be useful if the Hamiltonian has weak off diagonal terms and for this reason, one want to keep the original basis for simplicity and for physical insight.
  • 1 → Default value, diagonalize the local Hamiltonian (but only if it is not diagonal). The best choice in general.
  • 2 → Diagonalise the local correlated occupation matrix. Can lead to non diagonal Hamiltonian that cannot be handled by CTQMC. This option should be thus avoided.

dmftctqmc_check

Mnemonics: Dynamical Mean Field Theory: Continuous Time Quantum Monte Carlo CHECK
Characteristics: DEVELOP
Mentioned in topic(s): topic_DMFT
Variable type: integer
Dimensions: scalar
Default value: 0
Only relevant if: dmft_solv == 5
Added in version: before_v9

Test list (click to open). Rarely used, [6/1345] in all abinit tests, [0/179] in abinit tutorials

Check the fast calculations during the Monte Carlo simulation with very slow but robust methods. Should only be used for debugging.

  • 0 → No check.
  • 1 → Check the overlap calculations (Impurity operator).
  • 2 → Check the update of M matrix calculation (Bath operator).
  • 3 → Check both.

dmftctqmc_correl

Mnemonics: Dynamical Mean Field Theory: Continuous Time Quantum Monte Carlo CORRELations
Characteristics: DEVELOP
Mentioned in topic(s): topic_DMFT
Variable type: integer
Dimensions: scalar
Default value: 0
Only relevant if: dmft_solv == 5
Added in version: before_v9

Test list (click to open). Rarely used, [6/1345] in all abinit tests, [0/179] in abinit tutorials

Flag to compute statistics about segments and anti-segments during the simulation. Slow down the simulation.

  • 0 → Nothing done
  • 1 → Calculations performed and written in “Correlation.dat” file

dmftctqmc_gmove

Mnemonics: Dynamical Mean Field Theory: Continuous Time Quantum Monte Carlo Global MOVEs
Characteristics: DEVELOP
Mentioned in topic(s): topic_DMFT
Variable type: integer
Dimensions: scalar
Default value: 0
Only relevant if: dmft_solv == 5
Added in version: before_v9

Test list (click to open). Moderately used, [18/1345] in all abinit tests, [1/179] in abinit tutorials

Default is no global moves. The value of this variable is the modulo used to try a global move. A value of 5000 means that a global move is tried every 5000 Monte Carlo sweep.

dmftctqmc_grnns

Mnemonics: Dynamical Mean Field Theory: Continuous Time Quantum Monte Carlo GReeNs NoiSe
Characteristics: DEVELOP
Mentioned in topic(s): topic_DMFT
Variable type: integer
Dimensions: scalar
Default value: 0
Only relevant if: dmft_solv == 5
Added in version: before_v9

Test list (click to open). Rarely used, [6/1345] in all abinit tests, [0/179] in abinit tutorials

Compute the statistical noise for each time slice of each green function. This is a good approximation only if there is enough Monte Carlo sweeps per cpu.

  • 0 → Nothing
  • 1 → Do it and write the noise in the “Gtau.dat” file.

dmftctqmc_localprop

Mnemonics: Dynamical Mean Field Theory: CTQMC: calculation of local properties
Characteristics: DEVELOP
Mentioned in topic(s): topic_DMFT
Variable type: integer
Dimensions: scalar
Default value: 0
Only relevant if: dmft_solv in [5, 8]
Added in version: 9.5.0

Test list (click to open). Rarely used, [5/1345] in all abinit tests, [0/179] in abinit tutorials

Compute properties of the local impurity during the CTQMC calculations.

  • 0 → Nothing done

  • 1 → Add the calculation of weight of configurations. For example, for a calculation on \(d\) orbitals, the calculations gives the weight of the 0,1,2,3,4,5,6,7,8,9 and 10 electrons configurations.

  • 2 → Add the calculation of local magnetic susceptibility. For nspinor == 1, the operator corresponds to \(g_e\hat{S}_z\), whereas for nspinor == 2 the operator corresponds to \(\hat{L}_z+g_e\hat{S}_z\).

  • 3 → Add the calculation of local charge susceptibility.

dmftctqmc_meas

Mnemonics: Dynamical Mean Field Theory: Continuous Time Quantum Monte Carlo MEASurements
Mentioned in topic(s): topic_DMFT
Variable type: integer
Dimensions: scalar
Default value: 1
Only relevant if: usedmft == 1, dmft_solv == 5
Added in version: before_v9

Test list (click to open). Rarely used, [6/1345] in all abinit tests, [0/179] in abinit tutorials

The modulo used to measure the interaction energy and the number of electrons. Example: 2 means the measure is perform every two sweeps.

dmftctqmc_mov

Mnemonics: Dynamical Mean Field Theory: Continuous Time Quantum Monte Carlo MOVie
Characteristics: DEVELOP
Mentioned in topic(s): topic_DMFT
Variable type: integer
Dimensions: scalar
Default value: 0
Only relevant if: dmft_solv == 5
Added in version: before_v9

Test list (click to open). Rarely used, [6/1345] in all abinit tests, [0/179] in abinit tutorials

Print a latex file per cpu displaying the full simulation. This option should only be use with very small number (<1000) of Monte Carlo sweeps since it requires a lot of I/O band width.

  • 0 → Nothing
  • 1 → Write the “Movie_id.dat” file where id is the MPI rank of each process

dmftctqmc_mrka

Mnemonics: Dynamical Mean Field Theory: Continuous Time Quantum Monte Carlo MARKov Analysis
Characteristics: DEVELOP
Mentioned in topic(s): topic_DMFT
Variable type: integer
Dimensions: scalar
Default value: 0
Only relevant if: dmft_solv == 5
Added in version: before_v9

Test list (click to open). Rarely used, [6/1345] in all abinit tests, [0/179] in abinit tutorials

Measure the time evolution of the number of electrons for each orbital and perform a fourier transform. The result can be plotted using the “Markov_id.dat” file

  • 0 → Nothing
  • 1 → Do it and write the noise in the “Markov_id.dat” file where id is the rank of each MPI process.

dmftctqmc_order

Mnemonics: Dynamical Mean Field Theory: Continuous Time Quantum Monte Carlo perturbation ORDER
Characteristics: DEVELOP
Mentioned in topic(s): topic_DMFT
Variable type: integer
Dimensions: scalar
Default value: 0
Only relevant if: dmft_solv == 5
Added in version: before_v9

Test list (click to open). Rarely used, [13/1345] in all abinit tests, [1/179] in abinit tutorials

Print a file containing the statistic distribution of the number of segments per orbital. The maximal order taken into account dmftctqmc_order : 50 means that we have the statistic distribution from 0 to 50 segments. The result is written in the “Perturbation.dat” file.

dmftqmc_l

Mnemonics: Dynamical Mean Field Theory: Quantum Monte Carlo time sLices
Mentioned in topic(s): topic_DMFT
Variable type: integer
Dimensions: scalar
Default value: None
Only relevant if: dmft_solv >= 5, dmft_solv \(\ne\) [6,7]
Added in version: before_v9

Test list (click to open). Moderately used, [20/1345] in all abinit tests, [1/179] in abinit tutorials

Number of time slices used to represent the time green function. This value should be carefully chosen according to Niquist frequency and the tsmear value. This is only used for ABINIT internal solvers.

dmftqmc_n

Mnemonics: Dynamical Mean Field Theory: Quantum Monte Carlo Number of sweeps
Mentioned in topic(s): topic_DMFT
Variable type: real
Dimensions: scalar
Default value: None
Only relevant if: dmft_solv >= 5, dmft_solv \(\ne\) [6,7]
Added in version: before_v9

Test list (click to open). Moderately used, [20/1345] in all abinit tests, [1/179] in abinit tutorials

Number of Monte Carlo sweeps. Should be at least 106. This is only used for ABINIT internal solvers.

dmftqmc_seed

Mnemonics: Dynamical Mean Field Theory: Quantum Monte Carlo SEED
Characteristics: DEVELOP
Mentioned in topic(s): topic_DMFT
Variable type: integer
Dimensions: scalar
Default value: jdtset
Only relevant if: dmft_solv >= 5, dmft_solv \(\ne\) [6,7]
Added in version: before_v9

Test list (click to open). Rarely used, [6/1345] in all abinit tests, [0/179] in abinit tutorials

Seed to initialize the random number generator. Should not be relevant except for testing purpose. NOTE: If the CT-QMC (dmft_solv = 5) is used on many CPUs, each CPU initializes its random number generator with dmftqmc_seed+rank where rank is the rank of the cpu in the MPI communicator.

dmftqmc_therm

Mnemonics: Dynamical Mean Field Theory: Quantum Monte Carlo THERMalization
Mentioned in topic(s): topic_DMFT
Variable type: integer
Dimensions: scalar
Default value: None
Only relevant if: dmft_solv == 5
Added in version: before_v9

Test list (click to open). Moderately used, [19/1345] in all abinit tests, [1/179] in abinit tutorials

Number of Monte Carlo sweeps for the thermalization. This is only used for ABINIT internal solvers.

getctqmcdata

Mnemonics: GET CTQMC DATA from…
Mentioned in topic(s): topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: 0
Only relevant if: usedmft == 1, dmft_solv \(\in\) [6,7]
Added in version: before v10.5.6

Test list (click to open). Rarely used, [1/1345] in all abinit tests, [0/179] in abinit tutorials

Eventually used when ndtset > 0 (multi-dataset mode) to indicate that the starting CT-HYB configuration is to be taken from the output of a previous dataset. It is used to chain the calculations and greatly speed-up warmup, since it describes from which dataset the OUTPUT configuration is to be taken, as INPUT configuration of the present dataset.

  • If getctqmcdata == 0, no such use of previously computed output configuration file is done.

  • If getctqmcdata is positive, its value gives the index of the dataset from which the output configuration is to be used as input. However, if the first dataset is treated, -1 is equivalent to 0, since no dataset has been computed in the same run.

  • If getctqmcdata is -1, the output configuration of the previous dataset must be taken, which is a frequently occurring case.

  • If getctqmcdata is a negative number, it indicates the number of datasets to go backward to find the needed file. Going back beyond the first dataset is equivalent to using zero for the get variable.

getself

Mnemonics: GET SELF-energy from…
Mentioned in topic(s): topic_DMFT, topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: 0
Only relevant if: usedmft=1
Added in version: before v10.5.6

Test list (click to open). Rarely used, [3/1345] in all abinit tests, [0/179] in abinit tutorials

Eventually used when ndtset > 0 (multi-dataset mode) to indicate that the starting DMFT self-energy is to be taken from the output of a previous dataset. It is used to chain the calculations, since it describes from which dataset the OUTPUT self-energy is to be taken, as INPUT self-energy of the present dataset.

  • If getself == 0, no such use of previously computed output self-energy file is done.

  • If getself is positive, its value gives the index of the dataset from which the output self-energy is to be used as input. However, if the first dataset is treated, -1 is equivalent to 0, since no dataset has been computed in the same run.

  • If getself is -1, the output self-energy of the previous dataset must be taken, which is a frequently occurring case.

  • If getself is a negative number, it indicates the number of datasets to go backward to find the needed file. Going back beyond the first dataset is equivalent to using zero for the get variable.

usedmft

Mnemonics: USE Dynamical Mean Field Theory
Mentioned in topic(s): topic_DMFT, topic_DmftTriqsCthyb
Variable type: integer
Dimensions: scalar
Default value: 0
Added in version: before_v9

Test list (click to open). Moderately used, [44/1345] in all abinit tests, [1/179] in abinit tutorials

If set to 1, enable the use of DFT+DMFT, see in particular the important variables dmft_solv, dmftbandi, dmftbandf, dmft_nwli, dmft_nwlo, dmft_tollc, dmft_tolfreq, and dmft_iter.

If set to 10, enable the use of DFT+DMFT using the Wannier90 interface and the python invocation for calling an external many-body code to perform the DMFT step. Typically, we use the TRIQS library. The relevant keywords in that case are only dmftbandi and dmftbandf to specify the bands used for the projection, and w90iniprj with other Wannier90 specific keywords for the Wannier90 part. More information will be provided in the future. The rest of the discussion related to this keyword is in the case where usedmft is set to 1.

The current implementation uses Wannier functions obtained from projected local orbitals as correlated orbitals (see dmftbandi and dmftbandf input variables to define them).

The Green’s functions are computed on a mesh of linear Matsubara frequencies. However, most of the code uses logarithmic Matsubara grid to lower the computational cost. Both dmft_nwli and dmft_nwlo are thus convergence parameters. In the case where you are using the internal interface with TRIQS/CT-HYB (dmft_solv \(\in\) [6,7]), we use a linear mesh with dmft_triqs_n_iw Matsubara frequencies, where the high-frequency behavior is described by a moment expansion up to order 5.

DFT+DMFT is currently available for collinear (nspinor = 1) polarized or unpolarized calculations (nspden = nsppol = 2 or nspden = nsppol = 1) and for non collinear calculations (nspinor = 2, nspden = 4, nsppol = 1). However it is not yet available for collinear antiferromagnetic calculations (nspden = 2, nsppol = 1) and non collinear non magnetic calculations (nspden = 1, nsppol = 1, nspinor = 2). CTQMC calculations (dmft_solv = 5) are not yet possible if nspinor = 2.

Only static calculations without relaxation or dynamics are possible (forces and stress are not computed in the scheme: so the computed values should NOT be trusted).

Relevant direct output quantities from converged DFT+DMFT calculations are total energy and occupation of correlated orbitals. For Hubbard I calculation (dmft_solv = 2), total and partial spectral functions can be obtained with prtdos=1 and can be found in files OUTSpFunc* (where OUT is the root for output files). For CTQMC calculations (dmft_solv = 5), imaginary time impurity Green function are output of the calculations and can be used to produce spectral function using an external Maximum Entropy Code.

A typical DFT+DMFT calculation involves two runs. First, a DFT calculation is fully converged (even unoccupied wavefunctions have to be converged). Then, the DFT+DMFT calculation is started using DFT wavefunctions or density files. As DFT+DMFT calculations (with CTQMC) are computationally expensive, it is convenient to use prtden=-1, to write DEN file at each DFT iteration, in order to be able to restart the calculation easily.

For details of the implementation with Wannier functions see [Amadon2008], for self-consistency and Hubbard I implementation see [Amadon2012]. If usedmft = 1 and nbandkss/=0, then, the DFT+DMFT calculation is not done and only projections are computed at the end of the calculation. They can be used by an external code or used to compute the screened interaction (see variable ucrpa).