CASM  1.1.0
A Clusters Approach to Statistical Mechanics
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...