|
CASM
AClustersApproachtoStatisticalMechanics
|
#include <SuperConfigEnum.hh>
Inheritance diagram for CASM::SuperConfigEnum:Given a selection of Configurations, enumerate all tilings into some supercell.
Definition at line 26 of file SuperConfigEnum.hh.
Public Types | |
| typedef InputEnumIterator < Configuration, IsConst > | iterator |
| typedef Configuration | value_type |
| typedef CASM_TMP::ConstSwitch < IsConst, Configuration > & | reference |
| typedef long | step_type |
Public Member Functions | |
| template<typename ConfigIterator > | |
| SuperConfigEnum (Supercell &_target_scel, ConfigIterator _begin, ConfigIterator _end) | |
| Constructor, using all Supercell permutations. More... | |
| template<typename ConfigIterator > | |
| SuperConfigEnum (Supercell &_target_scel, ConfigIterator _begin, ConfigIterator _end, PermuteIterator _perm_begin, PermuteIterator _perm_end) | |
| Constructor. More... | |
| std::string | name () const override |
| Derived enumerators must implement name, via ENUM_MEMBERS. More... | |
| const std::vector < Configuration > & | sub_config () const |
| Access the sub-configurations. More... | |
| const Array< int > & | counter () const |
| Access the current value of the counter. More... | |
| const PrimGrid & | prim_grid () const |
| Access the PrimGrid. More... | |
| iterator | begin () |
| iterator | end () |
| reference | current () const |
| Access the current ObjectType by reference. More... | |
| step_type | step () const |
| Increments with each enumerated object. More... | |
| bool | valid () const |
| Returns false if enumeration is complete. More... | |
| virtual jsonParser | source (step_type step) const |
Static Public Member Functions | |
| static int | run (PrimClex &primclex, const jsonParser &kwargs, const Completer::EnumOption &enum_opt) |
Static Public Attributes | |
| static const std::string | enumerator_name = "SuperConfigEnum" |
| static const std::string | interface_help |
Protected Member Functions | |
| void | _initialize (value_type *_initial) |
| void | _initialize () |
| void | _set_current_ptr (value_type *_new) |
| Change the pointer. More... | |
| value_type & | _current () |
| Access the current ObjectType by reference. More... | |
| void | _set_step (step_type val) |
| Set current step value. More... | |
| void | _increment_step () |
| Increment current step value. More... | |
| void | _decrement_step () |
| Decrement current step value. More... | |
| void | _invalidate () |
| Call if enumeration complete. More... | |
| void | _validate () |
| Used if random access enumerator step is moved into valid range. More... | |
Private Member Functions | |
| void | increment () override |
| Implement increment. More... | |
| void | _init () |
| Used by constructor. More... | |
| bool | _check_current () const |
| Returns true if current() satisifies requested conditions. More... | |
| Supercell & | _target_supercell () |
| Access the super-config supercell. More... | |
| Supercell & | _sub_supercell () |
| Access the sub-config supercell. More... | |
| std::vector< Configuration > & | _sub_config () |
| Access the sub-configurations. More... | |
| PrimGrid & | _prim_grid () |
| Access the PrimGrid. More... | |
| void | _fill (const Array< int > &counter_val, Configuration &config) |
| const PermuteIterator & | _perm_begin () const |
| const PermuteIterator & | _perm_end () const |
Private Attributes | |
| Supercell & | m_target_scel |
| The supercell being filled. More... | |
| std::vector< Configuration > | m_sub_config |
| A vector containing each possible sub_config. More... | |
| PermuteIterator | m_perm_begin |
| PermuteIterator | m_perm_end |
| Supercell * | m_sub_scel |
| notstd::cloneable_ptr < Configuration > | m_current |
| The 'current' Configuration. More... | |
| Counter< Array< int > > | m_counter |
| notstd::cloneable_ptr< PrimGrid > | m_prim_grid |
| A PrimGrid that tiles thes sub_scel into the ref_scel. More... | |
| std::vector< std::vector< Index > > | m_index_map |
| m_current->occ(m_index_map[i][j]) = m_sub_scel[i].occ(j) More... | |
| bool | m_has_occ |
| bool | m_has_disp |
|
inherited |
Definition at line 231 of file InputEnumerator.hh.
|
inherited |
Definition at line 192 of file Enumerator.hh.
|
inherited |
Definition at line 103 of file Enumerator.hh.
|
inherited |
Definition at line 191 of file Enumerator.hh.
| CASM::SuperConfigEnum::SuperConfigEnum | ( | Supercell & | _target_scel, |
| ConfigIterator | _begin, | ||
| ConfigIterator | _end | ||
| ) |
Constructor, using all Supercell permutations.
Definition at line 158 of file SuperConfigEnum.hh.
| CASM::SuperConfigEnum::SuperConfigEnum | ( | Supercell & | _target_scel, |
| ConfigIterator | _begin, | ||
| ConfigIterator | _end, | ||
| PermuteIterator | _perm_begin, | ||
| PermuteIterator | _perm_end | ||
| ) |
Constructor.
Definition at line 170 of file SuperConfigEnum.hh.
|
private |
Returns true if current() satisifies requested conditions.
Returns true if current() satisfies requested conditions.
Definition at line 292 of file SuperConfigEnum.cc.
|
inlineprotectedinherited |
Access the current ObjectType by reference.
Definition at line 244 of file Enumerator.hh.
|
inlineprotectedinherited |
Decrement current step value.
Definition at line 164 of file Enumerator.hh.
|
private |
Fill DoF from sub_config into a Configuration
| summary | The index of the sub_config on each PrimGrid site |
Fill DoF from sub_config into a Configuration
| counter_val | The index of the sub_config on each PrimGrid site |
| config | The Configuration to set the occupation of |
Definition at line 302 of file SuperConfigEnum.cc.
|
inlineprotectedinherited |
Increment current step value.
Definition at line 159 of file Enumerator.hh.
|
private |
Used by constructor.
Definition at line 208 of file SuperConfigEnum.cc.
|
inlineprotectedinherited |
|
inlineprotectedinherited |
Initialize
Definition at line 216 of file Enumerator.hh.
|
inlineprotectedinherited |
Call if enumeration complete.
Definition at line 169 of file Enumerator.hh.
|
inlineprivate |
Definition at line 120 of file SuperConfigEnum.hh.
|
inlineprivate |
Definition at line 123 of file SuperConfigEnum.hh.
|
inlineprivate |
Access the PrimGrid.
Definition at line 111 of file SuperConfigEnum.hh.
|
inlineprotectedinherited |
Change the pointer.
Definition at line 239 of file Enumerator.hh.
|
inlineprotectedinherited |
Set current step value.
Definition at line 154 of file Enumerator.hh.
|
inlineprivate |
Access the sub-configurations.
Definition at line 106 of file SuperConfigEnum.hh.
|
inlineprivate |
Access the sub-config supercell.
Definition at line 101 of file SuperConfigEnum.hh.
|
inlineprivate |
Access the super-config supercell.
Definition at line 96 of file SuperConfigEnum.hh.
|
inlineprotectedinherited |
Used if random access enumerator step is moved into valid range.
Definition at line 174 of file Enumerator.hh.
|
inlineinherited |
Definition at line 245 of file InputEnumerator.hh.
|
inline |
Access the current value of the counter.
Definition at line 67 of file SuperConfigEnum.hh.
|
inlineinherited |
Access the current ObjectType by reference.
Definition at line 232 of file Enumerator.hh.
|
inlineinherited |
Definition at line 249 of file InputEnumerator.hh.
|
overrideprivatevirtual |
Implement increment.
Implements CASM::InputEnumeratorBase< Configuration >.
Definition at line 274 of file SuperConfigEnum.cc.
|
inlineoverridevirtual |
Derived enumerators must implement name, via ENUM_MEMBERS.
Implements CASM::EnumeratorBase.
Definition at line 46 of file SuperConfigEnum.hh.
|
inline |
Access the PrimGrid.
Definition at line 75 of file SuperConfigEnum.hh.
|
static |
Definition at line 149 of file SuperConfigEnum.cc.
|
inlinevirtualinherited |
|
inlineinherited |
Increments with each enumerated object.
Definition at line 113 of file Enumerator.hh.
|
inline |
Access the sub-configurations.
Definition at line 58 of file SuperConfigEnum.hh.
|
inlineinherited |
Returns false if enumeration is complete.
Definition at line 118 of file Enumerator.hh.
|
static |
Definition at line 50 of file SuperConfigEnum.hh.
|
static |
Definition at line 51 of file SuperConfigEnum.hh.
Definition at line 142 of file SuperConfigEnum.hh.
|
private |
The 'current' Configuration.
Definition at line 140 of file SuperConfigEnum.hh.
|
private |
Definition at line 151 of file SuperConfigEnum.hh.
|
private |
Definition at line 150 of file SuperConfigEnum.hh.
|
private |
m_current->occ(m_index_map[i][j]) = m_sub_scel[i].occ(j)
Definition at line 148 of file SuperConfigEnum.hh.
|
private |
Definition at line 134 of file SuperConfigEnum.hh.
|
private |
Definition at line 134 of file SuperConfigEnum.hh.
|
private |
A PrimGrid that tiles thes sub_scel into the ref_scel.
Definition at line 145 of file SuperConfigEnum.hh.
|
private |
A vector containing each possible sub_config.
Definition at line 132 of file SuperConfigEnum.hh.
|
private |
Definition at line 137 of file SuperConfigEnum.hh.
|
private |
The supercell being filled.
Definition at line 129 of file SuperConfigEnum.hh.