CASM  1.1.0
A Clusters Approach to Statistical Mechanics
OrbitFunctionTraits.cc
Go to the documentation of this file.
2 
3 #include <ostream>
4 
8 
9 namespace CASM {
11  IntegralCluster const &_prototype, SymGroup const &_generating_group,
12  std::vector<BasisSet const *> const &_arg_bases, Index max_poly_order,
13  Index min_poly_order) const {
14  BasisSet res(name());
15  max_poly_order =
16  valid_index(max_poly_order) ? max_poly_order : _prototype.size();
17 
18  Array<BasisSet const *> arg_bases_array(_arg_bases.begin(), _arg_bases.end());
19 
20  // std::cout << "min_poly_order is: \n" << min_poly_order;
21  // for(Index i = min_poly_order; i <= max_poly_order; i++) {
22  for (Index i = 0; i <= max_poly_order; i++) {
23  BasisSet tres(name());
24  tres.construct_invariant_polynomials(arg_bases_array, _generating_group, i,
25  1);
26  res.append(tres);
27  }
28 
29  return res;
30 }
31 
32 } // namespace CASM
Basic std::vector like container (deprecated)
Definition: Array.hh:45
void construct_invariant_polynomials(ArgList const &tsubs, const SymGroup &head_sym_group, Index order, Index min_dof_order=1)
Definition: BasisSet.cc:479
void append(const BasisSet &RHS, std::function< Function *(Function *)> const &transform=CASM_TMP::UnaryIdentity< Function * >())
Append contents of.
Definition: BasisSet.cc:134
std::string const & name() const
size_type size() const
Number of elements in the cluster.
BasisSet build_proto(IntegralCluster const &_prototype, SymGroup const &_generating_group, std::vector< BasisSet const * > const &_arg_bases, Index max_poly_order, Index min_poly_order) const override
SymGroup is a collection of symmetry operations that satisfy the group property The symmetry operatio...
Definition: SymGroup.hh:42
Main CASM namespace.
Definition: APICommand.hh:8
bool valid_index(Index i)
Definition: definitions.cc:5
INDEX_TYPE Index
For long integer indexing:
Definition: definitions.hh:39