CASM  1.1.0
A Clusters Approach to Statistical Mechanics
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules
DoFSpace.hh File Reference

Go to the source code of this file.

Classes

class  CASM::DoFSpace
 
class  CASM::make_symmetry_adapted_dof_space_error
 
struct  CASM::VectorSpaceMixingInfo
 A struct which gives out the mixing information of given column_vector_space and a subspace. More...
 

Namespaces

 CASM
 Main CASM namespace.
 
 CASM::SymRepTools_v2
 

Functions

bool CASM::is_valid_dof_space (Configuration const &config, DoFSpace const &dof_space)
 
void CASM::throw_if_invalid_dof_space (Configuration const &config, DoFSpace const &dof_space)
 Throw if !is_valid_dof_space(config, dof_space) More...
 
Eigen::VectorXd CASM::get_normal_coordinate (Configuration const &config, DoFSpace const &dof_space)
 Return config DoF value as a coordinate in the DoFSpace basis. More...
 
void CASM::set_dof_value (Configuration &config, DoFSpace const &dof_space, Eigen::VectorXd const &normal_coordinate)
 Set config DoF value from a coordinate in the DoFSpace basis. More...
 
Index CASM::get_dof_space_dimension (DoFKey dof_key, xtal::BasicStructure const &prim, std::optional< Eigen::Matrix3l > const &transformation_matrix_to_super=std::nullopt, std::optional< std::set< Index >> const &sites=std::nullopt)
 Return dimension of DoFSpace. More...
 
std::vector< std::string > CASM::make_dof_space_axis_glossary (DoFKey dof_key, xtal::BasicStructure const &prim, std::optional< Eigen::Matrix3l > const &transformation_matrix_to_super=std::nullopt, std::optional< std::set< Index >> const &sites=std::nullopt)
 Make DoFSpace axis glossary. More...
 
void CASM::make_dof_space_axis_info (DoFKey dof_key, xtal::BasicStructure const &prim, std::optional< Eigen::Matrix3l > const &transformation_matrix_to_super, std::optional< std::set< Index >> const &sites, std::vector< std::string > &axis_glossary, std::optional< std::vector< Index >> &axis_site_index, std::optional< std::vector< Index >> &axis_dof_component)
 Make DoFSpace axis glossary, axis site index, and axis dof component. More...
 
DoFSpace CASM::make_dof_space (DoFKey dof_key, ConfigEnumInput const &input_state, std::optional< Eigen::MatrixXd > const &basis=std::nullopt)
 
SymGroupRep const & CASM::make_dof_space_symrep (DoFSpace const &dof_space, SupercellSymInfo const &sym_info, std::vector< PermuteIterator > const &group, MasterSymGroup &symrep_master_group, SymGroupRepID &id)
 Make a SymGroupRep for a DoFSpace. More...
 
VectorSpaceSymReport CASM::vector_space_sym_report (DoFSpace const &dof_space, SupercellSymInfo const &sym_info, std::vector< PermuteIterator > const &group, bool calc_wedges=false)
 Make VectorSpaceSymReport. More...
 
SymRepTools_v2::VectorSpaceSymReport CASM::vector_space_sym_report_v2 (DoFSpace const &dof_space, SupercellSymInfo const &sym_info, std::vector< PermuteIterator > const &group, bool calc_wedges=false)
 Make VectorSpaceSymReport. More...
 
DoFSpace CASM::make_symmetry_adapted_dof_space (DoFSpace const &dof_space, SupercellSymInfo const &sym_info, std::vector< PermuteIterator > const &group, bool calc_wedges, std::optional< VectorSpaceSymReport > &symmetry_report)
 Make DoFSpace with symmetry adapated basis. More...
 
DoFSpace CASM::make_symmetry_adapted_dof_space_v2 (DoFSpace const &dof_space, SupercellSymInfo const &sym_info, std::vector< PermuteIterator > const &group, bool calc_wedges, std::optional< SymRepTools_v2::VectorSpaceSymReport > &symmetry_report)
 Make DoFSpace with symmetry adapated basis. More...
 
DoFSpace CASM::exclude_homogeneous_mode_space (DoFSpace const &dof_space)
 Removes the homogeneous mode space from the DoFSpace basis. More...
 
Eigen::MatrixXd CASM::make_homogeneous_mode_space (DoFSpace const &dof_space)
 Make the homogeneous mode space of a local DoFSpace. More...