Class AnyIrrepContext¶
Defined in File any.hpp
Nested Relationships¶
Nested Types¶
Class Documentation¶
-
class AnyIrrepContext¶
Type-erased IrrepContext (for arbitrary IRREP algebras). It satisfies IrrepPropagationContext and can thus be used with irreps_of. A moved-from object may only be assigned to or destroyed.
Public Types
-
using set_type = AnyIrrepSet¶
Public Functions
-
template<IrrepAlgebra A>
inline AnyIrrepContext(IrrepContext<A> ctx)¶
-
AnyIrrepContext(const AnyIrrepContext &other)¶
-
AnyIrrepContext(AnyIrrepContext &&other) noexcept¶
-
AnyIrrepContext &operator=(const AnyIrrepContext &other)¶
-
AnyIrrepContext &operator=(AnyIrrepContext &&other) noexcept¶
-
~AnyIrrepContext()¶
-
AnyIrrepSet irreps_of(const Tensor &tensor) const¶
See also
-
AnyIrrepSet irreps_of(const Variable &variable) const¶
-
AnyIrrepSet totally_symmetric() const¶
-
bool is_totally_symmetric(const AnyIrrepSet &set) const¶
- Throws:
Exception – if the set is not of this context’s IRREP type
- Returns:
Whether the given set contains nothing but the totally symmetric IRREP
-
AnyIrrepSet empty_set() const¶
-
AnyIrrepSet any_set() const¶
See also
-
AnyIrrepSet product(const AnyIrrepSet &lhs, const AnyIrrepSet &rhs) const¶
- Throws:
Exception – if the sets are not of this context’s IRREP type
-
AnyIrrepSet conjugate(const AnyIrrepSet &set) const¶
- Throws:
Exception – if the set is not of this context’s IRREP type
-
template<IrrepAlgebra A>
inline const IrrepContext<A> *as() const¶ - Returns:
A pointer to the wrapped context, if it is of type IrrepContext. Otherwise, nullptr.
-
using set_type = AnyIrrepSet¶