Describes Hubbard orbital occupancy or potential correction matrices.
More...
#include <hubbard_matrix.hpp>
Inherited by sirius::Occupation_matrix.
Describes Hubbard orbital occupancy or potential correction matrices.
Definition at line 33 of file hubbard_matrix.hpp.
◆ Hubbard_matrix()
◆ access()
void sirius::Hubbard_matrix::access |
( |
std::string const & |
what__, |
|
|
std::complex< double > * |
ptr__, |
|
|
int |
ld__ |
|
) |
| |
Retrieve or set elements of the Hubbard matrix.
This functions helps retrieving or setting up the hubbard occupancy tensors from an external tensor. Retrieving it is done by specifying "get" in the first argument of the method while setting it is done with the parameter set up to "set". The second parameter is the output pointer and the last parameter is the leading dimension of the tensor.
The returned result has the same layout than SIRIUS layout, * i.e., the harmonic orbitals are stored from m_z = -l..l. The occupancy matrix can also be accessed through the method occupation_matrix()
- Parameters
-
[in] | what | String to set to "set" for initializing sirius ccupancy tensor and "get" for retrieving it. |
[in,out] | occ | Pointer to external occupancy tensor. |
[in] | ld | Leading dimension of the outside tensor. |
- Returns
- return the occupancy matrix if the first parameter is set to "get".
Definition at line 88 of file hubbard_matrix.cpp.
◆ print_local()
void sirius::Hubbard_matrix::print_local |
( |
int |
ia__, |
|
|
std::ostream & |
out__ |
|
) |
| const |
◆ print_nonlocal()
void sirius::Hubbard_matrix::print_nonlocal |
( |
int |
idx__, |
|
|
std::ostream & |
out__ |
|
) |
| const |
◆ zero()
void sirius::Hubbard_matrix::zero |
( |
| ) |
|
◆ local() [1/3]
auto & sirius::Hubbard_matrix::local |
( |
| ) |
const |
|
inline |
Return a vector containing the occupation numbers for each atomic orbital.
Definition at line 72 of file hubbard_matrix.hpp.
◆ local() [2/3]
auto & sirius::Hubbard_matrix::local |
( |
int |
ia__ | ) |
|
|
inline |
◆ local() [3/3]
auto const & sirius::Hubbard_matrix::local |
( |
int |
ia__ | ) |
const |
|
inline |
◆ nonlocal() [1/3]
auto & sirius::Hubbard_matrix::nonlocal |
( |
| ) |
const |
|
inline |
◆ nonlocal() [2/3]
auto & sirius::Hubbard_matrix::nonlocal |
( |
int |
idx__ | ) |
|
|
inline |
◆ nonlocal() [3/3]
auto const & sirius::Hubbard_matrix::nonlocal |
( |
int |
idx__ | ) |
const |
|
inline |
◆ atomic_orbitals() [1/2]
const auto & sirius::Hubbard_matrix::atomic_orbitals |
( |
| ) |
const |
|
inline |
◆ atomic_orbitals() [2/2]
const auto & sirius::Hubbard_matrix::atomic_orbitals |
( |
const int |
idx__ | ) |
const |
|
inline |
◆ offset() [1/2]
int sirius::Hubbard_matrix::offset |
( |
const int |
idx__ | ) |
const |
|
inline |
◆ offset() [2/2]
const auto & sirius::Hubbard_matrix::offset |
( |
| ) |
const |
|
inline |
◆ ctx()
auto const & sirius::Hubbard_matrix::ctx |
( |
| ) |
const |
|
inline |
◆ find_orbital_index()
int sirius::Hubbard_matrix::find_orbital_index |
( |
const int |
ia__, |
|
|
const int |
n__, |
|
|
const int |
l__ |
|
) |
| const |
|
inline |
◆ ctx_
◆ local_
std::vector<sddk::mdarray<std::complex<double>, 3> > sirius::Hubbard_matrix::local_ |
|
protected |
◆ nonlocal_
std::vector<sddk::mdarray<std::complex<double>, 3> > sirius::Hubbard_matrix::nonlocal_ |
|
protected |
◆ atomic_orbitals_
std::vector<std::pair<int, int> > sirius::Hubbard_matrix::atomic_orbitals_ |
|
protected |
◆ offset_
std::vector<int> sirius::Hubbard_matrix::offset_ |
|
protected |
The documentation for this class was generated from the following files: