Class TensorBlockCanonicalizer

Inheritance Relationships

Base Type

Class Documentation

class TensorBlockCanonicalizer : public sequant::DefaultTensorCanonicalizer

Public Functions

TensorBlockCanonicalizer() = default
~TensorBlockCanonicalizer() = default
template<typename IndexContainer>
inline TensorBlockCanonicalizer(const IndexContainer &external_indices)
virtual ExprPtr apply(AbstractTensor &t) const override

Implements TensorCanonicalizer::apply

Note

Canonicalizes t by sorting its bra (if t.symmetry()==Symmetry::nonsymm ) or its bra and ket (if t.symmetry()!=Symmetry::nonsymm ), with the external indices appearing “before” (smaller particle indices) than the internal indices