CASM  1.1.0
A Clusters Approach to Statistical Mechanics
CASM::SymRepTools_v2::IrrepDecomposition Struct Reference

#include <IrrepDecomposition.hh>

Detailed Description

Performs irreducible subspace construction and symmetrization.

Definition at line 68 of file IrrepDecomposition.hh.

Public Member Functions

 IrrepDecomposition (MatrixRep const &_fullspace_rep, GroupIndices const &_head_group, Eigen::MatrixXd const &_init_subspace, GroupIndicesOrbitVector const &_cyclic_subgroups, GroupIndicesOrbitVector const &_all_subgroups, bool allow_complex)
 IrrepDecomposition constructor. More...
 

Public Attributes

MatrixRep fullspace_rep
 
GroupIndices head_group
 Group (as indices into fullspace_rep) used to find irreps. More...
 
GroupIndicesOrbitVector cyclic_subgroups
 
GroupIndicesOrbitVector all_subgroups
 
Eigen::MatrixXd subspace
 
std::vector< IrrepInfoirreps
 
Eigen::MatrixXd symmetry_adapted_subspace
 

Constructor & Destructor Documentation

◆ IrrepDecomposition()

CASM::SymRepTools_v2::IrrepDecomposition::IrrepDecomposition ( MatrixRep const &  _fullspace_rep,
GroupIndices const &  _head_group,
Eigen::MatrixXd const &  init_subspace,
GroupIndicesOrbitVector const &  _cyclic_subgroups,
GroupIndicesOrbitVector const &  _all_subgroups,
bool  allow_complex 
)

IrrepDecomposition constructor.

IrrepDecomposition constructor

Parameters
repFull space matrix representation (rep[0].rows() == init_subspace.rows())
head_groupGroup for which the irreps are to be found
init_subspaceInput subspace in which irreps are to be found. Will be expanded (column space increased) by application of rep and orthogonalization to form an invariant subspace (i.e. column space dimension is not increased by application of elements in head_group)
_cyclic_subgroupsCyclic subgroups of head_group. Cyclic subgropus are those formed by repeated application of a single element. Used for symmetrization of the irrep subspaces.
_all_subgroupsAll subgroups of head_group. Used for symmetrization of the irrep subspaces if symmetrization using _cyclic_subgroups fails.
allow_complexIf true, all irreps may be complex-valued, if false, complex irreps are combined to form real representations

Definition at line 78 of file IrrepDecomposition.cc.

Member Data Documentation

◆ all_subgroups

GroupIndicesOrbitVector CASM::SymRepTools_v2::IrrepDecomposition::all_subgroups

Definition at line 90 of file IrrepDecomposition.hh.

◆ cyclic_subgroups

GroupIndicesOrbitVector CASM::SymRepTools_v2::IrrepDecomposition::cyclic_subgroups

Definition at line 87 of file IrrepDecomposition.hh.

◆ fullspace_rep

MatrixRep CASM::SymRepTools_v2::IrrepDecomposition::fullspace_rep

Full space matrix representation of head_group

fullspace_rep[i].rows() == full space dimension fullspace_rep[i].cols() == full space dimension

Definition at line 81 of file IrrepDecomposition.hh.

◆ head_group

GroupIndices CASM::SymRepTools_v2::IrrepDecomposition::head_group

Group (as indices into fullspace_rep) used to find irreps.

Definition at line 84 of file IrrepDecomposition.hh.

◆ irreps

std::vector<IrrepInfo> CASM::SymRepTools_v2::IrrepDecomposition::irreps

Irreducible spaces, symmetrized using make_irrep_special_directions and make_irrep_symmetrizer_matrix to align the irreducible space bases along high symmetry directions. Irreps are found in the subspace and then converted to full space dimension (meaning irrep[i].vector_dim() == full space dimension and sum_i irrep[i].irrep_dim() == subspace.cols()).

Definition at line 106 of file IrrepDecomposition.hh.

◆ subspace

Eigen::MatrixXd CASM::SymRepTools_v2::IrrepDecomposition::subspace

Space in which to find irreducible subspaces. This space is formed by expanding init_subspace, if necessary, by application of rep and orthogonalization to form an invariant subspace (i.e. column space does not change upon application of elements in head_group)

subspace.rows() == full space dimension subspace.cols() == dimension of invariant subspace

Definition at line 99 of file IrrepDecomposition.hh.

◆ symmetry_adapted_subspace

Eigen::MatrixXd CASM::SymRepTools_v2::IrrepDecomposition::symmetry_adapted_subspace

Symmetry adapted subspace

symmetry_adapted_subspace.rows() == full space dimension symmetry_adapted_subspace.cols() == subspace.cols()

Definition at line 112 of file IrrepDecomposition.hh.


The documentation for this struct was generated from the following files: