10 template<
typename CoordType>
class BasicStructure;
13 template<
typename ClustType>
31 template<
typename ClustType>
53 GenericOrbit(
const ClustType &init_prototype) : index(-1), permute_rep_ID(-1), coord_rep_ID(-1), prototype(init_prototype) {};
71 bool contains(
const ClustType &test_clust,
double tol)
const;
75 bool contains(
const typename ClustType::WhichCoordType &test_site,
double tol)
const;
78 Index find(
const ClustType &test_clust,
double tol)
const;
97 return prototype.max_length();
101 return prototype.min_length();
jsonParser & to_json(jsonParser &json) const
ReturnArray< std::string > delta_occfunc_flower_function_cpp_strings(BasisSet site_basis, const Array< FunctionVisitor * > &labelers, Index nlist_index, Index b_index, Index f_index)
ReturnArray< std::string > flower_function_cpp_strings(const Array< FunctionVisitor * > &labelers, Index nlist_index)
nlist_index is the index into the nlist for the site the flower centers on
void read(std::istream &stream, int num_sites, COORD_TYPE mode)
GenericOrbit & apply_sym(const SymOp &op)
Apply symmetry to prototype and all the clusters in the orbit.
Array< GenericOrbit * > sub_cluster
Pointers to all orbits whose clusters are subclusters of clusters in this orbit.
void from_json(const jsonParser &json)
Assumes the prototype lattice is already set.
bool contains(const ClustType &test_clust, double tol) const
Array< Array< SymOp > > equivalence_map
SymGroup is a collection of symmetry operations that satisfy the group property The symmetry operatio...
SymOp is the Coordinate representation of a symmetry operation it keeps fraction (FRAC) and Cartesian...
Represents cartesian and fractional coordinates.
EigenIndex Index
For long integer indexing:
Index find(const ClustType &test_clust, double tol) const
Same as contains, but returns index of equivalent cluster that maps onto test_clust.
SymGroupRep const * get_full_permutation_representation()
get permutation representation of every operation in equivalence_map to describe how operations permu...
double min_length() const
return min_length of clusters in Orbit
GenericOrbit< SiteCluster > SiteOrbit
ReturnArray< std::string > orbit_function_cpp_strings(const Array< FunctionVisitor * > &labelers)
returns Array of std::string, each of which is
ClustType & at(Index ind)
void get_equivalent(const SymGroup &sym_group, double tol)
SymGroupRep const * get_full_coord_representation()
void collect_basis_info(const Array< typename ClustType::WhichCoordType > &basis, const Coordinate &shift)
calls collect_basis_info on all clusters in orbit
GenericOrbit< HopCluster > HopOrbit
double max_length() const
return max_length of clusters in Orbit
GenericOrbit(const ClustType &init_prototype)
SymGroupRep is an alternative representation of a SymGroup for something other than real space...
void set_index(Index ind) const
Index index
Linear index of this orbit, when many orbits are stored in a complicated structure (e...
void set_lattice(const Lattice &new_home, COORD_TYPE mode)
calls set_lattice on prototype, and all equivalent clusters
Basic std::vector like container (deprecated)