CASM  1.1.0
A Clusters Approach to Statistical Mechanics
BasicStructureTools.hh File Reference
#include <set>
#include <vector>
#include "casm/crystallography/Lattice.hh"
#include "casm/external/Eigen/Core"
#include "casm/global/definitions.hh"
#include "casm/global/eigen.hh"

Go to the source code of this file.

Namespaces

 CASM
 Main CASM namespace.
 
 CASM::xtal
 

Functions

Index CASM::xtal::find_index (const std::vector< Site > &basis, const Site &test_site, double tol)
 
bool CASM::xtal::is_primitive (const BasicStructure &struc, double tol=TOL)
 
BasicStructure CASM::xtal::make_primitive (const BasicStructure &non_primitive_struc, double tol=TOL)
 Returns the smallest possible tiling unit of the given structure. More...
 
std::pair< double, Eigen::Vector3d > CASM::xtal::calc_rotation_angle_and_axis (const SymOp &op, const Lattice &lat)
 Calculates the rotation angle and axis of a symmetry operation. This function is almost exactly identical to the constructor of SymInfo::SymInfo. More...
 
void CASM::xtal::sort_factor_group (std::vector< SymOp > &factor_group, const Lattice &lat)
 Sort SymOp in the SymGroup. More...
 
std::vector< SymOpCASM::xtal::make_factor_group (const BasicStructure &struc, double tol=TOL)
 
std::vector< Eigen::PermutationMatrix< Eigen::Dynamic, Eigen::Dynamic, Index > > CASM::xtal::make_permutation_representation (const xtal::BasicStructure &struc, const std::vector< SymOp > &factor_group)
 Create the permutation group of a structure. More...
 
std::set< std::set< Index > > CASM::xtal::make_asymmetric_unit (const xtal::BasicStructure &struc, const std::vector< SymOp > &factor_group)
 Return indices of equivalent basis sites. More...
 
std::set< std::set< Index > > CASM::xtal::make_asymmetric_unit (const xtal::BasicStructure &struc)
 Return indices of equivalent basis sites. More...
 
BasicStructure CASM::xtal::symmetrize (const BasicStructure &structure, const std::vector< SymOp > &enforced_group)
 
template<typename IntegralType , int Options = 0>
BasicStructure CASM::xtal::make_superstructure (const BasicStructure &tiling_unit, const Eigen::Matrix< IntegralType, 3, 3, Options > &transformation_matrix)