•All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Search Results
mpqc::HBCompositeGenerator< TGenerator, AbsHBData, T, Ranks > Struct Template Reference
Collaboration diagram for mpqc::HBCompositeGenerator< TGenerator, AbsHBData, T, Ranks >:

Documentation
template<typename TGenerator, bool AbsHBData, typename T, std::size_t... Ranks>
struct mpqc::HBCompositeGenerator< TGenerator, AbsHBData, T, Ranks >
Combines a generator producing tuples with HBTupleGenerator.
Public Types | |
using tvalue_type = typename TGenerator::value_type | |
using hbvalue_type = std::conditional_t< sizeof...(Ranks)==1, std::array< orbital_index_type, Rank >, std::tuple< const std::array< orbital_index_type, Ranks > &... > > | |
using value_type = std::tuple< const hbvalue_type &, const tvalue_type & > | |
using base_type = utility::GeneratorRangeFacade< HBCompositeGenerator< TGenerator, AbsHBData, T, Ranks... >, value_type > | |
using HBGenerator = HBTupleGenerator< Rank, RI, AbsHBData, T > | |
![]() | |
typedef GeneratorIterator< HBCompositeGenerator< TGenerator, AbsHBData, T, Ranks... >, HBCompositeGenerator< TGenerator, AbsHBData, T, Ranks... > *, std::tuple< const std::conditional_t< sizeof...(Ranks)==1, std::array< orbital_index_type,(...+Ranks)>, std::tuple< const std::array< orbital_index_type, Ranks > &... > > &, const TGenerator::value_type & > > iterator | |
typedef GeneratorIterator< HBCompositeGenerator< TGenerator, AbsHBData, T, Ranks... >, HBCompositeGenerator< TGenerator, AbsHBData, T, Ranks... > *, const std::tuple< const std::conditional_t< sizeof...(Ranks)==1, std::array< orbital_index_type,(...+Ranks)>, std::tuple< const std::array< orbital_index_type, Ranks > &... > > &, const TGenerator::value_type & > > const_iterator | |
Public Member Functions | |
template<typename TGenerator_ > | |
HBCompositeGenerator (TGenerator_ &&tgenerator, std::shared_ptr< const HBSparseTensor< RI, Rank, AbsHBData, T >> hbtensor, typename HBSparseTensor< RI, Rank, AbsHBData, T >::magnitude_type epsilon) | |
operator bool () const | |
HBCompositeGenerator & operator++ () | |
const value_type & operator* () const | |
bool operator== (const HBCompositeGenerator &other) const | |
const auto & tgenerator () const | |
const auto & hbgenerator () const | |
const_iterator begin () | |
const_iterator end () const | |
![]() | |
const_iterator begin () | |
const_iterator end () const | |
Static Public Attributes | |
constexpr static std::size_t Rank = (... + Ranks) | |
constexpr static std::size_t arity = sizeof...(Ranks) | |
constexpr static std::size_t RI | |
Member Typedef Documentation
◆ base_type
template<typename TGenerator , bool AbsHBData, typename T , std::size_t... Ranks>
using mpqc::HBCompositeGenerator< TGenerator, AbsHBData, T, Ranks >::base_type = utility::GeneratorRangeFacade< HBCompositeGenerator<TGenerator, AbsHBData, T, Ranks...>, value_type> |
◆ HBGenerator
template<typename TGenerator , bool AbsHBData, typename T , std::size_t... Ranks>
using mpqc::HBCompositeGenerator< TGenerator, AbsHBData, T, Ranks >::HBGenerator = HBTupleGenerator<Rank, RI, AbsHBData, T> |
◆ hbvalue_type
template<typename TGenerator , bool AbsHBData, typename T , std::size_t... Ranks>
using mpqc::HBCompositeGenerator< TGenerator, AbsHBData, T, Ranks >::hbvalue_type = std::conditional_t< sizeof...(Ranks) == 1, std::array<orbital_index_type, Rank>, std::tuple<const std::array<orbital_index_type, Ranks>&...> > |
◆ tvalue_type
template<typename TGenerator , bool AbsHBData, typename T , std::size_t... Ranks>
using mpqc::HBCompositeGenerator< TGenerator, AbsHBData, T, Ranks >::tvalue_type = typename TGenerator::value_type |
◆ value_type
template<typename TGenerator , bool AbsHBData, typename T , std::size_t... Ranks>
using mpqc::HBCompositeGenerator< TGenerator, AbsHBData, T, Ranks >::value_type = std::tuple<const hbvalue_type&, const tvalue_type&> |
Constructor & Destructor Documentation
◆ HBCompositeGenerator()
template<typename TGenerator , bool AbsHBData, typename T , std::size_t... Ranks>
template<typename TGenerator_ >
|
inline |
Member Function Documentation
◆ begin()
template<typename TGenerator , bool AbsHBData, typename T , std::size_t... Ranks>
|
inline |
◆ end()
template<typename TGenerator , bool AbsHBData, typename T , std::size_t... Ranks>
|
inline |
◆ hbgenerator()
template<typename TGenerator , bool AbsHBData, typename T , std::size_t... Ranks>
|
inline |
◆ operator bool()
template<typename TGenerator , bool AbsHBData, typename T , std::size_t... Ranks>
|
inlineexplicit |
- Returns
- true if there are no more items to generate
◆ operator*()
template<typename TGenerator , bool AbsHBData, typename T , std::size_t... Ranks>
|
inline |
◆ operator++()
template<typename TGenerator , bool AbsHBData, typename T , std::size_t... Ranks>
|
inline |
◆ operator==()
template<typename TGenerator , bool AbsHBData, typename T , std::size_t... Ranks>
|
inline |
return true if the current state of generators of other
and this are identical
◆ tgenerator()
template<typename TGenerator , bool AbsHBData, typename T , std::size_t... Ranks>
|
inline |
Member Data Documentation
◆ arity
template<typename TGenerator , bool AbsHBData, typename T , std::size_t... Ranks>
|
staticconstexpr |
◆ Rank
template<typename TGenerator , bool AbsHBData, typename T , std::size_t... Ranks>
|
staticconstexpr |
◆ RI
template<typename TGenerator , bool AbsHBData, typename T , std::size_t... Ranks>
|
staticconstexpr |
Initial value:
=
utility::recursive_tuple_size_v<tvalue_type>
The documentation for this struct was generated from the following file:
- mpqc/math/fock/hb.h