TRIQS/triqs_modest 3.3.0
Modular Electronic Structure Toolkit
|
Central quantity of the DMFT self-consistency condition - the local Green's function.
Compute the local Green's function 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.
Local Green's function using a fixed k-grid | |
template<typename Mesh > | |
block2_gf< Mesh, matrix_valued > | triqs::modest::gloc (one_body_elements_on_grid const &obe, double mu, block2_gf< Mesh, matrix_valued > const &Sigma_dynamic, nda::array< nda::matrix< dcomplex >, 2 > const &Sigma_static) |
Compute local Green's function on a \( M \times M \) mesh. | |
template<typename Mesh > | |
block2_gf< Mesh, matrix_valued > | triqs::modest::gloc (Mesh const &mesh, one_body_elements_on_grid const &obe, double mu) |
Compute the local Green's function without a self-energy. | |
Local Green's function using a TB Hamiltonian | |
template<typename Mesh > | |
block2_gf< Mesh, matrix_valued > | triqs::modest::gloc (one_body_elements_tb const &obe, double mu, block2_gf< Mesh, matrix_valued > const &Sigma_dynamic, nda::array< nda::matrix< dcomplex >, 2 > const &Sigma_static, triqs::lattice::bz_int_options const &opt) |
Compute the local Green's function without a self-energy. | |
template<typename Mesh > | |
block2_gf< Mesh, matrix_valued > | triqs::modest::gloc (Mesh const &mesh, one_body_elements_tb const &obe, double mu, triqs::lattice::bz_int_options const &opt) |
Compute the local Green's function without a self-energy. | |
block2_gf< Mesh, matrix_valued > triqs::modest::gloc | ( | Mesh const & | mesh, |
one_body_elements_on_grid const & | obe, | ||
double | mu | ||
) |
#include <triqs_modest/gloc_fixed_grid.hpp>
Compute the local Green's function without a self-energy.
See other overloads (gloc) for more details.
Mesh | The mesh type. |
mesh | (DLR) imaginary frequency mesh. |
obe | One-body elements on a fixed grid. |
mu | Chemical potential \( \mu \). |
Definition at line 161 of file gloc_fixed_grid.hpp.
block2_gf< Mesh, matrix_valued > triqs::modest::gloc | ( | Mesh const & | mesh, |
one_body_elements_tb const & | obe, | ||
double | mu, | ||
triqs::lattice::bz_int_options const & | opt | ||
) |
#include <triqs_modest/obe_tb.hpp>
Compute the local Green's function without a self-energy.
See other overloads (gloc) for more details.
Mesh | The mesh type. |
mesh | The mesh on which \( G_{\mathrm{loc}} \) will be computed. |
obe | One-body elements containing the TB Hamiltonian. |
mu | Chemical potential \( \mu \). |
opt | Container for options related to integration of the BZ. |
Definition at line 165 of file obe_tb.hpp.
block2_gf< Mesh, matrix_valued > triqs::modest::gloc | ( | one_body_elements_on_grid const & | obe, |
double | mu, | ||
block2_gf< Mesh, matrix_valued > const & | Sigma_dynamic, | ||
nda::array< nda::matrix< dcomplex >, 2 > const & | Sigma_static | ||
) |
#include <triqs_modest/gloc_fixed_grid.hpp>
Compute local Green's function on a \( M \times M \) mesh.
When the one-body dispersion is defined as fixed k-grid, which is the case when working with DFT codes (e.g., VASP, Wien2k, Elk) or performing charge self-consistent calculations with any DFT code, \(H(\mathbf{k})\) is diagonal in the band basis and reduces to \(\varepsilon_{\nu}^{\sigma}(\mathbf{k})\). The local Green's function becomes:
\[ [ G_{\mathrm{loc}}^{\sigma} ]_{m m'} = \sum_{\mathbf{k}} P_{m\nu}^{\sigma}(\mathbf{k}) \Big [ (\omega + \mu - \varepsilon_{\nu}^{\sigma}(\mathbf{k}))\delta_{\nu\nu'} - [P_{m\nu}^{\sigma}]^{\dagger}\Sigma_{\mathrm{embed}} P_{m'\nu'}^{\sigma}(\mathbf{k}) \Big ]^{-1} [P_{m'\nu'}^{\sigma}]^{\dagger}. \]
For performance reasons, we can avoid performing the matrix inverstion in the larger band basis ( \(N_{\nu}\)) using the Woodbury formula which allows us to perform the matrix inversion in the smaller orbital basis \(N_{M}\).
Mesh | The mesh type (triqs::mesh::{dlr_imfreq,imfreq}). |
obe | One-body elements on a fixed grid. |
mu | Chemical potential \( \mu \). |
Sigma_dynamic | The dynamic part of the embedded self-energy in the embedded view, \( \Sigma_{\text{dynamic}}[\alpha, \sigma] \). |
Sigma_static | The static part of the embedded self-energy in the embedded view, \( \Sigma_{\text{static}}[\alpha,\sigma] \). |
Definition at line 107 of file gloc_fixed_grid.hpp.
block2_gf< Mesh, matrix_valued > triqs::modest::gloc | ( | one_body_elements_tb const & | obe, |
double | mu, | ||
block2_gf< Mesh, matrix_valued > const & | Sigma_dynamic, | ||
nda::array< nda::matrix< dcomplex >, 2 > const & | Sigma_static, | ||
triqs::lattice::bz_int_options const & | opt | ||
) |
#include <triqs_modest/obe_tb.hpp>
Compute the local Green's function without a self-energy.
See other overloads (gloc) for more details.
Mesh | The mesh type. |
obe | One-body elements containing the TB Hamiltonian. |
mu | Chemical potential \( \mu \). |
Sigma_dynamic | The dynamic part of the embedded self-energy in the embedded view, \( \Sigma_{\text{dynamic}}[\alpha, \sigma] \). |
Sigma_static | The static part of the embedded self-energy in the embedded view, \( \Sigma_{\text{static}}[\alpha,\sigma] \). |
opt | Container for options related to integration of the BZ. |
Definition at line 123 of file obe_tb.hpp.