CASM
1.1.0
A Clusters Approach to Statistical Mechanics
|
Class that helps manage which order DoF are applied to a SimpleStructure when building it from a Configuration. Each TransformDirective applies one DoF type or "atomizes" molecules (populating SimpleStructure::atom_info from SimpleStructure::mol_info). It is meant to be stored in a std::set<TransformDirective> and has a comparison operator and uses information from AnisoValTraits to appropriately order TransformDirective in the set. Then they can be applied sequentially (using transform
) to build the SimpleStructure.
Definition at line 136 of file SimpleStructureTools.cc.
Public Member Functions | |
TransformDirective (std::string const &_name) | |
consturct from transformation or DoF type name More... | |
std::string const & | name () const |
Name of DoFType or transformation. More... | |
bool | operator< (TransformDirective const &_other) const |
Compare with _other TransformDirective. Returns true if this TransformDirective has precedence. More... | |
void | transform (ConfigDoF const &_config, xtal::BasicStructure const &_reference, xtal::SimpleStructure &_struc) const |
Applies transformation to _struc using information contained in _config. More... | |
Private Member Functions | |
void | _accumulate_before (std::set< std::string > const &_queue, std::set< std::string > &_result) const |
Build m_before object by recursively traversing DoF dependencies. More... | |
void | _accumulate_after (std::set< std::string > const &_queue, std::set< std::string > &_result) const |
Build m_after object by recursively traversing DoF dependencies. More... | |
Private Attributes | |
std::string | m_name |
std::set< std::string > | m_before |
std::set< std::string > | m_after |
DoFType::Traits const * | m_traits_ptr |
CASM::clex_SimpleStructureTools_impl::TransformDirective::TransformDirective | ( | std::string const & | _name | ) |
consturct from transformation or DoF type name
Definition at line 190 of file SimpleStructureTools.cc.
|
private |
Build m_after object by recursively traversing DoF dependencies.
Definition at line 219 of file SimpleStructureTools.cc.
|
private |
Build m_before object by recursively traversing DoF dependencies.
Definition at line 210 of file SimpleStructureTools.cc.
|
inline |
Name of DoFType or transformation.
Definition at line 142 of file SimpleStructureTools.cc.
bool CASM::clex_SimpleStructureTools_impl::TransformDirective::operator< | ( | TransformDirective const & | _other | ) | const |
Compare with _other TransformDirective. Returns true if this TransformDirective has precedence.
Definition at line 200 of file SimpleStructureTools.cc.
void CASM::clex_SimpleStructureTools_impl::TransformDirective::transform | ( | ConfigDoF const & | _config, |
xtal::BasicStructure const & | _reference, | ||
xtal::SimpleStructure & | _struc | ||
) | const |
Applies transformation to _struc using information contained in _config.
Definition at line 228 of file SimpleStructureTools.cc.
|
private |
Definition at line 165 of file SimpleStructureTools.cc.
|
private |
Definition at line 164 of file SimpleStructureTools.cc.
|
private |
Definition at line 163 of file SimpleStructureTools.cc.
|
private |
Definition at line 167 of file SimpleStructureTools.cc.