CASM
1.1.0
A Clusters Approach to Statistical Mechanics
|
#include <LatticeEnumEquivalents.hh>
Enumerate equivalent Lattics, given a SymGroup.
Definition at line 32 of file LatticeEnumEquivalents.hh.
Public Types | |
typedef InputEnumIterator< ValueType, IsConst > | iterator |
typedef ValueType | value_type |
typedef CASM_TMP::ConstSwitch< IsConst, ValueType > & | reference |
typedef long | step_type |
Public Member Functions | |
LatticeEnumEquivalents (const xtal::Lattice &lat, const SymGroup &super_g) | |
Constructor. More... | |
std::string | name () const override |
Derived enumerators must implement name, via ENUM_MEMBERS. More... | |
const xtal::Lattice & | generator () const |
const CASM::SymOp & | sym_op () const |
const std::vector< CASM::SymOp > & | invariant_subgroup () const |
iterator | begin () |
iterator | end () |
reference | current () const |
Access the current ObjectType by reference. More... | |
virtual std::string | name () const =0 |
Derived enumerators must implement name, via ENUM_MEMBERS. More... | |
virtual jsonParser | source (step_type step) const |
virtual jsonParser | source (step_type step) const |
step_type | step () const |
Increments with each enumerated object. More... | |
step_type | step () const |
Increments with each enumerated object. More... | |
bool | valid () const |
Returns false if enumeration is complete. More... | |
bool | valid () const |
Returns false if enumeration is complete. More... | |
Static Public Attributes | |
static const std::string | enumerator_name |
Protected Member Functions | |
void | _initialize (CASM_TMP::ConstSwitch< IsConst, value_type > *_initial) |
void | _initialize () |
void | _set_current_ptr (CASM_TMP::ConstSwitch< IsConst, value_type > *_new) |
Change the pointer. More... | |
void | _decrement_step () |
Decrement current step value. More... | |
void | _increment_step () |
Increment current step value. More... | |
void | _invalidate () |
Call if enumeration complete. More... | |
void | _set_step (step_type val) |
Set current step value. More... | |
void | _set_step (step_type val) |
Set current step value. More... | |
void | _validate () |
Used if random access enumerator step is moved into valid range. More... | |
Private Member Functions | |
void | increment () override |
Implement increment. More... | |
bool | _check (const CASM::SymOp &X) const |
Private Attributes | |
notstd::cloneable_ptr< xtal::Lattice > | m_initial |
notstd::cloneable_ptr< xtal::Lattice > | m_current |
std::vector< CASM::SymOp >::const_iterator | m_symop_it |
std::vector< CASM::SymOp >::const_iterator | m_symop_end |
std::vector< CASM::SymOp > | m_invariant_subgroup |
SymRepIndexCompare | m_compare |
friend | InputEnumIteratorBase< ValueType, IsConst > |
CASM_TMP::ConstSwitch< IsConst, value_type > * | m_current_ptr |
bool | m_valid |
step_type | m_step |
|
inherited |
Definition at line 204 of file InputEnumerator.hh.
|
inherited |
Definition at line 174 of file Enumerator.hh.
|
inherited |
Definition at line 175 of file Enumerator.hh.
|
inherited |
Definition at line 173 of file Enumerator.hh.
CASM::LatticeEnumEquivalents::LatticeEnumEquivalents | ( | const xtal::Lattice & | lat, |
const SymGroup & | super_g | ||
) |
Constructor.
lat | Lattice to generate equivalents of |
super_g | The super group to use to generate equivalents. Must have a valid MasterSymGroup. |
tol | Tolerance used for checking equivalence |
std::runtime_error | if super_g does not have a MasterSymGroup |
Definition at line 37 of file LatticeEnumEquivalents.cc.
|
inlineprivateinherited |
Returns true for one element (the "minimum" SymOp) of the left cosets of the invariant subgroup
Definition at line 122 of file EnumEquivalents.hh.
|
inlineprotectedinherited |
Decrement current step value.
Definition at line 202 of file Enumerator.hh.
|
inlineprotectedinherited |
Increment current step value.
Definition at line 203 of file Enumerator.hh.
|
inlineprotectedinherited |
|
inlineprotectedinherited |
Initialize
Definition at line 197 of file Enumerator.hh.
|
inlineprotectedinherited |
Call if enumeration complete.
Definition at line 204 of file Enumerator.hh.
|
inlineprotectedinherited |
Change the pointer.
Definition at line 215 of file Enumerator.hh.
|
inlineprotectedinherited |
Set current step value.
Definition at line 150 of file Enumerator.hh.
|
inlineprotectedinherited |
Set current step value.
Definition at line 205 of file Enumerator.hh.
|
inlineprotectedinherited |
Used if random access enumerator step is moved into valid range.
Definition at line 162 of file Enumerator.hh.
|
inlineinherited |
Definition at line 216 of file InputEnumerator.hh.
|
inlineinherited |
Access the current ObjectType by reference.
Definition at line 211 of file Enumerator.hh.
|
inlineinherited |
Definition at line 220 of file InputEnumerator.hh.
|
inlineinherited |
Definition at line 91 of file EnumEquivalents.hh.
|
inlineoverrideprivatevirtualinherited |
Implement increment.
Implements CASM::InputEnumeratorBase< ValueType, IsConst >.
Definition at line 103 of file EnumEquivalents.hh.
|
inlineinherited |
Definition at line 95 of file EnumEquivalents.hh.
|
inherited |
Derived enumerators must implement name, via ENUM_MEMBERS.
|
inlineoverridevirtual |
Derived enumerators must implement name, via ENUM_MEMBERS.
Implements CASM::EnumeratorBase.
Definition at line 39 of file LatticeEnumEquivalents.hh.
|
inlinevirtualinherited |
Default Object source just uses step#
Returns:
Definition at line 129 of file Enumerator.hh.
|
inlineinherited |
|
inlineinherited |
Increments with each enumerated object.
Definition at line 115 of file Enumerator.hh.
|
inlineinherited |
Increments with each enumerated object.
Definition at line 186 of file Enumerator.hh.
|
inlineinherited |
Definition at line 93 of file EnumEquivalents.hh.
|
inlineinherited |
Returns false if enumeration is complete.
Definition at line 118 of file Enumerator.hh.
|
inlineinherited |
Returns false if enumeration is complete.
Definition at line 187 of file Enumerator.hh.
|
static |
Definition at line 41 of file LatticeEnumEquivalents.hh.
|
privateinherited |
Definition at line 198 of file InputEnumerator.hh.
|
privateinherited |
Definition at line 133 of file EnumEquivalents.hh.
|
privateinherited |
Definition at line 129 of file EnumEquivalents.hh.
|
privateinherited |
Definition at line 220 of file Enumerator.hh.
|
privateinherited |
Definition at line 128 of file EnumEquivalents.hh.
|
privateinherited |
Definition at line 132 of file EnumEquivalents.hh.
|
privateinherited |
Definition at line 167 of file Enumerator.hh.
|
privateinherited |
Definition at line 131 of file EnumEquivalents.hh.
|
privateinherited |
Definition at line 130 of file EnumEquivalents.hh.
|
privateinherited |
Definition at line 165 of file Enumerator.hh.