CASM  1.1.0
A Clusters Approach to Statistical Mechanics
SymType.cc
Go to the documentation of this file.
2 
5 
6 namespace CASM {
7 namespace xtal {
8 SymOp operator*(const SymOp &LHS, const SymOp &RHS) {
9  return SymOp(LHS.matrix * RHS.matrix,
10  LHS.translation + LHS.matrix * RHS.translation,
12  RHS.is_time_reversal_active); // This is an XOR operation
13 }
14 
15 //**********************************************************************************//
16 
17 const SymOpMatrixType &get_matrix(const SymOp &op) { return op.matrix; }
18 
20  return op.translation;
21 }
22 
24  return op.is_time_reversal_active;
25 }
26 
27 } // namespace xtal
28 } // namespace CASM
Coordinate operator*(const SymOp &LHS, const Coordinate &RHS)
Definition: Coordinate.cc:329
Eigen::Vector3d const & get_translation(MappingNode const &_node)
External accessor for translation, to provide xtal::SymOp adaptability.
bool SymOpTimeReversalType
Definition: SymType.hh:17
bool get_time_reversal(MappingNode const &_node)
External accessor for time_reversal, to provide xtal::SymOp adaptability.
Eigen::Matrix3d const & get_matrix(MappingNode const &_node)
External accessor for isometry, to provide xtal::SymOp adaptability.
Eigen::Matrix3d SymOpMatrixType
Definition: SymType.hh:15
Eigen::Vector3d SymOpTranslationType
Definition: SymType.hh:16
Main CASM namespace.
Definition: APICommand.hh:8
SymOpMatrixType matrix
Definition: SymType.hh:47
SymOpTranslationType translation
Definition: SymType.hh:48
SymOpTimeReversalType is_time_reversal_active
Definition: SymType.hh:49