CASM
AClustersApproachtoStatisticalMechanics
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules
CASM::LatticeIsEquivalent Class Reference

#include <LatticeIsEquivalent.hh>

Detailed Description

Putting all the Lattice comparisons in one place.

Definition at line 14 of file LatticeIsEquivalent.hh.

Public Member Functions

 LatticeIsEquivalent (const Lattice &lat, double _tol=TOL)
 
bool operator() (const Lattice &B) const
 Is this lattice the same, even if they have different lattice vectors. More...
 
bool operator() (const SymOp &op) const
 Is this lattice equivalent to apply(op, *this) More...
 
bool operator() (const Eigen::Matrix3d &cart_op) const
 Is this lattice equivalent to apply(op, *this) More...
 
bool operator() (const Eigen::Matrix3i &tfrac_op) const
 Is this lattice equivalent to apply(op, *this) More...
 
const Latticelat () const
 
double map_error () const
 Return the mapping error, calculated after performing an equivalence check. More...
 
Eigen::Matrix3d cart_op () const
 Return the cartesian SymOp matrix, stored after performing an equivalence check. More...
 
SymOp sym_op () const
 Return the SymOp, constructed from the map_error and cart_op stored after performing an equivalence check. More...
 

Private Member Functions

bool _check (const Eigen::Matrix3d &tfrac_op) const
 Find the effect of applying symmetry to the lattice vectors. More...
 
const Eigen::Matrix3d & lat_column_mat () const
 
const Eigen::Matrix3d & inv_lat_column_mat () const
 

Private Attributes

Lattice m_lat
 
double m_tol
 
double m_map_error
 
Eigen::Matrix3d m_cart_op
 

Constructor & Destructor Documentation

CASM::LatticeIsEquivalent::LatticeIsEquivalent ( const Lattice lat,
double  _tol = TOL 
)

Definition at line 7 of file LatticeIsEquivalent.cc.

Member Function Documentation

bool CASM::LatticeIsEquivalent::_check ( const Eigen::Matrix3d &  tfrac_op) const
private

Find the effect of applying symmetry to the lattice vectors.

Definition at line 71 of file LatticeIsEquivalent.cc.

Eigen::Matrix3d CASM::LatticeIsEquivalent::cart_op ( ) const

Return the cartesian SymOp matrix, stored after performing an equivalence check.

Definition at line 62 of file LatticeIsEquivalent.cc.

const Eigen::Matrix3d & CASM::LatticeIsEquivalent::inv_lat_column_mat ( ) const
private

Definition at line 100 of file LatticeIsEquivalent.cc.

const Lattice & CASM::LatticeIsEquivalent::lat ( ) const

Definition at line 54 of file LatticeIsEquivalent.cc.

const Eigen::Matrix3d & CASM::LatticeIsEquivalent::lat_column_mat ( ) const
private

Definition at line 96 of file LatticeIsEquivalent.cc.

double CASM::LatticeIsEquivalent::map_error ( ) const

Return the mapping error, calculated after performing an equivalence check.

Definition at line 58 of file LatticeIsEquivalent.cc.

bool CASM::LatticeIsEquivalent::operator() ( const Lattice B) const

Is this lattice the same, even if they have different lattice vectors.

Definition at line 12 of file LatticeIsEquivalent.cc.

bool CASM::LatticeIsEquivalent::operator() ( const SymOp op) const

Is this lattice equivalent to apply(op, *this)

Definition at line 18 of file LatticeIsEquivalent.cc.

bool CASM::LatticeIsEquivalent::operator() ( const Eigen::Matrix3d &  cart_op) const

Is this lattice equivalent to apply(op, *this)

Definition at line 23 of file LatticeIsEquivalent.cc.

bool CASM::LatticeIsEquivalent::operator() ( const Eigen::Matrix3i &  tfrac_op) const

Is this lattice equivalent to apply(op, *this)

Definition at line 44 of file LatticeIsEquivalent.cc.

SymOp CASM::LatticeIsEquivalent::sym_op ( ) const

Return the SymOp, constructed from the map_error and cart_op stored after performing an equivalence check.

Definition at line 66 of file LatticeIsEquivalent.cc.

Member Data Documentation

Eigen::Matrix3d CASM::LatticeIsEquivalent::m_cart_op
mutableprivate

Definition at line 56 of file LatticeIsEquivalent.hh.

Lattice CASM::LatticeIsEquivalent::m_lat
private

Definition at line 53 of file LatticeIsEquivalent.hh.

double CASM::LatticeIsEquivalent::m_map_error
mutableprivate

Definition at line 55 of file LatticeIsEquivalent.hh.

double CASM::LatticeIsEquivalent::m_tol
private

Definition at line 54 of file LatticeIsEquivalent.hh.


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