CASM  1.1.0
A Clusters Approach to Statistical Mechanics
CASM::Local Namespace Reference

Classes

struct  IrrepCompare
 
struct  _RealType
 
struct  _RealType< std::vector< T > >
 
struct  _RealType< Eigen::Matrix< Scalar, RowsAtCompileTime, ColsAtCompileTime > >
 

Typedefs

template<typename T >
using _Real = typename _RealType< T >::Type
 

Functions

static bool _is_vacancy (const std::string &name)
 A vacancy is any Specie/Molecule with (name == "VA" || name == "va" || name == "Va") More...
 
static int _permute_dist (MappingNode::MoleculeMap const &_perm, MappingNode const &_node)
 
template<typename IterType >
static IterType _strictest_equivalent (IterType begin, IterType end, MappingNode const &_node)
 Find symop (as PermuteIterator) that gives the most 'faithful' equivalent mapping This means that (1) the site permutation is as close to identity as possible (i.e., maximal character) (2) ties at (1) are broken by ensuring _node.isometry is proper and close to zero rotation (i.e., maximal character*determinant) (3) if (1) and (2) are ties, then we minimize _node.translation.norm() More...
 
static std::vector< Eigen::VectorXi > _sub_extremes (std::set< Index > const &subcomponents, std::map< std::set< Index >, Index > const &sublats, Index dim)
 
static std::map< std::set< Index >, std::map< std::set< Index >, Index > > _chemical_subsystems (ParamComposition::AllowedOccupants const &_allowed_occs)
 
static std::map< std::string, AnisoValTraits > & traits_map ()
 
static void register_traits (AnisoValTraits new_traits)
 
static int initialize ()
 
static AnisoValTraits const & traits (std::string const &name)
 
static std::string _resolve_properties_path (std::string pos_path, PrimClex const &_pclex)
 Return path to properties.calc.json that will be imported checking a couple possible locations relative to pos_path. More...
 
MappedProperties make_mapped_properties (SimpleStructure const &simple_structure, std::set< std::string > const &dof_managed_properties, double lattice_deformation_cost, double atomic_deformation_cost, double total_cost)
 
static MappedProperties _make_mapped_properties (MappingNode const &_node, ConfigMapperResult::Individual const &_map)
 
static std::vector< Index_number_of_operation_types (SymGroup const &group)
 
static std::map< std::string, std::string > _centric_point_group_info (std::vector< Index > const &op_types)
 
std::map< std::string, std::string > _acentric_point_group_info (std::vector< Index > const &op_types)
 
static std::map< std::string, std::string > _nonmagnetic_point_group_info (SymGroup const &g)
 
template<typename Derived >
_Real< Derived > _real (Eigen::MatrixBase< Derived > const &mat)
 
template<typename T >
_Real< std::vector< T > > _real (std::vector< T > const &vec)
 
static Eigen::MatrixXd _block_shape_matrix (SymGroupRep const &_rep, SymGroup const &head_group)
 Matrix such that result(i,j) is sum of squares over 'p' of op_rep[p].matrix(i,j). 'p' only spans operations in head_group The resulting matrix reveals the block_diagonalization of SymGroupRep _rep for the subset of operations contained in head_group. More...
 
static Eigen::MatrixXcd _irrep_symmetrizer_from_directions (multivector< Eigen::VectorXcd >::X< 2 > const &special_directions, Eigen::Ref< const Eigen::MatrixXcd > const &_subspace, double vec_compare_tol)
 
static SymRepTools::IrrepWedge _wedge_from_pseudo_irrep (SymRepTools::IrrepInfo const &irrep, SymGroupRep const &_rep, SymGroup const &head_group)
 
bool _rep_check (SymGroupRep const &_rep, SymGroup const &head_group, bool verbose)
 
template<typename T >
SymRepTools::IrrepInfo _subspace_to_full_space (SymRepTools::IrrepInfo const &irrep, Eigen::MatrixBase< T > const &subspace)
 

Typedef Documentation

◆ _Real

template<typename T >
using CASM::Local::_Real = typedef typename _RealType<T>::Type

Definition at line 113 of file SymRepTools.cc.

Function Documentation

◆ _acentric_point_group_info()

std::map<std::string, std::string> CASM::Local::_acentric_point_group_info ( std::vector< Index > const &  op_types)

Definition at line 154 of file SymGroup.cc.

◆ _block_shape_matrix()

static Eigen::MatrixXd CASM::Local::_block_shape_matrix ( SymGroupRep const &  _rep,
SymGroup const &  head_group 
)
static

Matrix such that result(i,j) is sum of squares over 'p' of op_rep[p].matrix(i,j). 'p' only spans operations in head_group The resulting matrix reveals the block_diagonalization of SymGroupRep _rep for the subset of operations contained in head_group.

Definition at line 146 of file SymRepTools.cc.

◆ _centric_point_group_info()

static std::map<std::string, std::string> CASM::Local::_centric_point_group_info ( std::vector< Index > const &  op_types)
static

Definition at line 49 of file SymGroup.cc.

◆ _chemical_subsystems()

static std::map<std::set<Index>, std::map<std::set<Index>, Index> > CASM::Local::_chemical_subsystems ( ParamComposition::AllowedOccupants const &  _allowed_occs)
static

Definition at line 85 of file ParamComposition.cc.

◆ _irrep_symmetrizer_from_directions()

static Eigen::MatrixXcd CASM::Local::_irrep_symmetrizer_from_directions ( multivector< Eigen::VectorXcd >::X< 2 > const &  special_directions,
Eigen::Ref< const Eigen::MatrixXcd > const &  _subspace,
double  vec_compare_tol 
)
static

Definition at line 166 of file SymRepTools.cc.

