TRIQS/triqs_modest 3.3.0
Modular Electronic Structure Toolkit
Loading...
Searching...
No Matches
triqs::modest::band_dispersion

#include <triqs_modest/downfolding.hpp>

Detailed Description

The one-body dispersion as a function of momentum.

The band dispersion typically corresponds to the solution of a (Kohn-Sham) Hamiltonian which has been diagonalized in momentum space and formulated in a basis of Bloch states \( | \phi_{\nu\mathbf{k}} \rangle \) with corresponding eigenvalues ( \(\varepsilon_{\nu\mathbf{k}}^{\sigma}\)).

A band dispersion object contains the DFT band structure \(\varepsilon_{\nu\mathbf{k}}^{\sigma}\), weights in the Brillouin zone, and the spin kind used in the DFT calculation.

Definition at line 37 of file downfolding.hpp.

Public Member Functions

nda::matrix_const_view< dcomplexH (long sigma, long k_idx) const
 Get \( H^{\sigma}_{\nu\nu'}(\mathbf{k}) \) for a given \( \mathbf{k} \) and \( \sigma \).
 
long n_k () const
 Number of k-points in the grid.
 
long N_nu (long sigma, long k_idx) const
 Number of bands for a given k-point and spin \( \sigma \).
 
bool operator== (band_dispersion const &) const =default
 Equality comparison operator.
 

Public Attributes

nda::array< dcomplex, 4 > H_k
 Hamiltonian \( H^{\sigma}_{\nu\nu'}(\mathbf{k}) \).
 
nda::array< double, 1 > k_weights
 Weight in the BZ for each k-point.
 
bool matrix_valued
 Is the dispersion matrix-valued?
 
nda::array< long, 2 > n_bands_per_k
 Number of bands for each k-point and \( \sigma \).
 
spin_kind_e spin_kind
 Spin kind of the one-body data.
 

Friends

void mpi_broadcast (band_dispersion &x, mpi::communicator c={}, int root=0)
 MPI broadcast.
 
std::ostream & operator<< (std::ostream &out, band_dispersion const &bd)
 Print information about a band_dispersion object.
 

Member Function Documentation

◆ H()

nda::matrix_const_view< dcomplex > triqs::modest::band_dispersion::H ( long  sigma,
long  k_idx 
) const
inline

Get \( H^{\sigma}_{\nu\nu'}(\mathbf{k}) \) for a given \( \mathbf{k} \) and \( \sigma \).

Parameters
sigmaSpin index \( \sigma \).
k_idxIndex of the k-point in the grid.
Returns
Matrix view of \( H^{\sigma}_{\nu\nu'}(\mathbf{k}) \) in \( (\nu, \nu') \) for a given \( \mathbf{k} \) and \( \sigma \).

Definition at line 75 of file downfolding.hpp.

◆ n_k()

long triqs::modest::band_dispersion::n_k ( ) const
inline

Number of k-points in the grid.

Definition at line 85 of file downfolding.hpp.

◆ N_nu()

long triqs::modest::band_dispersion::N_nu ( long  sigma,
long  k_idx 
) const
inline

Number of bands for a given k-point and spin \( \sigma \).

Definition at line 82 of file downfolding.hpp.

◆ operator==()

bool triqs::modest::band_dispersion::operator== ( band_dispersion const &  ) const
default

Equality comparison operator.

Friends And Related Symbol Documentation

◆ mpi_broadcast

void mpi_broadcast ( band_dispersion x,
mpi::communicator  c = {},
int  root = 0 
)
friend

MPI broadcast.

Definition at line 48 of file downfolding.hpp.

◆ operator<<

std::ostream & operator<< ( std::ostream &  out,
band_dispersion const &  bd 
)
friend

Print information about a band_dispersion object.

Definition at line 14 of file printing.cpp.

Member Data Documentation

◆ H_k

nda::array<dcomplex, 4> triqs::modest::band_dispersion::H_k

Hamiltonian \( H^{\sigma}_{\nu\nu'}(\mathbf{k}) \).

Definition at line 39 of file downfolding.hpp.

◆ k_weights

nda::array<double, 1> triqs::modest::band_dispersion::k_weights

Weight in the BZ for each k-point.

Definition at line 41 of file downfolding.hpp.

◆ matrix_valued

bool triqs::modest::band_dispersion::matrix_valued

Is the dispersion matrix-valued?

Definition at line 42 of file downfolding.hpp.

◆ n_bands_per_k

nda::array<long, 2> triqs::modest::band_dispersion::n_bands_per_k

Number of bands for each k-point and \( \sigma \).

Definition at line 40 of file downfolding.hpp.

◆ spin_kind

spin_kind_e triqs::modest::band_dispersion::spin_kind

Spin kind of the one-body data.

Definition at line 38 of file downfolding.hpp.


The documentation for this struct was generated from the following file: