CASM  1.1.0
A Clusters Approach to Statistical Mechanics
StrucMapping.cc File Reference
#include "casm/crystallography/StrucMapping.hh"
#include "casm/container/algorithm.hh"
#include "casm/crystallography/CanonicalForm.hh"
#include "casm/crystallography/Coordinate.hh"
#include "casm/crystallography/Lattice.hh"
#include "casm/crystallography/LatticeMap.hh"
#include "casm/crystallography/Strain.hh"
#include "casm/crystallography/StrucMapCalculatorInterface.hh"
#include "casm/crystallography/SuperlatticeEnumerator.hh"
#include "casm/crystallography/SymTools.hh"
#include "casm/crystallography/io/VaspIO.hh"
#include "casm/misc/CASM_Eigen_math.hh"
#include "casm/external/Eigen/src/Core/Map.h"
#include "casm/external/Eigen/src/Core/PermutationMatrix.h"
#include "casm/external/Eigen/src/Core/util/Constants.h"
#include "casm/external/Eigen/src/Core/util/Meta.h"

Go to the source code of this file.

Namespaces

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

Functions

static bool CASM::xtal::Local::lex_lt (Eigen::Matrix< long, 3, 3 > const &A, Eigen::Matrix< long, 3, 3 > const &B)
 
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...
 
template<typename OutputIterator >
static bool CASM::xtal::Local::initial_atomic_maps (SimpleStructure child_struc, MappingNode const &seed, StrucMapCalculatorInterface const &calculator, double max_cost, bool const &symmetrize_atomic_cost, OutputIterator it)
 
template<typename OutputIterator >
static void CASM::xtal::Local::partition_node (MappingNode const &_node, StrucMapCalculatorInterface const &_calculator, SimpleStructure child_struc, bool const &symmetrize_atomic_cost, OutputIterator it)
 
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...