TRIQS/triqs_modest 3.3.0
Brillouin zone summation
Loading...
Searching...
No Matches
Local Green's function

Detailed Description

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.

Functions

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.
 
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.
 

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 Gš“’ local Green's function on Mesh(MxM)
 
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.
 

Function Documentation

◆ gloc() [1/4]

template<typename Mesh >
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 gloc for more details.

Template Parameters
MeshThe mesh type
Parameters
meshmesh triqs::meshes::{imfreq, dlr_imfreq}
obeone-body elements
muchemical potential
Returns
The local Green's function.

Definition at line 146 of file gloc_fixed_grid.hpp.

◆ gloc() [2/4]

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 
)

#include <triqs_modest/obe_tb.hpp>

Compute the local Green's function without a self-energy.

See gloc for more details.

Template Parameters
Mesh
Parameters
meshThe mesh on which Gloc will be computed
obeA one_body_elements object containing the tb_hamiltonian
muChemical potential
optContainer for options related integration of the BZ
Returns
gloc[alpha][sigma], the local Green's function

Definition at line 147 of file obe_tb.hpp.

◆ gloc() [3/4]

template<typename Mesh >
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 
)

#include <triqs_modest/gloc_fixed_grid.hpp>

compute Gš“’ local Green's function on Mesh(MxM)

Template Parameters
MeshThe mesh type (triqs::mesh::{dlr_imfreq,imfreq})
Parameters
obeone_body_elements_on_grid
muchemical potential
Sigma_dynamicThe dynamic part of the embedded self-energy in the embedded view, Sigma_dynamic[alpha, sigma].
Sigma_staticThe static part of the embedded self-energy in the embedded view, Sigma_static[alpha,sigma]
Returns
gloc[0, sigma], the local Green's function in the full C space.

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}\).

Definition at line 92 of file gloc_fixed_grid.hpp.

◆ gloc() [4/4]

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 
)

#include <triqs_modest/obe_tb.hpp>

Compute the local Green's function without a self-energy.

See gloc for more details.

Template Parameters
Mesh
Parameters
obeA one_body_elements object containing the tb_hamiltonian
muChemical potential
Sigma_dynamicThe dynamic part of the embedded self-energy.
Sigma_staticThe static part of the embedded self-energy.
optContainer for options related integration of the BZ
Returns
gloc[alpha][sigma], the local Green's function

Definition at line 105 of file obe_tb.hpp.