CASM
1.1.0
A Clusters Approach to Statistical Mechanics
|
#include <DoFIsEquivalent.hh>
Class for checking equivalence of two DoFSet objects, with respect to symmetry transformations.
DoFSets dofA and dofB are considered equivalent if
Definition at line 27 of file DoFIsEquivalent.hh.
Public Member Functions | |
DoFIsEquivalent (DoFSet const &_dof, double tol=TOL) | |
bool | operator() (DoFSet const &_other) const |
bool | operator() (xtal::SymOp const &_op) const |
returns true if copy_apply(_op,m_dof.basis()) = m_dof.basis()*U More... | |
bool | operator() (xtal::SymOp const &_op, DoFSet const &_other) const |
returns true if copy_apply(_op,m_dof.basis()) = _other.basis()*U More... | |
Eigen::MatrixXd const & | U () const |
Private Member Functions | |
bool | _label_equiv (DoFSet const &_other) const |
returns true if m_dof and _other are same type and same size More... | |
bool | _vector_equiv (Eigen::Ref< const Eigen::MatrixXd > const &_before_basis, Eigen::Ref< const Eigen::MatrixXd > const &_after_basis) const |
Private Attributes | |
DoFSet | m_dof |
double | m_tol |
Eigen::MatrixXd | m_U |
Definition at line 29 of file DoFIsEquivalent.hh.
|
private |
returns true if m_dof and _other are same type and same size
Definition at line 33 of file DoFIsEquivalent.cc.
|
private |
returns true if the matrix equation _before_basis * U = _after_basis has a unique solution U stores solution in m_U
Definition at line 37 of file DoFIsEquivalent.cc.
bool CASM::DoFIsEquivalent::operator() | ( | DoFSet const & | _other | ) | const |
returns true if m_dof and _other have matching labels, and m_dof.basis() = _other.basis()*U
Definition at line 9 of file DoFIsEquivalent.cc.
bool CASM::DoFIsEquivalent::operator() | ( | xtal::SymOp const & | _op | ) | const |
returns true if copy_apply(_op,m_dof.basis()) = m_dof.basis()*U
Definition at line 13 of file DoFIsEquivalent.cc.
bool CASM::DoFIsEquivalent::operator() | ( | xtal::SymOp const & | _op, |
DoFSet const & | _other | ||
) | const |
returns true if copy_apply(_op,m_dof.basis()) = _other.basis()*U
Definition at line 22 of file DoFIsEquivalent.cc.
|
inline |
return transformation matrix U calculated during last successful comparison
Definition at line 44 of file DoFIsEquivalent.hh.
|
private |
Definition at line 56 of file DoFIsEquivalent.hh.
|
private |
Definition at line 58 of file DoFIsEquivalent.hh.
|
mutableprivate |
Definition at line 60 of file DoFIsEquivalent.hh.