mpqc::SlaterDeterminantSparseMatrix< String, Spin > Struct Template Reference
Documentation
template<typename String, SpinCase1 Spin>
struct mpqc::SlaterDeterminantSparseMatrix< String, Spin >
Slater determinant set as a sparse matrix (hashtable of alpha strings, with all beta strings in the row)
Public Types | |
using | base_type = StringToSortedVector< String, std::pair< SlaterDeterminant< String >, std::int64_t >, utility::sdhashcompare< String, flip(Spin)>, utility::sdequal< String, flip(Spin)> > |
using | ordinal_type = std::int64_t |
using | col_const_iterator = typename base_type::col_const_iterator |
Public Member Functions | |
auto & | base () |
const auto & | base () const |
bool | contains (const String &astr, const String &bstr) const |
std::optional< col_const_iterator > | safe_find (const String &astr, const String &bstr) const |
auto | insert (const String &astr, const String &bstr, std::int64_t ord=-1) |
auto | to_string_set (SpinCase1 spin) const |
extracts the list of strings of case spin More... | |
auto | transpose () const |
transpose More... | |
void | recompute_ordinals (ordinal_type start=0) |
recomputes ordinals More... | |
bool | operator== (const SlaterDeterminantSparseMatrix &other) const |
Static Public Member Functions | |
static constexpr SpinCase1 | spincase () |
Member Typedef Documentation
◆ base_type
template<typename String , SpinCase1 Spin>
using mpqc::SlaterDeterminantSparseMatrix< String, Spin >::base_type = StringToSortedVector<String, std::pair<SlaterDeterminant<String>, std::int64_t>, utility::sdhashcompare<String, flip(Spin)>, utility::sdequal<String, flip(Spin)> > |
◆ col_const_iterator
template<typename String , SpinCase1 Spin>
using mpqc::SlaterDeterminantSparseMatrix< String, Spin >::col_const_iterator = typename base_type::col_const_iterator |
◆ ordinal_type
template<typename String , SpinCase1 Spin>
using mpqc::SlaterDeterminantSparseMatrix< String, Spin >::ordinal_type = std::int64_t |
Member Function Documentation
◆ base() [1/2]
template<typename String , SpinCase1 Spin>
|
inline |
◆ base() [2/2]
template<typename String , SpinCase1 Spin>
|
inline |
◆ contains()
template<typename String , SpinCase1 Spin>
|
inline |
- Returns
- true if contains a determinant corresponding to
astr
andbstr
◆ insert()
template<typename String , SpinCase1 Spin>
|
inline |
try inserting SlaterDeterminant(astr,bstr)
- Parameters
-
[in] ord the ordinal to use for the
- Returns
- std::pair containing iterator to the existing or newly inserted SD and bool flag indicating whether insertion took place
◆ operator==()
template<typename String , SpinCase1 Spin>
|
inline |
comparison operator returns true if *this
and other
contain same set of determinants, potentially in different order
◆ recompute_ordinals()
template<typename String , SpinCase1 Spin>
|
inline |
recomputes ordinals
◆ safe_find()
template<typename String , SpinCase1 Spin>
|
inline |
- Returns
- iterator pointing to the determinant corresponding to
astr
andbstr
, if any
◆ spincase()
template<typename String , SpinCase1 Spin>
|
inlinestaticconstexpr |
◆ to_string_set()
template<typename String , SpinCase1 Spin>
|
inline |
extracts the list of strings of case spin
◆ transpose()
template<typename String , SpinCase1 Spin>
|
inline |
transpose
The documentation for this struct was generated from the following files: