Realistic DMFT and electronic structure

This page describes how dynamical mean-field theory (DMFT) is combined with realistic electronic-structure methods — density-functional theory (DFT) – and how ModEST organizes that combination in code. The project stands on the shoulders of triqs/dft_tools. While introducing all of the concepts, we will introduce the core ModEST abstractions: one-body elements, embedding, and k-summation.

From DFT to a correlated low-energy problem

DFT in the Kohn–Sham (KS) framework gives a one-particle description of the full electronic structure in terms of Bloch states \(|\psi_{\nu}^{\sigma}(\mathbf{k})\rangle\) with eigenvalues \(\varepsilon_{\nu}^{\sigma}(\mathbf{k})\). For materials with narrow, partially-filled bands (typically of \(d\) or \(f\) character) the KS descriptions is no longer a good description of the low-energy properties of the material. This indicates that entanglement (or the quantumness of the electrons) is imporant and we must negotiate with solving a quantum many-body problem.

Conceptually, the DMFT framework requires one to single out a correlated subspace \(\mathcal{C}\) spanned by localized orbitals \(|\chi_{m_a}^{R_a\,\sigma}\rangle\) (Wannier functions, projected local orbitals, …) and to compute a self-energy \(\Sigma_{\mathcal{C}}^{\sigma}(\omega)\) only on that subspace. The connection between the two spaces is given by the projector \(P_{m\nu}^{\sigma}(\mathbf{k})\) introduced in Theory and notation. Everything else — full Bloch states, all bands, the lattice \(\mathbf{k}\)-grid — enters through one-body quantities that ModEST groups into a single one-body-elements object.

The lattice Hamiltonian + self-energy problem

The interacting lattice Green’s function reads (see (3)(4))

(1)\[\bigl[G_{\mathcal{B}}^{\sigma}\bigr]^{-1}(\mathbf{k}, \omega) = (\omega + \mu)\,\mathbb{1} - H^{\sigma}(\mathbf{k}) - P^{\dagger}(\mathbf{k})\, \bigl[\Sigma_{\mathrm{imp}}^{\sigma}(\omega) - \Sigma_{\mathrm{DC}}^{\sigma}\bigr]\,P(\mathbf{k}),\]

where \(H^{\sigma}(\mathbf{k})\) is the Kohn–Sham one-body Hamiltonian on the chosen band window, \(\mu\) is the chemical potential, \(\Sigma_{\mathrm{imp}}^{\sigma}\) is the impurity self-energy supplied by an impurity solver, and \(\Sigma_{\mathrm{DC}}^{\sigma}\) is the double-counting correction that removes the static local-interaction contribution already present in the DFT exchange-correlation functional.

The DMFT self-consistency cycle

DMFT closes a loop on the impurity Green’s function by demanding that the impurity Green’s function equals the local Green’s function obtained by projecting \(G_{\mathcal{B}}\) onto \(\mathcal{C}\):

(2)\[G_{\mathrm{imp}}^{\sigma}(\omega) \;\stackrel{!}{=}\; G_{\mathcal{C},\,\mathrm{loc}}^{\sigma}(\omega) = \sum_{\mathbf{k}} P(\mathbf{k})\, G_{\mathcal{B}}^{\sigma}(\mathbf{k}, \omega)\,P^{\dagger}(\mathbf{k}).\]

Operationally, each DMFT iteration consists of the following steps:

  1. Upfold the embedded self-energy. Given the current impurity self-energy \(\Sigma_{\mathrm{imp}}^{\sigma}\) and the double-counting term \(\Sigma_{\mathrm{DC}}^{\sigma}\), build the embedded self-energy \(\Sigma_{\mathrm{embed}}^{\sigma} = \Sigma_{\mathrm{imp}}^{\sigma} - \Sigma_{\mathrm{DC}}^{\sigma}\) and upfold it to \(\mathcal{B}\) via \(P^{\dagger}\cdot P\).

  2. Compute the local Green’s function by k-summation ((5) / (7)).

  3. Adjust the chemical potential so that the total particle number matches the target density.

  4. Extract impurity-level inputs for the solver: the impurity levels \(E_{\mathrm{imp}}\) and the hybridization function \(\Delta(\omega)\) obtained from \(G_{\mathcal{C},\,\mathrm{loc}}^{\sigma}\).

  5. Solve the impurity model to obtain a new \(\Sigma_{\mathrm{imp}}^{\sigma}\) and iterate to convergence.

Charge self-consistency

In one-shot DFT+DMFT the KS Hamiltonian \(H^{\sigma}(\mathbf{k})\) is fixed at its DFT value. In charge self-consistent DFT+DMFT (CSC) the DMFT-corrected density is fed back into the DFT code, which recomputes \(H^{\sigma}(\mathbf{k})\) and the projectors \(P(\mathbf{k})\). The two loops are nested: DFT updates the electronic density and the Kohn–Sham potential; DMFT updates the self-energy on \(\mathcal{C}\). ModEST provides a generic triqs_modest.dft_driver.DftDriver interface that hides code-specific details (VASP, Quantum ESPRESSO, Wien2k, …) behind two hooks: run_initial_stage (initial DFT run) and run_update_stage (DFT update given a DMFT charge-density correction).

How ModEST organizes the calculation

The three primitives that appear in every realistic DMFT calculation map directly onto ModEST objects:

  • One-body elements — the projector \(P(\mathbf{k})\), the Kohn–Sham dispersion \(\varepsilon_{\nu}^{\sigma}(\mathbf{k})\), and (for CSC) the band character matrices and the symmetries used to unfold to the full Brillouin zone. See One-body elements.

  • Embedding — the embedding object is the central bookkeeper that carries every mapping between the impurity problems and the solid: upfolding the impurity self-energies into the embedded self-energy on \(\mathcal{C}\), downfolding the local Green’s function back to each impurity, applying the basis rotations that absorb local coordinate systems and symmetry adaptations, and gluing equivalent atoms, magnetic-order patterns, split/dropped impurities, and cluster-DMFT groupings into a single, consistent description. The DMFT loop only ever sees impurity-shaped objects on one side and lattice-shaped objects on the other — the embedding handles the translation in both directions. See Embedding.

  • k-summation — local Green’s function, density, chemical-potential search, and charge-density correction. The k-sums are implemented on the Woodbury-reduced form of the Dyson equation ((7)): every inversion happens in the small \(\mathcal{C}\) space rather than in the full band space \(\mathcal{B}\), which is what makes the lattice-side cost of a DMFT iteration cheap even for large band windows. The k-sums are MPI-parallel, with per-\(\mathbf{k}\) work dispatched across ranks. See DMFT loop and Charge self-consistency.

For the underlying notation, conventions, and derivations, continue to Theory and notation.