CASM  1.1.0
A Clusters Approach to Statistical Mechanics
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules
StrucMapping.hh File Reference

Go to the source code of this file.

Classes

struct  CASM::xtal::LatticeNode
 Class describing the lattice-mapping portion of a particular mapping A general map for child_struc onto parent_struc may require forming a supercell of parent_struc (most commonly) and/or of child_struc. As such, the LatticeNode is specified in terms of superlattices of both parent_struc and child_struc, as well as deformation and rotation information sufficient to fully define the lattice map. More...
 
struct  CASM::xtal::AssignmentNode
 Structure to encode the solution of a constrained atomic assignmnet problem This describes the permutation, translation, and time-reversal of the atoms of a child structure to bring them into registration with the atoms of a parent structure (assuming periodic boundary conditions). Also records the constrained and unconstrained assignment costs. More...
 
struct  CASM::xtal::MappingNode
 
class  CASM::xtal::StrucMapper
 

Namespaces

 CASM
 Main CASM namespace.
 
 CASM::xtal
 
 CASM::xtal::StrucMapping
 

Typedefs

typedef std::vector< std::vector< Index > > CASM::xtal::StrucMapping::PermuteOpVector
 

Functions

double CASM::xtal::StrucMapping::big_inf ()
 Very large value used to denote invalid or impossible mapping. More...
 
double CASM::xtal::StrucMapping::small_inf ()
 use as default value to initialize mapping costs. Does not indicate ivalidity More...
 
bool CASM::xtal::StrucMapping::is_inf (double _val)
 
double CASM::xtal::StrucMapping::atomic_cost_child (const MappingNode &mapped_result, Index Nsites)
 Calculate the basis cost function of a MappingNode as the normalized mean-square displacement of its atoms The displacement vectors are deformed to the CHILD structure's coordinate system before calculating. More...
 
double CASM::xtal::StrucMapping::atomic_cost_parent (const MappingNode &mapped_result, Index Nsites)
 Calculate the basis cost function of a MappingNode as the normalized mean-square displacement of its atoms The displacement vectors are deformed to the PARENT structure's coordinate system before calculating. More...
 
double CASM::xtal::StrucMapping::atomic_cost (const MappingNode &mapped_config, Index Nsites)
 Calculate the basis cost function of a MappingNode as the average of atomic_cost_child and atomic_cost_parent. More...
 
double CASM::xtal::StrucMapping::atomic_cost (const MappingNode &basic_mapping_node, SymOpVector &factor_group, const std::vector< Eigen::PermutationMatrix< Eigen::Dynamic, Eigen::Dynamic, Index >> &permutation_group, Index Nsites)
 Calculate the symmetry breaking atomic cost of a MappingNode. More...
 
bool CASM::xtal::less (LatticeNode const &A, LatticeNode const &B, double cost_tol)
 Compare two LatticeMap objects, based on their mapping cost first, followed by PrimGrid transformation matrices. More...
 
bool CASM::xtal::identical (LatticeNode const &A, LatticeNode const &B, double cost_tol)
 returns true if cost values and parent/child supercell transformations are same for A and B More...
 
bool CASM::xtal::identical (AssignmentNode const &A, AssignmentNode const &B)
 true if time_reversal and translation are identical More...
 
Eigen::Matrix3d const & CASM::xtal::get_matrix (MappingNode const &_node)
 External accessor for isometry, to provide xtal::SymOp adaptability. More...
 
Eigen::Vector3d const & CASM::xtal::get_translation (MappingNode const &_node)
 External accessor for translation, to provide xtal::SymOp adaptability. More...
 
bool CASM::xtal::get_time_reversal (MappingNode const &_node)
 External accessor for time_reversal, to provide xtal::SymOp adaptability. More...