Class DefaultTensorCanonicalizer¶
Defined in File abstract_tensor.hpp
Inheritance Relationships¶
Base Type¶
public sequant::TensorCanonicalizer
(Class TensorCanonicalizer)
Class Documentation¶
-
class DefaultTensorCanonicalizer : public sequant::TensorCanonicalizer¶
Public Functions
-
DefaultTensorCanonicalizer() = default¶
-
template<typename IndexContainer>
inline DefaultTensorCanonicalizer(IndexContainer &&external_indices)¶ Warning
external_indices
is assumed to be immutable during the lifetime of this object
-
virtual ~DefaultTensorCanonicalizer() = default¶
-
virtual ExprPtr apply(AbstractTensor &t) override¶
Implements TensorCanonicalizer::apply
Note
Canonicalizes
t
by sorting its bra (ift.symmetry()==Symmetry::nonsymm
) or its bra and ket (ift.symmetry()!=Symmetry::nonsymm
), with the external indices appearing “before” (smaller particle indices) than the internal indices
-
template<typename Compare>
inline ExprPtr apply(AbstractTensor &t, const Compare &comp)¶ Core of DefaultTensorCanonicalizer::apply, only does the canonicalization, i.e. no tagging/untagging
-
DefaultTensorCanonicalizer() = default¶