|
CASM
1.1.0
A Clusters Approach to Statistical Mechanics
|
#include <HasCanonicalForm.hh>
Inheritance diagram for CASM::CanonicalForm< Base >:Implements canonical form finding when using SymCompare.
Definition at line 19 of file HasCanonicalForm.hh.
Public Types | |
| typedef Base::MostDerived | MostDerived |
Public Member Functions | |
| template<typename SymCompareType > | |
| bool | is_canonical (const std::vector< SymOp > &g, const SymCompareType &sym_compare) const |
| Check if canonical. More... | |
| template<typename SymCompareType > | |
| MostDerived | canonical_form (const std::vector< SymOp > &g, const SymCompareType &sym_compare) const |
| Return canonical form. More... | |
| template<typename SymCompareType > | |
| bool | is_sym_equivalent (const MostDerived &other, const std::vector< SymOp > &g, const SymCompareType &sym_compare) const |
| Check if two elements have the same canonical form. More... | |
| template<typename ObjIterator , typename SymCompareType > | |
| ObjIterator | find_sym_equivalent (ObjIterator begin, ObjIterator end, const std::vector< SymOp > &g, const SymCompareType &sym_compare) const |
| Find element that has the same canonical form. More... | |
| template<typename SymCompareType > | |
| SymOp | to_canonical (const std::vector< SymOp > &g, const SymCompareType &sym_compare) const |
| Return op that transforms this into canonical form. More... | |
| template<typename SymCompareType > | |
| SymOp | from_canonical (const std::vector< SymOp > &g, const SymCompareType &sym_compare) const |
| Return op that transforms the canonical form into this. More... | |
| template<typename SymCompareType > | |
| SymGroup | invariant_subgroup (const SymGroup &super_grp, const SymCompareType &sym_compare) const |
| Return subgroup of super_grp that leaves this invariant. More... | |
| bool | is_canonical (const Supercell &scel) const |
| Check if canonical in Supercell. More... | |
| MostDerived | canonical_form (const Supercell &scel) const |
| Return canonical form in Supercell. More... | |
| bool | is_sym_equivalent (const MostDerived &B, const Supercell &scel) const |
| True if this and B have same canonical form in Supercell. More... | |
| SymOp | to_canonical (const Supercell &scel) const |
| Return operation in Supercell that transforms this into canonical form. More... | |
| SymOp | from_canonical (const Supercell &scel) const |
| Return operation in Supercell that transforms canonical form into this. More... | |
| std::vector< PermuteIterator > | invariant_subgroup (const Supercell &scel) const |
| Return subgroup of Supercell permutations that leave this invariant. More... | |
| template<typename PermuteIteratorIt > | |
| bool | is_canonical (const Supercell &scel, PermuteIteratorIt begin, PermuteIteratorIt end) const |
| template<typename PermuteIteratorIt > | |
| MostDerived | canonical_form (const Supercell &scel, PermuteIteratorIt begin, PermuteIteratorIt end) const |
| template<typename PermuteIteratorIt > | |
| bool | is_sym_equivalent (const MostDerived &B, const Supercell &scel, PermuteIteratorIt begin, PermuteIteratorIt end) const |
| True if this and B have same canonical form. More... | |
| template<typename ObjIterator , typename PermuteIteratorIt > | |
| ObjIterator | find_sym_equivalent (ObjIterator obj_begin, ObjIterator obj_end, const Supercell &scel, PermuteIteratorIt begin, PermuteIteratorIt end) const |
| Find element that has the same canonical form, with respect to a subgroup. More... | |
| template<typename PermuteIteratorIt > | |
| SymOp | to_canonical (const Supercell &scel, PermuteIteratorIt begin, PermuteIteratorIt end) const |
| template<typename PermuteIteratorIt > | |
| SymOp | from_canonical (const Supercell &scel, PermuteIteratorIt begin, PermuteIteratorIt end) const |
| template<typename PermuteIteratorIt > | |
| std::vector< PermuteIterator > | invariant_subgroup (const Supercell &scel, PermuteIteratorIt begin, PermuteIteratorIt end) const |
| typedef Base::MostDerived CASM::CanonicalForm< Base >::MostDerived |
Definition at line 21 of file HasCanonicalForm.hh.
| CanonicalForm< _Base >::MostDerived CASM::CanonicalForm< _Base >::canonical_form | ( | const std::vector< SymOp > & | g, |
| const SymCompareType & | sym_compare | ||
| ) | const |
Return canonical form.
Definition at line 29 of file HasCanonicalForm_impl.hh.
| CanonicalForm< _Base >::MostDerived CASM::CanonicalForm< _Base >::canonical_form | ( | const Supercell & | scel | ) | const |
Return canonical form in Supercell.
Definition at line 87 of file HasCanonicalForm_impl.hh.
| CanonicalForm< _Base >::MostDerived CASM::CanonicalForm< _Base >::canonical_form | ( | const Supercell & | scel, |
| PermuteIteratorIt | begin, | ||
| PermuteIteratorIt | end | ||
| ) | const |
Return canonical form in Supercell, with respect to a subgroup of Supercell permutations
Definition at line 131 of file HasCanonicalForm_impl.hh.
| ObjIterator CASM::CanonicalForm< _Base >::find_sym_equivalent | ( | ObjIterator | begin, |
| ObjIterator | end, | ||
| const std::vector< SymOp > & | g, | ||
| const SymCompareType & | sym_compare | ||
| ) | const |
Find element that has the same canonical form.
Definition at line 46 of file HasCanonicalForm_impl.hh.
| ObjIterator CASM::CanonicalForm< _Base >::find_sym_equivalent | ( | ObjIterator | obj_begin, |
| ObjIterator | obj_end, | ||
| const Supercell & | scel, | ||
| PermuteIteratorIt | begin, | ||
| PermuteIteratorIt | end | ||
| ) | const |
Find element that has the same canonical form, with respect to a subgroup.
Definition at line 152 of file HasCanonicalForm_impl.hh.
| SymOp CASM::CanonicalForm< _Base >::from_canonical | ( | const std::vector< SymOp > & | g, |
| const SymCompareType & | sym_compare | ||
| ) | const |
Return op that transforms the canonical form into this.
Definition at line 68 of file HasCanonicalForm_impl.hh.
| SymOp CASM::CanonicalForm< _Base >::from_canonical | ( | const Supercell & | scel | ) | const |
Return operation in Supercell that transforms canonical form into this.
Definition at line 108 of file HasCanonicalForm_impl.hh.
| SymOp CASM::CanonicalForm< _Base >::from_canonical | ( | const Supercell & | scel, |
| PermuteIteratorIt | begin, | ||
| PermuteIteratorIt | end | ||
| ) | const |
Return operation in Supercell that transforms canonical form into this, with respect to a subgroup of Supercell permutations
Definition at line 175 of file HasCanonicalForm_impl.hh.
| std::vector< PermuteIterator > CASM::CanonicalForm< _Base >::invariant_subgroup | ( | const Supercell & | scel | ) | const |
Return subgroup of Supercell permutations that leave this invariant.
Definition at line 114 of file HasCanonicalForm_impl.hh.
| std::vector< PermuteIterator > CASM::CanonicalForm< _Base >::invariant_subgroup | ( | const Supercell & | scel, |
| PermuteIteratorIt | begin, | ||
| PermuteIteratorIt | end | ||
| ) | const |
Return subgroup of Supercell permutations that leave this invariant, with respect to a subgroup of Supercell permutations
Definition at line 184 of file HasCanonicalForm_impl.hh.
| SymGroup CASM::CanonicalForm< _Base >::invariant_subgroup | ( | const SymGroup & | super_grp, |
| const SymCompareType & | sym_compare | ||
| ) | const |
Return subgroup of super_grp that leaves this invariant.
Definition at line 75 of file HasCanonicalForm_impl.hh.
| bool CASM::CanonicalForm< _Base >::is_canonical | ( | const std::vector< SymOp > & | g, |
| const SymCompareType & | sym_compare | ||
| ) | const |
Check if canonical.
Definition at line 21 of file HasCanonicalForm_impl.hh.
| bool CASM::CanonicalForm< _Base >::is_canonical | ( | const Supercell & | scel | ) | const |
Check if canonical in Supercell.
Definition at line 81 of file HasCanonicalForm_impl.hh.
| bool CASM::CanonicalForm< _Base >::is_canonical | ( | const Supercell & | scel, |
| PermuteIteratorIt | begin, | ||
| PermuteIteratorIt | end | ||
| ) | const |
Check if canonical in Supercell, with respect to a subgroup of Supercell permutations
Definition at line 122 of file HasCanonicalForm_impl.hh.
| bool CASM::CanonicalForm< _Base >::is_sym_equivalent | ( | const MostDerived & | B, |
| const Supercell & | scel | ||
| ) | const |
True if this and B have same canonical form in Supercell.
True if this and B have same canonical form.
Definition at line 95 of file HasCanonicalForm_impl.hh.
| bool CASM::CanonicalForm< _Base >::is_sym_equivalent | ( | const MostDerived & | B, |
| const Supercell & | scel, | ||
| PermuteIteratorIt | begin, | ||
| PermuteIteratorIt | end | ||
| ) | const |
True if this and B have same canonical form.
True if this and B have same canonical form, with respect to a subgroup of Supercell permutations
Definition at line 141 of file HasCanonicalForm_impl.hh.
| bool CASM::CanonicalForm< _Base >::is_sym_equivalent | ( | const MostDerived & | other, |
| const std::vector< SymOp > & | g, | ||
| const SymCompareType & | sym_compare | ||
| ) | const |
Check if two elements have the same canonical form.
Definition at line 37 of file HasCanonicalForm_impl.hh.
| SymOp CASM::CanonicalForm< _Base >::to_canonical | ( | const std::vector< SymOp > & | g, |
| const SymCompareType & | sym_compare | ||
| ) | const |
Return op that transforms this into canonical form.
Definition at line 59 of file HasCanonicalForm_impl.hh.
| SymOp CASM::CanonicalForm< _Base >::to_canonical | ( | const Supercell & | scel | ) | const |
Return operation in Supercell that transforms this into canonical form.
Definition at line 102 of file HasCanonicalForm_impl.hh.
| SymOp CASM::CanonicalForm< _Base >::to_canonical | ( | const Supercell & | scel, |
| PermuteIteratorIt | begin, | ||
| PermuteIteratorIt | end | ||
| ) | const |
Return operation in Supercell that transforms this into canonical form, with respect to a subgroup of Supercell permutations
Definition at line 165 of file HasCanonicalForm_impl.hh.