CASM
1.1.0
A Clusters Approach to Statistical Mechanics
|
#include <DoF.hh>
Public Types | |
using | Base = DoF::Base |
using | BasicTraits = DoF::BasicTraits |
using | RemoteHandle = DoF::RemoteHandle |
Public Member Functions | |
OccupantDoF (BasicTraits const &_traits, std::string const &_var_name, SymGroupRepID symrep_ID, std::vector< T > const &_domain, int _current_state=0) | |
const T & | occ () const |
void | set_value (int occ_index) override |
Set occupant by index. More... | |
void | set_current_state (T const &new_state) |
Set occupant by value. More... | |
bool | compare (OccupantDoF const &RHS, bool compare_value) const |
Returns true if (*this) is equivalent to RHS,. More... | |
bool | operator== (OccupantDoF const &RHS) const |
Equivalent to (*this).compare(RHS,true) More... | |
void | set_domain (std::vector< T > new_dom) |
const std::vector< T > & | domain () const |
T & | operator[] (Index i) |
const T & | operator[] (Index i) const |
Index | size () const override |
void | print (std::ostream &out) const |
std::unique_ptr< OccupantDoF > | clone () const |
SymGroupRepID | symrep_ID () const |
void | set_symrep_ID (SymGroupRepID _id) |
bool | is_specified () const |
void | invalidate () |
int | value () const |
int | remote_value () const |
int const * | remote_ptr () const |
void | register_remote (RemoteHandle const &handle) const |
virtual bool | operator== (DiscreteDoF const &RHS) const |
BasicTraits const & | traits () const |
std::string | type_name () const |
Const access of DoF type name. More... | |
std::string | var_name () const |
Const access of variable name. More... | |
Index | ID () const |
Const access of integer ID. More... | |
RemoteHandle | handle () const |
Create a RemoteHandle that refers to this DoF. More... | |
bool | is_locked () const |
true if ID is locked More... | |
void | set_ID (Index new_ID) |
mutator to set integer ID if it is unlocked More... | |
void | lock_ID () |
mutator to lock integer ID More... | |
void | unlock_ID () |
mutator to unlock integer ID More... | |
Protected Attributes | |
int | m_current_state |
index into domain of the current state, -1 if unspecified More... | |
int const * | m_remote_state |
Allows DoF to point to a remote value for faster/easier evaluation. More... | |
SymGroupRepID | m_symrep_ID |
ID for the permutation representation for occupants. More... | |
Private Member Functions | |
DiscreteDoF * | _clone () const override |
Private Attributes | |
std::vector< T > | m_domain |
Allowed values, assume class T has method 'T.name()()'. More... | |
BasicTraits | m_traits |
std::string | m_var_name |
Index | m_dof_ID |
bool | m_ID_lock |
Locks the ID so that it can't be updated. Is used for global DoF's. More... | |
|
inherited |
|
inherited |
|
inherited |
|
inline |
|
inlineoverrideprivatevirtual |
Implements CASM::DiscreteDoF.
|
inline |
|
inline |
|
inline |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inline |
|
inlinevirtualinherited |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inline |
|
inline |
|
inlineinherited |
|
inlineinherited |
|
inlineoverridevirtual |
|
inlineoverridevirtual |
Implements CASM::DiscreteDoF.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
protectedinherited |
|
privateinherited |
dof_ID is a way to distinguish between DoFs with the same name but different identities dof_ID for now usually refers to the site index of a cluster (e.g., 0, 1, 2 of a triplet) or an index into the primitive cell neighbor list. Other usage cases may be introduced later
|
private |
|
privateinherited |
|
mutableprotectedinherited |
|
protectedinherited |
|
privateinherited |