CASM  1.1.0
A Clusters Approach to Statistical Mechanics
CanonicalForm.hh
Go to the documentation of this file.
1 #ifndef CASM_LatticeCanonicalForm
2 #define CASM_LatticeCanonicalForm
3 
4 #include <vector>
5 
9 
10 namespace CASM {
11 namespace xtal {
12 struct SymOp;
13 typedef std::vector<SymOp> SymOpVector;
14 class Lattice;
15 
16 namespace canonical {
17 
21 bool check(const Lattice &lat);
22 
26 bool check(const Lattice &lat, SymOpVector const &g);
27 
28 template <typename ExternSymOpVector>
29 bool check(const Lattice &lat, ExternSymOpVector const &g) {
31 }
32 
33 //**************************************************************************************************************//
34 
42 Lattice equivalent(Lattice const &in_lat, SymOpVector const &point_grp,
43  double compare_tol);
44 
45 template <typename ExternSymOpVector>
46 Lattice equivalent(Lattice const &in_lat, ExternSymOpVector const &point_grp,
47  double compare_tol) {
48  return equivalent(
50  compare_tol);
51 }
52 
54 Lattice equivalent(const Lattice &lat, SymOpVector const &g);
55 
56 template <typename ExternSymOpVector>
57 Lattice equivalent(Lattice const &in_lat, ExternSymOpVector const &g) {
58  return equivalent(in_lat,
60 }
61 
63 Lattice equivalent(const Lattice &lat);
64 
67 Lattice equivalent(const Lattice &lat, double compare_tol);
68 //**************************************************************************************************************//
69 
77 Index operation_index(const Lattice &lat, SymOpVector const &g);
78 
79 template <typename ExternSymOpVector>
80 Index operation_index(const Lattice &lat, ExternSymOpVector const &g) {
81  return operation_index(lat,
83 }
84 
86 Index operation_index(Lattice const &in_lat, SymOpVector const &point_grp,
87  double compare_tol);
88 } // namespace canonical
89 
90 } // namespace xtal
91 } // namespace CASM
92 
93 #endif
Lattice equivalent(Lattice const &in_lat, SymOpVector const &point_grp, double compare_tol)
Index operation_index(const Lattice &lat, SymOpVector const &g)
bool check(const Lattice &lat)
std::vector< SymOp > SymOpVector
Main CASM namespace.
Definition: APICommand.hh:8
INDEX_TYPE Index
For long integer indexing:
Definition: definitions.hh:39