TRIQS/triqs_modest 3.3.0
Modular Electronic Structure Toolkit
|
The Modular Electronic Structure Toolkit (ModEST) provides the necessary tooling to perform DMFT-type calculations in the context of electronic structure including density-functional theory (DFT) and many-body perturbation theory (MBPT).
Modularity is achieved through four key abstractions
These abstractions let you describe complex DMFT problems – from simple single-site DMFT to multi-impurity, spin-orbit, or cluster DMFT – in a clean and modular way.
Efficiency and performance are achieved via a modern C++ implementation, and all functionality is fully exposed in Python, making it possible to prototype and run production calculations in either language.
If you are looking for a specific function, class, etc., try using the search bar in the top left corner.
One-body elements (obe for short) contains all of the one-body data that is typically converted from a density-functional theory (DFT) calculation or Wannier90 calculation. The one-body elements struct contains four components:
To make it easy to build this object, ModEST provides factory functions that convert raw DFT data (from codes like VASP, Wien2k, or Wannier90) into fully prepared OBE objects ready for DMFT.
The Embedding abstraction is the central controller of the DMFT problem: it defines how the correlated subspace ( \(\mathcal{C}\)) is partitioned into impurities and handles the bookkeeping needed to map back and forth between the lattice and the impurities.
Typical use cases covered by embedding:
The embedding object provides:
This abstrction simplifies the DMFT loop, making it easy to construct arbitrary embedding scenarios.
A central quantity of the DMFT self-consistency condition – the Local Green's function is defined as
\[ [ G_{\mathrm{loc}}^{\sigma} ]_{m m'} = \sum_{\mathbf{k}} P_{m\nu}^{\sigma}(\mathbf{k}) \Big [ (\omega + \mu)\delta_{\nu\nu'} - H^{\sigma}_{\nu\nu'}(\mathbf{k}) - [P_{m\nu}^{\sigma}]^{\dagger} \Sigma_{\mathrm{embed}}P_{m'\nu'}^{\sigma}(\mathbf{k}) \Big ]^{-1} [P_{m'\nu'}^{\sigma}]^{\dagger}, \]
where \(\omega\) is a frequency (either real- or Matsubra), \(\mu\) is the chemical potential, \(H(\mathbf{k})\) is the one-body Hamiltonian, \(P(\mathbf{k})\) are the projectors from the band to the orbital basis, and \(\Sigma_{\mathrm{embed}}\) is the embedded self-energy.
ModEST computes this efficiently:
The hybridization function \(\Delta(\omega)\) is a key input to TRIQS impurity solvers. It describes the coupling of each impurity to the bath:
\[ [\Delta^{\sigma}(\omega)]_{mm'} = \omega - \tilde{\varepsilon} - G_{\mathrm{loc}}^{-1}(\omega) - \Sigma_{\mathrm{imp}}(\omega), \]
where \(\tilde{\varepsilon} = \varepsilon - \mu - \Sigma_{\mathrm{DC}}\).
Calculate the total electronic density from the lattice Green's function and search for the chemical potential \(\mu\) that gives a target electron count. We provide several algorithms optimized for speed and robustness. Due to the modularity you can also leverage external root finding routines to write a custom chemical potential search.
To describe local interactions, ModEST provides tools to construct standard interaction Hamiltonians :
All built using TRIQS many-body operators.
This design makes it easier to swap and test different double counting schemes.
Compute spectral functions and related quantities:
Plot-ready output to help you analyze and publish results.
Extra tools that make life easier: