CASM  1.1.0
A Clusters Approach to Statistical Mechanics
InvariantSubgroup.hh
Go to the documentation of this file.
1 #ifndef CASM_InvariantSubgroup
2 #define CASM_InvariantSubgroup
3 
4 #include <vector>
5 
7 
8 namespace CASM {
9 
10 class PermuteIterator;
11 class SymGroup;
12 
14 template <typename Element, typename OpIterator, typename SymCompareType,
15  typename OpOutputIterator>
16 OpOutputIterator make_invariant_subgroup(Element const &element,
17  OpIterator group_begin,
18  OpIterator group_end,
19  SymCompareType const &sym_compare,
20  OpOutputIterator result);
21 
23 template <typename Element, typename SymCompareType, typename OutputIterator>
24 OutputIterator make_invariant_subgroup(Element const &element,
25  PermuteIterator permute_begin,
26  PermuteIterator permute_end,
27  SymCompareType const &sym_compare,
28  OutputIterator result);
29 
31 template <typename Element, typename SymCompareType>
32 SymGroup make_invariant_subgroup(const Element &element,
33  const SymGroup &generating_grp,
34  const SymCompareType &sym_compare);
35 
37 template <typename OrbitType>
38 SymGroup make_invariant_subgroup(const OrbitType &orbit,
39  Index element_index = 0);
40 
41 } // namespace CASM
42 
43 #endif
std::vector< PermuteIterator > make_invariant_subgroup(ConfigEnumInput const &config_enum_input)
Main CASM namespace.
Definition: APICommand.hh:8
INDEX_TYPE Index
For long integer indexing:
Definition: definitions.hh:39