1 #ifndef CASM_clex_ConfigDoF_impl
2 #define CASM_clex_ConfigDoF_impl
23 template <
typename GlobalInfoContainerType,
typename LocalInfoContainerType>
27 std::vector<SymGroupRepID>
const &occ_symrep_IDs,
29 : m_occupation(DoF::
BasicTraits(
"occ"), _N_sublat, _N_vol, occ_symrep_IDs),
35 throw std::runtime_error(
36 "Attempting to initialize ConfigDoF global value using local DoF " +
44 if (_N_sublat == 0)
continue;
46 throw std::runtime_error(
47 "Attempting to initialize ConfigDoF local value using global DoF " +
49 if (_N_sublat != dof.second.size()) {
50 throw std::runtime_error(
51 "Attempting to initialize ConfigDoF local value '" + dof.first +
52 "' with improperly initialized parameter 'local_dof_info'.");
Specifies traits of (possibly) anisotropic crystal properties.
bool global() const
Returns true if type is global.
ConfigDoF(Index _N_sublat, Index _N_vol, GlobalInfoContainerType const &global_dof_info, LocalInfoContainerType const &local_dof_info, std::vector< SymGroupRepID > const &occ_symrep_IDs, double _tol)
std::map< std::string, LocalContinuousConfigDoFValues > m_local_dofs
std::map< std::string, GlobalContinuousConfigDoFValues > m_global_dofs
AnisoValTraits BasicTraits
std::map< DoFKey, std::vector< CASM::DoFSetInfo > > local_dof_info(Structure const &_struc)
INDEX_TYPE Index
For long integer indexing:
std::map< DoFKey, CASM::DoFSetInfo > global_dof_info(Structure const &_struc)