|
CASM
1.1.0
A Clusters Approach to Statistical Mechanics
|
Namespaces | |
| IrrepDecompositionImpl | |
| IrrepWedgeImpl | |
Classes | |
| struct | IrrepInfo |
| struct | IrrepDecomposition |
| Performs irreducible subspace construction and symmetrization. More... | |
| struct | IrrepWedge |
| An irreducible wedge in an irreducible vector space. More... | |
| class | SubWedge |
| struct | _RealType |
| struct | _RealType< std::vector< T > > |
| struct | _RealType< Eigen::Matrix< Scalar, RowsAtCompileTime, ColsAtCompileTime > > |
| struct | VectorSpaceSymReport |
| Summary of data associated with the action of a symmetry group on a vector space. More... | |
| class | VectorInvariants |
| Used for generating SimpleOrbit of high symmetry direction vectors. More... | |
| struct | VectorSymCompare |
| Used for constructing SimpleOrbit of high symmetry direction vectors. More... | |
Typedefs | |
| typedef std::vector< Eigen::MatrixXd > | MatrixRep |
| typedef std::set< Index > | GroupIndices |
| typedef std::set< GroupIndices > | GroupIndicesOrbit |
| typedef std::vector< GroupIndicesOrbit > | GroupIndicesOrbitVector |
| template<typename T > | |
| using | _Real = typename _RealType< T >::Type |
Functions | |
| IrrepInfo | make_dummy_irrep_info (Eigen::MatrixXcd const &trans_mat) |
| Construct a "dummy" IrrepInfo with user specified transformtion matrix. More... | |
| IrrepInfo | make_dummy_irrep_info (Eigen::MatrixXd const &trans_mat) |
| Construct a "dummy" IrrepInfo with user specified transformtion matrix. More... | |
| Eigen::MatrixXd | full_trans_mat (std::vector< IrrepInfo > const &irreps) |
| Assumes that irreps are real, and concatenates their individual trans_mats to form larger trans_mat. More... | |
| IrrepWedge | make_dummy_irrep_wedge (Eigen::MatrixXd const &axes) |
| Construct a "dummy" IrrepWedge with user specified axes. More... | |
| SubWedge | make_dummy_subwedge (Eigen::MatrixXd const &axes) |
| Makes a "dummy" SubWedge from a single "dummy" IrrepWedge with given axes. More... | |
| std::vector< IrrepWedge > | make_irrep_wedges (IrrepDecomposition const &irrep_decomposition) |
| Make IrrepWedges from an IrrepDecomposition. More... | |
| std::vector< SubWedge > | make_symrep_subwedges (IrrepDecomposition const &irrep_decomposition) |
| Find full irreducible wedge of a group-represented vector space, as a vector of SubWedges, from an IrrepDecomposition. More... | |
| multivector< Eigen::VectorXcd >::X< 2 > | make_irrep_special_directions (MatrixRep const &rep, GroupIndices const &head_group, Eigen::MatrixXcd const &irrep_subspace, double vec_compare_tol, GroupIndicesOrbitVector const &cyclic_subgroups, GroupIndicesOrbitVector const &all_subgroups, bool use_all_subgroups=false) |
| Find high-symmetry directions in a irreducible space. More... | |
| Eigen::MatrixXcd | make_irrep_symmetrizer_matrix (multivector< Eigen::VectorXcd >::X< 2 > const &irrep_special_directions, Eigen::MatrixXcd const &irrep_subspace, double vec_compare_tol) |
| Make an irreducible space symmetrizer matrix using special directions. More... | |
| template<typename Derived > | |
| _Real< Derived > | to_real (Eigen::MatrixBase< Derived > const &mat) |
| template<typename T > | |
| _Real< std::vector< T > > | to_real (std::vector< T > const &vec) |
| VectorSpaceSymReport | vector_space_sym_report (IrrepDecomposition const &irrep_decomposition, bool calc_wedges=false) |
| Construct VectorSpaceSymReport. More... | |
| Eigen::MatrixXcd | vector_space_prepare (Eigen::MatrixXcd const &vector_space, double tol) |
| Vector space preparation for comparison. More... | |
| Eigen::MatrixXd | vector_space_prepare (Eigen::MatrixXd const &vector_space, double tol) |
| Vector space preparation for comparison. More... | |
| using CASM::SymRepTools_v2::_Real = typedef typename _RealType<T>::Type |
Definition at line 16 of file to_real.hh.
| typedef std::set< Index > CASM::SymRepTools_v2::GroupIndices |
Definition at line 15 of file IrrepDecomposition.hh.
Definition at line 16 of file IrrepDecomposition.hh.
| typedef std::vector< GroupIndicesOrbit > CASM::SymRepTools_v2::GroupIndicesOrbitVector |
Definition at line 17 of file IrrepDecomposition.hh.
| typedef std::vector< Eigen::MatrixXd > CASM::SymRepTools_v2::MatrixRep |
Definition at line 14 of file IrrepDecomposition.hh.
| Eigen::MatrixXd CASM::SymRepTools_v2::full_trans_mat | ( | std::vector< IrrepInfo > const & | irreps | ) |
Assumes that irreps are real, and concatenates their individual trans_mats to form larger trans_mat.
Definition at line 43 of file IrrepDecomposition.cc.
| IrrepInfo CASM::SymRepTools_v2::make_dummy_irrep_info | ( | Eigen::MatrixXcd const & | trans_mat | ) |
Construct a "dummy" IrrepInfo with user specified transformtion matrix.
Construct a "dummy" IrrepInfo with user specified transformtion matrix
The "dummy" IrrepInfo is constructed with specified transformtion matrix and character vector of [(dim,0)] where 'dim' is the dimension of irrep (number of rows of trans_mat)
Definition at line 24 of file IrrepDecomposition.cc.
| IrrepInfo CASM::SymRepTools_v2::make_dummy_irrep_info | ( | Eigen::MatrixXd const & | trans_mat | ) |
Construct a "dummy" IrrepInfo with user specified transformtion matrix.
Construct a "dummy" IrrepInfo with user specified transformtion matrix
The "dummy" IrrepInfo is constructed with specified transformtion matrix and character vector of [(dim,0)] where 'dim' is the dimension of irrep (number of rows of trans_mat)
Definition at line 35 of file IrrepDecomposition.cc.
| IrrepWedge CASM::SymRepTools_v2::make_dummy_irrep_wedge | ( | Eigen::MatrixXd const & | axes | ) |
Construct a "dummy" IrrepWedge with user specified axes.
Construct a "dummy" IrrepWedge with user specified axes
Note:
Definition at line 67 of file IrrepWedge.cc.
| SubWedge CASM::SymRepTools_v2::make_dummy_subwedge | ( | Eigen::MatrixXd const & | axes | ) |
Makes a "dummy" SubWedge from a single "dummy" IrrepWedge with given axes.
Makes a "dummy" SubWedge from a single "dummy" IrrepWedge with given axes
Note:
Definition at line 101 of file IrrepWedge.cc.
| multivector< Eigen::VectorXcd >::X< 2 > CASM::SymRepTools_v2::make_irrep_special_directions | ( | MatrixRep const & | rep, |
| GroupIndices const & | head_group, | ||
| Eigen::MatrixXcd const & | irrep_subspace, | ||
| double | vec_compare_tol, | ||
| GroupIndicesOrbitVector const & | cyclic_subgroups, | ||
| GroupIndicesOrbitVector const & | all_subgroups, | ||
| bool | use_all_subgroups | ||
| ) |
Find high-symmetry directions in a irreducible space.
Find high-symmetry directions in a irreducible space
| rep | Matrix representation of head_group, this defines group action on the underlying vector space |
| head_group | Group for which the irreps are to be found |
| subspace | A column vector matrix representing a basis of the irreducible space in which high symmetry directions will be found. The number of rows must equal rep.dim(), the number of columns is equal to the dimension of the irreducible space. |
| vec_compare_tol | Tolerance for elementwise floating-point comparisons of vectors |
| all_subgroups | Denotes whether all subgroups of head_group should be used for symmetry analysis (if true), or only cyclic subgroups (if false). Cyclic subgroups are those found by taking a group element and multiplying it by itself until a group is generated. |
result[i] is an orbit of symmetrically equivalent directions, and the value result[i][j] is an individual direction (Eigen::VectorXcd). Direction vectors are normalized to unit length. The total set of all directions is guaranteed to span the space.| if | rep is not an irreducible representation |
Definition at line 39 of file Symmetrizer.cc.
| Eigen::MatrixXcd CASM::SymRepTools_v2::make_irrep_symmetrizer_matrix | ( | multivector< Eigen::VectorXcd >::X< 2 > const & | irrep_special_directions, |
| Eigen::MatrixXcd const & | irrep_subspace, | ||
| double | vec_compare_tol | ||
| ) |
Make an irreducible space symmetrizer matrix using special directions.
Definition at line 101 of file Symmetrizer.cc.
| std::vector< IrrepWedge > CASM::SymRepTools_v2::make_irrep_wedges | ( | IrrepDecomposition const & | irrep_decomposition | ) |
Make IrrepWedges from an IrrepDecomposition.
Make IrrepWedges from an IrrepDecomposition
Definition at line 109 of file IrrepWedge.cc.
| std::vector< SubWedge > CASM::SymRepTools_v2::make_symrep_subwedges | ( | IrrepDecomposition const & | irrep_decomposition | ) |
Find full irreducible wedge of a group-represented vector space, as a vector of SubWedges, from an IrrepDecomposition.
Definition at line 172 of file IrrepWedge.cc.
| _Real<Derived> CASM::SymRepTools_v2::to_real | ( | Eigen::MatrixBase< Derived > const & | mat | ) |
Definition at line 29 of file to_real.hh.
| _Real<std::vector<T> > CASM::SymRepTools_v2::to_real | ( | std::vector< T > const & | vec | ) |
Definition at line 34 of file to_real.hh.
| Eigen::MatrixXcd CASM::SymRepTools_v2::vector_space_prepare | ( | Eigen::MatrixXcd const & | vector_space, |
| double | tol | ||
| ) |
Vector space preparation for comparison.
Vector space preparation for comparison
Definition at line 109 of file VectorSymCompare_v2.cc.
| Eigen::MatrixXd CASM::SymRepTools_v2::vector_space_prepare | ( | Eigen::MatrixXd const & | vector_space, |
| double | tol | ||
| ) |
Vector space preparation for comparison.
Vector space preparation for comparison
Definition at line 120 of file VectorSymCompare_v2.cc.
| VectorSpaceSymReport CASM::SymRepTools_v2::vector_space_sym_report | ( | IrrepDecomposition const & | irrep_decomposition, |
| bool | calc_wedges | ||
| ) |
Construct VectorSpaceSymReport.
Construct VectorSpaceSymReport
| irrep_decomposition | An IrrepDecomposition |
| calc_wedges | If true, 'irreducible_wedge' is constructed. If false, 'irreducible_wedge' is empty. |
Definition at line 12 of file VectorSpaceSymReport.cc.