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

#include <ConfigDoFIsEquivalent.hh>

+ Inheritance diagram for CASM::DoFIsEquivalent::Strain:

Detailed Description

Compare strain DoF

  • Compares F.t * F, unrolled, lexicographically

Definition at line 304 of file ConfigDoFIsEquivalent.hh.

Public Member Functions

 Strain (const ConfigDoF &_configdof, double _tol)
 
 Strain (const Configuration &_config, double _tol)
 
bool operator() (const ConfigDoF &other) const override
 Return config == other, store config < other. More...
 
bool operator() (const PermuteIterator &A) const override
 Return config == A*config, store config < A*config. More...
 
bool operator() (const PermuteIterator &A, const PermuteIterator &B) const override
 Return A*config == B*config, store A*config < B*config. More...
 
std::unique_ptr< Strainclone () const
 
const ConfigDoFconfigdof () const
 
Index size () const
 
bool is_less () const
 Returns less than comparison. More...
 
bool operator() (const Configuration &other) const
 Return config == other. More...
 

Protected Member Functions

template<typename T >
bool _check (const T &A, const T &B) const
 

Protected Attributes

bool m_less
 

Private Member Functions

Strain_clone () const override
 
void _update_A (const PermuteIterator &A) const
 
void _update_B (const PermuteIterator &B) const
 
double _def_tensor (Index i, Index j) const
 
double _def_tensor_A (Index i, Index j) const
 
double _def_tensor_B (Index i, Index j) const
 
template<typename F , typename G >
bool _for_each (F f, G g) const
 

Private Attributes

Eigen::MatrixXd m_def_tensor
 config().deformation().transpose()*config().deformation() More...
 
Index m_fg_index_A
 
Eigen::MatrixXd m_def_tensor_A
 
Index m_fg_index_B
 
Eigen::MatrixXd m_def_tensor_B
 

Constructor & Destructor Documentation

CASM::DoFIsEquivalent::Strain::Strain ( const ConfigDoF _configdof,
double  _tol 
)
inline

Definition at line 308 of file ConfigDoFIsEquivalent.hh.

CASM::DoFIsEquivalent::Strain::Strain ( const Configuration _config,
double  _tol 
)
inline

Definition at line 314 of file ConfigDoFIsEquivalent.hh.

Member Function Documentation

template<typename T >
bool CASM::DoFIsEquivalent::FloatIsEquivalent::_check ( const T &  A,
const T &  B 
) const
inlineprotectedinherited

Definition at line 110 of file ConfigDoFIsEquivalent.hh.

Strain* CASM::DoFIsEquivalent::Strain::_clone ( ) const
inlineoverrideprivatevirtual
double CASM::DoFIsEquivalent::Strain::_def_tensor ( Index  i,
Index  j 
) const
inlineprivate

Definition at line 378 of file ConfigDoFIsEquivalent.hh.

double CASM::DoFIsEquivalent::Strain::_def_tensor_A ( Index  i,
Index  j 
) const
inlineprivate

Definition at line 382 of file ConfigDoFIsEquivalent.hh.

double CASM::DoFIsEquivalent::Strain::_def_tensor_B ( Index  i,
Index  j 
) const
inlineprivate

Definition at line 386 of file ConfigDoFIsEquivalent.hh.

template<typename F , typename G >
bool CASM::DoFIsEquivalent::Strain::_for_each ( f,
g 
) const
inlineprivate

Definition at line 391 of file ConfigDoFIsEquivalent.hh.

void CASM::DoFIsEquivalent::Strain::_update_A ( const PermuteIterator A) const
inlineprivate

Definition at line 364 of file ConfigDoFIsEquivalent.hh.

void CASM::DoFIsEquivalent::Strain::_update_B ( const PermuteIterator B) const
inlineprivate

Definition at line 371 of file ConfigDoFIsEquivalent.hh.

std::unique_ptr<Strain> CASM::DoFIsEquivalent::Strain::clone ( ) const
inline

Definition at line 354 of file ConfigDoFIsEquivalent.hh.

const ConfigDoF& CASM::DoFIsEquivalent::ConfigDoFIsEquivalentBase::configdof ( ) const
inlineinherited

Definition at line 30 of file ConfigDoFIsEquivalent.hh.

bool CASM::DoFIsEquivalent::ConfigDoFIsEquivalentBase::is_less ( ) const
inlineinherited

Returns less than comparison.

  • Only valid after call operator returns false

Definition at line 41 of file ConfigDoFIsEquivalent.hh.

bool CASM::DoFIsEquivalent::ConfigDoFIsEquivalentBase::operator() ( const Configuration other) const
inlineinherited

Return config == other.

Definition at line 46 of file ConfigDoFIsEquivalent.hh.

bool CASM::DoFIsEquivalent::Strain::operator() ( const ConfigDoF other) const
inlineoverridevirtual

Return config == other, store config < other.

Implements CASM::DoFIsEquivalent::ConfigDoFIsEquivalentBase.

Definition at line 318 of file ConfigDoFIsEquivalent.hh.

bool CASM::DoFIsEquivalent::Strain::operator() ( const PermuteIterator A) const
inlineoverridevirtual

Return config == A*config, store config < A*config.

Implements CASM::DoFIsEquivalent::ConfigDoFIsEquivalentBase.

Definition at line 330 of file ConfigDoFIsEquivalent.hh.

bool CASM::DoFIsEquivalent::Strain::operator() ( const PermuteIterator A,
const PermuteIterator B 
) const
inlineoverridevirtual

Return A*config == B*config, store A*config < B*config.

Implements CASM::DoFIsEquivalent::ConfigDoFIsEquivalentBase.

Definition at line 342 of file ConfigDoFIsEquivalent.hh.

Index CASM::DoFIsEquivalent::ConfigDoFIsEquivalentBase::size ( ) const
inlineinherited

Definition at line 34 of file ConfigDoFIsEquivalent.hh.

Member Data Documentation

Eigen::MatrixXd CASM::DoFIsEquivalent::Strain::m_def_tensor
mutableprivate

config().deformation().transpose()*config().deformation()

Definition at line 404 of file ConfigDoFIsEquivalent.hh.

Eigen::MatrixXd CASM::DoFIsEquivalent::Strain::m_def_tensor_A
mutableprivate

Definition at line 407 of file ConfigDoFIsEquivalent.hh.

Eigen::MatrixXd CASM::DoFIsEquivalent::Strain::m_def_tensor_B
mutableprivate

Definition at line 410 of file ConfigDoFIsEquivalent.hh.

Index CASM::DoFIsEquivalent::Strain::m_fg_index_A
mutableprivate

Definition at line 406 of file ConfigDoFIsEquivalent.hh.

Index CASM::DoFIsEquivalent::Strain::m_fg_index_B
mutableprivate

Definition at line 409 of file ConfigDoFIsEquivalent.hh.

bool CASM::DoFIsEquivalent::ConfigDoFIsEquivalentBase::m_less
mutableprotectedinherited

Definition at line 65 of file ConfigDoFIsEquivalent.hh.


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