|
SIRIUS 7.5.0
Electronic structure library and applications
|
Inherits sirius::Hubbard_matrix.
Public Member Functions | |
| Occupation_matrix (Simulation_context &ctx__) | |
| template<typename T > | |
| void | add_k_point_contribution (K_point< T > &kp__) |
| void | init () |
| void | reduce () |
| void | update_nonlocal () |
| void | zero () |
| void | print_occupancies (int verbosity__) const |
| auto const & | occ_mtrx_T (r3::vector< int > T__) const |
| auto const & | occ_mtrx_T () const |
Public Member Functions inherited from sirius::Hubbard_matrix | |
| Hubbard_matrix (Simulation_context &ctx__) | |
| void | access (std::string const &what__, std::complex< double > *ptr__, int ld__) |
| Retrieve or set elements of the Hubbard matrix. More... | |
| void | print_local (int ia__, std::ostream &out__) const |
| void | print_nonlocal (int idx__, std::ostream &out__) const |
| void | zero () |
| auto & | local () const |
| Return a vector containing the occupation numbers for each atomic orbital. More... | |
| auto & | local (int ia__) |
| auto const & | local (int ia__) const |
| auto & | nonlocal () const |
| auto & | nonlocal (int idx__) |
| auto const & | nonlocal (int idx__) const |
| const auto & | atomic_orbitals () const |
| const auto & | atomic_orbitals (const int idx__) const |
| int | offset (const int idx__) const |
| const auto & | offset () const |
| auto const & | ctx () const |
| int | find_orbital_index (const int ia__, const int n__, const int l__) const |
Private Attributes | |
| std::map< r3::vector< int >, sddk::mdarray< std::complex< double >, 3 > > | occ_mtrx_T_ |
| K-point contribution to density matrices weighted with e^{ikT} phase factors. More... | |
Friends | |
| void | copy (Occupation_matrix const &src__, Occupation_matrix &dest__) |
Additional Inherited Members | |
Protected Attributes inherited from sirius::Hubbard_matrix | |
| Simulation_context & | ctx_ |
| std::vector< sddk::mdarray< std::complex< double >, 3 > > | local_ |
| Local part of Hubbard matrix. More... | |
| std::vector< sddk::mdarray< std::complex< double >, 3 > > | nonlocal_ |
| Non-local part of Hubbard matrix. More... | |
| std::vector< std::pair< int, int > > | atomic_orbitals_ |
| std::vector< int > | offset_ |
Definition at line 34 of file occupation_matrix.hpp.
| sirius::Occupation_matrix::Occupation_matrix | ( | Simulation_context & | ctx__ | ) |
Definition at line 31 of file occupation_matrix.cpp.
| template void sirius::Occupation_matrix::add_k_point_contribution< double > | ( | K_point< T > & | kp__ | ) |
Definition at line 62 of file occupation_matrix.cpp.
| void sirius::Occupation_matrix::init | ( | ) |
The initial occupancy is calculated following Hund rules. We first fill the d (f) states according to the hund's rules and with majority spin first and the remaining electrons distributed among the minority states.
Definition at line 226 of file occupation_matrix.cpp.
|
inline |
Definition at line 51 of file occupation_matrix.hpp.
|
inline |
Definition at line 73 of file occupation_matrix.hpp.
|
inline |
Definition at line 106 of file occupation_matrix.hpp.
| void sirius::Occupation_matrix::print_occupancies | ( | int | verbosity__ | ) | const |
Definition at line 330 of file occupation_matrix.cpp.
|
inline |
Definition at line 116 of file occupation_matrix.hpp.
|
inline |
Definition at line 121 of file occupation_matrix.hpp.
|
friend |
Definition at line 131 of file occupation_matrix.hpp.
|
private |
K-point contribution to density matrices weighted with e^{ikT} phase factors.
Definition at line 38 of file occupation_matrix.hpp.