◆ _is_vacancy()

static bool CASM::Local::_is_vacancy ( const std::string &  name)
static

A vacancy is any Specie/Molecule with (name == "VA" || name == "va" || name == "Va")

Definition at line 13 of file CompositionConverter.cc.

◆ _make_mapped_properties()

static MappedProperties CASM::Local::_make_mapped_properties ( MappingNode const &  _node,
ConfigMapperResult::Individual const &  _map 
)
static

Definition at line 82 of file ConfigImport.cc.

◆ _nonmagnetic_point_group_info()

static std::map<std::string, std::string> CASM::Local::_nonmagnetic_point_group_info ( SymGroup const &  g)
static

Definition at line 334 of file SymGroup.cc.

◆ _number_of_operation_types()

static std::vector<Index> CASM::Local::_number_of_operation_types ( SymGroup const &  group)
static

Definition at line 26 of file SymGroup.cc.

◆ _permute_dist()

static int CASM::Local::_permute_dist ( MappingNode::MoleculeMap const &  _perm,
MappingNode const &  _node 
)
static

Definition at line 34 of file ConfigMapping.cc.

◆ _real() [1/2]

template<typename Derived >
_Real<Derived> CASM::Local::_real ( Eigen::MatrixBase< Derived > const &  mat)

Definition at line 126 of file SymRepTools.cc.

◆ _real() [2/2]

template<typename T >
_Real<std::vector<T> > CASM::Local::_real ( std::vector< T > const &  vec)

Definition at line 131 of file SymRepTools.cc.

◆ _rep_check()

bool CASM::Local::_rep_check ( SymGroupRep const &  _rep,
SymGroup const &  head_group,
bool  verbose 
)

Definition at line 327 of file SymRepTools.cc.

◆ _resolve_properties_path()

static std::string CASM::Local::_resolve_properties_path ( std::string  pos_path,
PrimClex const &  _pclex 
)
static

Return path to properties.calc.json that will be imported checking a couple possible locations relative to pos_path.

checks: 1) is a JSON file? is pos_path ends in ".json" or ".JSON", return pos_path 2) assume pos_path is /path/to/POS, checks for /path/to/calctype.current/properties.calc.json 3) assume pos_path is /path/to/POS, checks for /path/to/properties.calc.json else returns empty path

Definition at line 21 of file ConfigData.cc.

◆ _strictest_equivalent()

template<typename IterType >
static IterType CASM::Local::_strictest_equivalent ( IterType  begin,
IterType  end,
MappingNode const &  _node 
)
static

Find symop (as PermuteIterator) that gives the most 'faithful' equivalent mapping This means that (1) the site permutation is as close to identity as possible (i.e., maximal character) (2) ties at (1) are broken by ensuring _node.isometry is proper and close to zero rotation (i.e., maximal character*determinant) (3) if (1) and (2) are ties, then we minimize _node.translation.norm()

Definition at line 53 of file ConfigMapping.cc.

◆ _sub_extremes()

static std::vector<Eigen::VectorXi> CASM::Local::_sub_extremes ( std::set< Index > const &  subcomponents,
std::map< std::set< Index >, Index > const &  sublats,
Index  dim 
)
static

Definition at line 23 of file ParamComposition.cc.

◆ _subspace_to_full_space()

template<typename T >
SymRepTools::IrrepInfo CASM::Local::_subspace_to_full_space ( SymRepTools::IrrepInfo const &  irrep,
Eigen::MatrixBase< T > const &  subspace 
)

Definition at line 368 of file SymRepTools.cc.

◆ _wedge_from_pseudo_irrep()

static SymRepTools::IrrepWedge CASM::Local::_wedge_from_pseudo_irrep ( SymRepTools::IrrepInfo const &  irrep,
SymGroupRep const &  _rep,
SymGroup const &  head_group 
)
static

Definition at line 287 of file SymRepTools.cc.

◆ initialize()

static int CASM::Local::initialize ( )
static

Definition at line 154 of file AnisoValTraits.cc.

◆ make_mapped_properties()

MappedProperties CASM::Local::make_mapped_properties ( SimpleStructure const &  simple_structure,
std::set< std::string > const &  dof_managed_properties,
double  lattice_deformation_cost,
double  atomic_deformation_cost,
double  total_cost 
)

Construct MappedProperties from a SimpleStructure solution of the configuration mapping algorithm

Parameters
simple_structureA SimpleStructure solution of the mapping algorithm. This represents what the configuration mapping algorithm considered to be the best way to map the calculated SimpleStructure to the particular Configuration under consideration.
dof_managed_propertiesA list of the SimpleStructure properties, both site and global, that correspond to BasicStructure degrees of freedom and thus should not be included in MappedProperties
lattice_deformation_costThe lattice mapping score. Expected from xtal::LatticeNode::cost.
atomic_deformation_costThe basis mapping score. Expected from xtal::AssignmentNode::cost.
total_costTotal mapping score. Expected from xtal::MappingNode::cost. Depending on mapping method options may not be a linear combination of lattice_deformation_cost and atomic_deformation_cost.

Note:

  • Property names in "simple_structure" and "dof_managed_properties" must follow CASM property naming conventions as documented for AnisoValTraits.

Definition at line 47 of file ConfigImport.cc.

◆ register_traits()

static void CASM::Local::register_traits ( AnisoValTraits  new_traits)
static

Definition at line 132 of file AnisoValTraits.cc.

◆ traits()

static AnisoValTraits const& CASM::Local::traits ( std::string const &  name)
static

Definition at line 178 of file AnisoValTraits.cc.

◆ traits_map()

static std::map<std::string, AnisoValTraits>& CASM::Local::traits_map ( )
static

Definition at line 127 of file AnisoValTraits.cc.