1 #ifndef CASM_ScelOrbitGeneration
2 #define CASM_ScelOrbitGeneration
26 template <
typename _ElementType>
51 template <
typename PermuteIteratorIt>
53 PermuteIteratorIt end)
const;
73 template <
typename _ElementType>
90 template <
typename PermuteIteratorIt>
92 PermuteIteratorIt end)
const;
Functor to find the canonical generating element for an orbit in a Supercell.
PermuteIterator from_canonical() const
After using call operator, this can be checked.
const Supercell & supercell() const
Element operator()(const Element &e) const
Applies symmetry to return an equivalent Element in a canonical form.
const SymCompareType & sym_compare() const
ScelPeriodicSymCompare< Element > SymCompareType
SymCompareType m_sym_compare
PermuteIterator to_canonical() const
After using call operator, this can be checked.
ScelCanonicalGenerator(const Supercell &_scel)
PermuteIterator m_to_canonical
Orbit< SymCompareType > OrbitType
Comparisons of clusters using supercell periodic symmetry, but without periodic images.
Represents a supercell of the primitive parent crystal structure.
Functor to find to check if element is in canonical form.
const Supercell & supercell() const
const SymCompareType & sym_compare() const
SymCompareType m_sym_compare
ScelIsCanonical(const Supercell &_scel)
bool operator()(const Element &e) const
Applies symmetry to check if any Element is greater than e.
ScelPeriodicSymCompare< Element > SymCompareType