•All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Search Results
mpqc::HBTupleGenerator< RO, RI, AbsHBData, T > Class Template Reference
Collaboration diagram for mpqc::HBTupleGenerator< RO, RI, AbsHBData, T >:

Documentation
template<std::size_t RO, std::size_t RI, bool AbsHBData = true, typename T = double>
class mpqc::HBTupleGenerator< RO, RI, AbsHBData, T >
HBTupleGenerator (HB="heat-bath") generates tuples like TupleGenerator<>, but instead of generating all tuples from a host range of integers, every input tuple defines its own output tuple range, with its every element associated with a decreasing magnitude (importance).
Public Types | |
using value_type = const std::array< orbital_index_type, RO > | |
using input_tuple_type = std::array< orbital_index_type, RI > | |
using output_tuple_type = std::array< orbital_index_type, RO > | |
![]() | |
typedef GeneratorIterator< HBTupleGenerator< RO, RI, true, double >, HBTupleGenerator< RO, RI, true, double > *, const std::array< orbital_index_type, RO > > iterator | |
typedef GeneratorIterator< HBTupleGenerator< RO, RI, true, double >, HBTupleGenerator< RO, RI, true, double > *, const const std::array< orbital_index_type, RO > > const_iterator | |
Public Member Functions | |
HBTupleGenerator (std::shared_ptr< const HBSparseTensor< RI, RO, AbsHBData, T >> hbdata, const input_tuple_type &input, typename HBSparseTensor< RI, RO, AbsHBData, T >::magnitude_type epsilon) | |
HBTupleGenerator (const HBTupleGenerator &)=default | |
HBTupleGenerator & operator= (const HBTupleGenerator &)=default | |
operator bool () const | |
HBTupleGenerator & operator++ () | |
const output_tuple_type & operator* () const | |
const auto & attribute () const | |
bool operator== (HBTupleGenerator const &other) const | |
![]() | |
const_iterator begin () | |
const_iterator end () const | |
Member Typedef Documentation
◆ input_tuple_type
template<std::size_t RO, std::size_t RI, bool AbsHBData = true, typename T = double>
using mpqc::HBTupleGenerator< RO, RI, AbsHBData, T >::input_tuple_type = std::array<orbital_index_type, RI> |
◆ output_tuple_type
template<std::size_t RO, std::size_t RI, bool AbsHBData = true, typename T = double>
using mpqc::HBTupleGenerator< RO, RI, AbsHBData, T >::output_tuple_type = std::array<orbital_index_type, RO> |
◆ value_type
template<std::size_t RO, std::size_t RI, bool AbsHBData = true, typename T = double>
using mpqc::HBTupleGenerator< RO, RI, AbsHBData, T >::value_type = const std::array<orbital_index_type, RO> |
Constructor & Destructor Documentation
◆ HBTupleGenerator() [1/2]
template<std::size_t RO, std::size_t RI, bool AbsHBData = true, typename T = double>
|
inline |
initializes generator using HB-format sparse tensor and an input tuple
- Parameters
-
[in] hbdata the HBData object [in] input input tuple [in] epsilon controls where the range ends; the iteration stops when the element magnitude falls below epsilon
[in] end if true, will point to the end of the range, else will point to the beginning (if possible)
◆ HBTupleGenerator() [2/2]
template<std::size_t RO, std::size_t RI, bool AbsHBData = true, typename T = double>
|
default |
Member Function Documentation
◆ attribute()
template<std::size_t RO, std::size_t RI, bool AbsHBData = true, typename T = double>
|
inline |
◆ operator bool()
template<std::size_t RO, std::size_t RI, bool AbsHBData = true, typename T = double>
|
inlineexplicit |
- Returns
- true if not at the end
◆ operator*()
template<std::size_t RO, std::size_t RI, bool AbsHBData = true, typename T = double>
|
inline |
◆ operator++()
template<std::size_t RO, std::size_t RI, bool AbsHBData = true, typename T = double>
|
inline |
◆ operator=()
template<std::size_t RO, std::size_t RI, bool AbsHBData = true, typename T = double>
|
default |
◆ operator==()
template<std::size_t RO, std::size_t RI, bool AbsHBData = true, typename T = double>
|
inline |
The documentation for this class was generated from the following file:
- mpqc/math/fock/hb.h