CASM  1.1.0
A Clusters Approach to Statistical Mechanics
ClusterOrbits_impl.hh File Reference

Go to the source code of this file.

Namespaces

 CASM
 Main CASM namespace.
 

Functions

template<typename OutputIterator >
OutputIterator CASM::neighborhood (Structure const &unit, double max_radius, SiteFilterFunction site_filter, OutputIterator result, double xtal_tol)
 Output the neighborhood of UnitCellCoord within max_radius of any sites in unit cell. More...
 
template<typename OutputIterator >
OutputIterator CASM::neighborhood (IntegralCluster const &phenomenal, double cutoff_radius, SiteFilterFunction site_filter, bool include_phenomenal_sites, OutputIterator result, double xtal_tol)
 Output the neighborhood of sites within cutoff_radius of any sites in the phenomenal. More...
 
template<typename OrbitType , typename OutputIterator >
OutputIterator CASM::local_orbit_neighborhood (const OrbitType &orbit, OutputIterator result)
 Iterate over all sites in an orbit and insert a UnitCellCoord. More...
 
template<typename ClusterOrbitIterator , typename OutputIterator >
OutputIterator CASM::local_neighborhood (ClusterOrbitIterator begin, ClusterOrbitIterator end, OutputIterator result)
 Iterate over all sites in all orbits and insert a UnitCellCoord. More...
 
template<typename OrbitType >
bool CASM::has_local_neighborhood_overlap (std::vector< OrbitType > const &local_orbits, Eigen::Matrix3i const &transf_mat)
 Check if periodic images of sites in an orbit are overlapping in supercells defined by the given superlattice transformation matrix. More...
 
template<typename OrbitType >
std::vector< Eigen::Matrix3i > CASM::viable_supercells (std::vector< OrbitType > &local_orbits, const std::vector< Eigen::Matrix3i > &transf_mat)
 Return superlattice transf. matrices for which has_local_neighborhood_overlap is false. More...
 
template<typename OrbitType >
OrbitGenerators< OrbitType > & CASM::insert_subcluster_generators (typename OrbitType::Element cluster, OrbitGenerators< OrbitType > &generators)
 Given a cluster, generate all subcluster generators. More...
 
template<typename OrbitIterator >
std::pair< OrbitIterator, OrbitIterator > CASM::orbit_branch (OrbitIterator begin, OrbitIterator end, Index size)
 Returns the first range containing orbits of the requested orbit branch in the given range of Orbit. More...
 
template<typename OrbitType , typename OrbitInputIterator , typename OrbitOutputIterator >
OrbitOutputIterator CASM::make_next_orbitbranch (OrbitInputIterator begin, OrbitInputIterator end, const OrbitBranchSpecs< OrbitType > &specs, OrbitOutputIterator result, std::ostream &status)
 Use orbits of size n to generate orbits of size n+1. More...
 
template<typename OrbitBranchSpecsIterator , typename OrbitOutputIterator >
OrbitOutputIterator CASM::make_orbits (OrbitBranchSpecsIterator begin, OrbitBranchSpecsIterator end, const std::vector< IntegralClusterOrbitGenerator > &custom_generators, OrbitOutputIterator result, std::ostream &status)
 Generate orbits of IntegralCluster using OrbitBranchSpecs. More...
 
template<typename OutputIterator >
OutputIterator CASM::prim_periodic_orbit_neighborhood (const PrimPeriodicOrbit< IntegralCluster > &orbit, OutputIterator result)
 Iterate over all sites in an orbit and insert a UnitCellCoord. More...
 
template<typename ClusterOrbitIterator , typename OutputIterator >
OutputIterator CASM::prim_periodic_neighborhood (ClusterOrbitIterator begin, ClusterOrbitIterator end, OutputIterator result)
 Iterate over all sites in all orbits and insert a UnitCellCoord. More...
 
template<typename OutputIterator , typename OrbitType >
OutputIterator CASM::flower_neighborhood (OrbitType const &orbit, OutputIterator result)
 Iterate over all sites in an orbit and insert a UnitCellCoord. More...
 
template<typename ClusterOrbitIterator , typename OutputIterator >
OutputIterator CASM::flower_neighborhood (ClusterOrbitIterator begin, ClusterOrbitIterator end, OutputIterator result)
 Iterate over all sites in all orbits and insert a UnitCellCoord. More...