CASM  1.1.0
A Clusters Approach to Statistical Mechanics
CASM::xtal::SiteDoFSet Class Reference

#include <DoFSet.hh>

+ Inheritance diagram for CASM::xtal::SiteDoFSet:

Detailed Description

Identical to xtal::DoFSet, but also keeps track of a list of molecule names that the DoFSet does not apply to. For example, don't apply displacements to a vacancy.

Definition at line 95 of file DoFSet.hh.

Public Types

using BasicTraits = AnisoValTraits
 

Public Member Functions

 SiteDoFSet (const DoFSet &init_dofset, const std::unordered_set< std::string > &init_exclude_occs)
 
 SiteDoFSet (const DoFSet &init_dofset)
 
 SiteDoFSet (const BasicTraits &init_traits, const std::vector< std::string > &init_component_names, const Eigen::MatrixXd &init_basis, const std::unordered_set< std::string > &init_exclude_occs)
 
 SiteDoFSet (const BasicTraits &init_traits, const std::unordered_set< std::string > &init_exclude_occs={})
 
bool is_excluded_occ (std::string const &_occ_name) const
 Returns true if DoFSet is inactive (e.g., takes zero values) when specified occupant is present. More...
 
const std::unordered_set< std::string > & excluded_occupants () const
 Return all occupants that the DoFSet should not be applied to. More...
 
const std::string & type_name () const
 Returns type_name of DoFSet, which should be a standardized DoF type (e.g., "disp", "magspin", "GLstrain") More...
 
const std::vector< std::string > & component_names () const
 Returns the names of each of the component axes. More...
 
BasicTraits const & traits () const
 Returns traits object for the DoF type of this DoFSet. More...
 
Index dim () const
 
Eigen::MatrixXd const & basis () const
 Matrix that relates DoFSet variables to a conventional coordiante system. More...
 

Private Attributes

std::unordered_set< std::string > m_excluded_occs
 
BasicTraits m_traits
 
std::vector< std::string > m_component_names
 
Eigen::MatrixXd m_basis
 

Member Typedef Documentation

◆ BasicTraits

Definition at line 31 of file DoFSet.hh.

Constructor & Destructor Documentation

◆ SiteDoFSet() [1/4]

CASM::xtal::SiteDoFSet::SiteDoFSet ( const DoFSet init_dofset,
const std::unordered_set< std::string > &  init_exclude_occs 
)
inline

Definition at line 97 of file DoFSet.hh.

◆ SiteDoFSet() [2/4]

CASM::xtal::SiteDoFSet::SiteDoFSet ( const DoFSet init_dofset)
inline

Definition at line 101 of file DoFSet.hh.

◆ SiteDoFSet() [3/4]

CASM::xtal::SiteDoFSet::SiteDoFSet ( const BasicTraits init_traits,
const std::vector< std::string > &  init_component_names,
const Eigen::MatrixXd &  init_basis,
const std::unordered_set< std::string > &  init_exclude_occs 
)
inline

Definition at line 103 of file DoFSet.hh.

◆ SiteDoFSet() [4/4]

CASM::xtal::SiteDoFSet::SiteDoFSet ( const BasicTraits init_traits,
const std::unordered_set< std::string > &  init_exclude_occs = {} 
)
inline

Definition at line 110 of file DoFSet.hh.

Member Function Documentation

◆ basis()

Eigen::MatrixXd const& CASM::xtal::DoFSet::basis ( ) const
inlineinherited

Matrix that relates DoFSet variables to a conventional coordiante system.

Definition at line 67 of file DoFSet.hh.

◆ component_names()

const std::vector<std::string>& CASM::xtal::DoFSet::component_names ( ) const
inlineinherited

Returns the names of each of the component axes.

Definition at line 55 of file DoFSet.hh.

◆ dim()

Index CASM::xtal::DoFSet::dim ( ) const
inlineinherited

Returns the number of dimension of the DoF, corresponding to the number of axes in the vector space

Definition at line 64 of file DoFSet.hh.

◆ excluded_occupants()

const std::unordered_set<std::string>& CASM::xtal::SiteDoFSet::excluded_occupants ( ) const
inline

Return all occupants that the DoFSet should not be applied to.

Definition at line 121 of file DoFSet.hh.

◆ is_excluded_occ()

bool CASM::xtal::SiteDoFSet::is_excluded_occ ( std::string const &  _occ_name) const
inline

Returns true if DoFSet is inactive (e.g., takes zero values) when specified occupant is present.

Definition at line 116 of file DoFSet.hh.

◆ traits()

BasicTraits const& CASM::xtal::DoFSet::traits ( ) const
inlineinherited

Returns traits object for the DoF type of this DoFSet.

Definition at line 60 of file DoFSet.hh.

◆ type_name()

const std::string& CASM::xtal::DoFSet::type_name ( ) const
inlineinherited

Returns type_name of DoFSet, which should be a standardized DoF type (e.g., "disp", "magspin", "GLstrain")

Definition at line 52 of file DoFSet.hh.

Member Data Documentation

◆ m_basis

Eigen::MatrixXd CASM::xtal::DoFSet::m_basis
privateinherited

The basis defines the space of the DoF, which should be a linear combination of the AnisoValTraits conventional coordinates. For example, you may want to define displacements that only happen along a particular direction

Definition at line 82 of file DoFSet.hh.

◆ m_component_names

std::vector<std::string> CASM::xtal::DoFSet::m_component_names
privateinherited

Names for each axis of the basis, for example "dx", "dy", "dz" for displacement

Definition at line 76 of file DoFSet.hh.

◆ m_excluded_occs

std::unordered_set<std::string> CASM::xtal::SiteDoFSet::m_excluded_occs
private

Definition at line 126 of file DoFSet.hh.

◆ m_traits

BasicTraits CASM::xtal::DoFSet::m_traits
privateinherited

AnisoValTraits. Describes the type of DoF, and can convert Cartesian symmetry representations into the appropriate representation

Definition at line 72 of file DoFSet.hh.


The documentation for this class was generated from the following file: