CASM  1.1.0
A Clusters Approach to Statistical Mechanics
CASM::xtal::StrucMapping Namespace Reference

Typedefs

using FixedSpecies = std::map< std::string, Index >
 
using AllowedSpecies = std::vector< std::vector< std::string > >
 
typedef std::vector< std::vector< Index > > PermuteOpVector
 

Functions

double big_inf ()
 Very large value used to denote invalid or impossible mapping. More...
 
double small_inf ()
 use as default value to initialize mapping costs. Does not indicate ivalidity More...
 
bool is_inf (double _val)
 
double 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 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 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 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...
 

Typedef Documentation

◆ AllowedSpecies

using CASM::xtal::StrucMapping::AllowedSpecies = typedef std::vector<std::vector<std::string> >

Definition at line 30 of file StrucMapCalculatorInterface.hh.

◆ FixedSpecies

using CASM::xtal::StrucMapping::FixedSpecies = typedef std::map<std::string, Index>

Definition at line 27 of file StrucMapCalculatorInterface.hh.

◆ PermuteOpVector

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

Definition at line 33 of file StrucMapping.hh.

Function Documentation

◆ atomic_cost() [1/2]

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.

Definition at line 67 of file StrucMapping.cc.

◆ atomic_cost() [2/2]

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.

Definition at line 59 of file StrucMapping.cc.

◆ atomic_cost_child()

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.

Parameters
mapped_resulta proposed mapping; both lattice_node and atomic_node of mapped_result must be initialized
Nsitesnumber of atoms (excluding vacancies) in the relaxed structure, for proper normalization result is dimensionless, having been normalized by the squared radius of a sphere having the same atomic volume of CHILD structure

Definition at line 33 of file StrucMapping.cc.

◆ atomic_cost_parent()

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.

Parameters
mapped_resulta proposed mapping; both lattice_node and atomic_node of mapped_result must be initialized
Nsitesnumber of atoms (excluding vacancies) in the relaxed structure, for proper normalization result is dimensionless, having been normalized by the squared radius of a sphere having the same atomic volume of PARENT structure

Definition at line 47 of file StrucMapping.cc.

◆ big_inf()

double CASM::xtal::StrucMapping::big_inf ( )
inline

Very large value used to denote invalid or impossible mapping.

Definition at line 35 of file StrucMapping.hh.

◆ is_inf()

bool CASM::xtal::StrucMapping::is_inf ( double  _val)
inline

Definition at line 41 of file StrucMapping.hh.

◆ small_inf()

double CASM::xtal::StrucMapping::small_inf ( )
inline

use as default value to initialize mapping costs. Does not indicate ivalidity

Definition at line 39 of file StrucMapping.hh.