|
CASM
1.1.0
A Clusters Approach to Statistical Mechanics
|
#include <PolyTrie.hh>
Inheritance diagram for CASM::PolyTrie< T >:Definition at line 173 of file PolyTrie.hh.
Public Types | |
| typedef T | value_type |
| typedef PTLeaf< T > | leaf_type |
| typedef PTIterator< PolyTrie< T > > | iterator |
| typedef PTIterator< PolyTrie< T >, true > | const_iterator |
Public Member Functions | |
| PolyTrie (Index _depth) | |
| PolyTrie (const PolyTrie< T > &orig) | |
| ~PolyTrie () | |
| void | remove () |
| Virtual from PTNode<T>, you cannot remove a PolyTrie. More... | |
| void | remove (const Array< Index > &ind) |
| Remove entry at 'ind'. More... | |
| void | swap (PolyTrie< T > &other) |
| Efficient swap of this PolyTrie with another. More... | |
| void | redefine (Index new_depth) |
| Clears all leaves and resets depth. More... | |
| void | clear () |
| Index | depth () const |
| T | get (const Array< Index > &ind) const |
| get() provides constant access does not change trie structure More... | |
| T & | at (const Array< Index > &ind) |
| T & | operator() (const Array< Index > &ind) |
| T | operator() (const Array< Index > &ind) const |
| void | set (const Array< Index > &ind, const T &_val) |
| set() allows assignment that prunes the trie if _val is approximately 0; More... | |
| void | list_leaf (PTLeaf< T > *new_leaf) |
| bool | prune_zeros (double tol=PTNode< T >::PT_TOL()) |
| PTLeaf< T > * | begin_ptr () |
| PTLeaf< T > const * | begin_ptr () const |
| iterator | begin () |
| const_iterator | begin () const |
| iterator | end () |
| const_iterator | end () const |
| void | print_sparse (std::ostream &out) const |
| PolyTrie & | operator*= (const T &scale) |
| PolyTrie & | operator+= (const PolyTrie< T > &RHS) |
| PolyTrie & | operator-= (const PolyTrie< T > &RHS) |
| PolyTrie | operator+ (const PolyTrie< T > &RHS) const |
| PolyTrie | operator- (const PolyTrie< T > &RHS) const |
| bool | compare (const PolyTrie< T > &RHS, double tol=2 *PTNode< T >::PT_TOL()) const |
| bool | operator== (const PolyTrie< T > &RHS) const |
| bool | almost_zero (double tol=2 *PTNode< T >::PT_TOL()) const |
| template<typename CompareType > | |
| void | sort_leaves (const CompareType &compare) |
| const T & | val () const |
| void | remove (Index ind) |
| void | swap (Array< PTNode< T > * > &RHS) |
| PTNode< T > * & | at (Index ind) |
| const PTNode< T > * & | at (Index ind) const |
| bool | operator== (const Array< PTNode< T > * > &RHS) const |
Protected Types | |
| typedef Array< PTNode< T > * > | X1 |
| typedef Array< X1 > | X2 |
| typedef Array< X2 > | X3 |
| typedef Array< X3 > | X4 |
| typedef Array< X4 > | X5 |
| typedef Array< X5 > | X6 |
| typedef Array< X6 > | X7 |
| typedef Array< X7 > | X8 |
| typedef Array< X8 > | X9 |
| typedef Index | size_type |
Protected Member Functions | |
| PTNode< T > * | valid_node_at (Index i) |
| PTNode< T > * | valid_leaf_at (PolyTrie< T > &home_trie, const Array< Index > &ind) |
| Index | size () const |
| const PTNode< T > * & | operator[] (Index ind) const |
| PTNode< T > * & | operator[] (Index ind) |
| PTNode< T > * & | back () |
| const PTNode< T > * & | back () const |
| PTNode< T > * const * | cbegin () const |
| PTNode< T > * const * | cend () const |
| void | push_back (const PTNode< T > * &toPush) |
| void | pop_back () |
| void | resize (Index new_N) |
| void | resize (Index new_N, const PTNode< T > * &fill_val) |
| void | reserve (Index new_max) |
| void | sort (const CompareType &comp) |
| void | sort (Array< Index > &ind_order) |
| void | sort () |
| Array & | append (const Array &new_tail) |
| Array & | append_unique (const Array &new_tail) |
| void | swap_elem (Index i, Index j) |
| Array & | permute (const Array< Index > &perm_array) |
| Array & | ipermute (const Array< Index > &perm_array) |
| bool | next_permute () |
| ReturnArray< Index > | as_perm_inverse () const |
| ReturnArray< Index > | as_perm_transform_by (const Array< Index > &trans_perm) const |
| const PTNode< T > * & | max () const |
| const PTNode< T > * & | min () const |
| ReturnArray< PTNode< T > * > | sub_array (Index ind_begin, Index ind_end) const |
| PTNode< T > * | sum () const |
| bool | is_ascending () const |
| bool | is_descending () const |
| bool | is_constant () const |
| bool | is_permute () const |
| bool | has_fixed_points () const |
| bool | operator!= (const Array< PTNode< T > * > &RHS) const |
| bool | operator< (const Array< PTNode< T > * > &RHS) const |
| bool | operator> (const Array< PTNode< T > * > &RHS) const |
| bool | operator<= (const Array< PTNode< T > * > &RHS) const |
| bool | operator>= (const Array< PTNode< T > * > &RHS) const |
| bool | all_in (const Array &superset) const |
| Index | coincidence (const Array &superset) const |
| Index | incidences (const PTNode< T > * &test_elem) const |
| Index | find (const PTNode< T > * &test_elem) const |
| Index | reverse_find (const PTNode< T > * &test_elem) const |
| Same as find, but starts from the last element of the Array. More... | |
| Index | almost_find (const PTNode< T > * &test_elem, double tol_val=TOL) const |
| Index | almost_reverse_find (const PTNode< T > * &test_elem, double tol_val=TOL) const |
| Same as almost_find, but start from the last element of the Array. More... | |
| bool | contains (const PTNode< T > * &test_elem) const |
| bool | almost_contains (const PTNode< T > * &test_elem, double tol_val=TOL) const |
| void | print_column (std::ostream &stream, const std::string &indent="") const |
Static Protected Member Functions | |
| static double | PT_TOL () |
| static ReturnArray< PTNode< T > * > | sequence (const PTNode< T > * &initial, const PTNode< T > * &final) |
| static ReturnArray< PTNode< T > * > | sequence (const PTNode< T > * &initial, const PTNode< T > * &increment, const PTNode< T > * &final) |
Protected Attributes | |
| PTNode< T > * | up_node |
| T | m_val |
Private Member Functions | |
| Index | num_nonzero () const |
Static Private Member Functions | |
| static Index | ARRAY_MIN_EXTRA_SPACE () |
| static double | ARRAY_EXTENSION_FACTOR () |
Private Attributes | |
| Index | m_depth |
| PTLeaf< T > * | m_leaf_list |
| Index | N |
| Index | NMax |
| PTNode< T > * * | Vals |
| typedef PTIterator<PolyTrie<T>, true> CASM::PolyTrie< T >::const_iterator |
Definition at line 190 of file PolyTrie.hh.
| typedef PTIterator<PolyTrie<T> > CASM::PolyTrie< T >::iterator |
Definition at line 189 of file PolyTrie.hh.
| typedef PTLeaf<T> CASM::PolyTrie< T >::leaf_type |
Definition at line 187 of file PolyTrie.hh.
|
inherited |
| typedef T CASM::PolyTrie< T >::value_type |
Definition at line 185 of file PolyTrie.hh.
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inline |
Definition at line 192 of file PolyTrie.hh.
|
inherited |
|
inlineinherited |
|
inherited |
|
inherited |
|
inlinestaticprivateinherited |
|
inlinestaticprivateinherited |
|
inherited |
|
inherited |
Given N distinct objects labeled from 0 to N-1, a permutation 'P_permute' that physically permutes the objects (with labels) in terms of their labels, and a permutation 'L_permute' that permutes their labels only, rewrite 'P_permute' in terms of the relabeling induced by 'L_permute' Rearrange 'this' permutation to form an equivalent permutation for any list that has already been permuted by trans_perm. Does not (nearly certain of this) depend on permutation convention
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inline |
Definition at line 238 of file PolyTrie.hh.
|
inline |
Definition at line 239 of file PolyTrie.hh.
|
inline |
Definition at line 235 of file PolyTrie.hh.
|
inline |
Definition at line 236 of file PolyTrie.hh.
|
inlineinherited |
|
inlineinherited |
|
inherited |
|
inlineinherited |
|
inline |
Definition at line 213 of file PolyTrie.hh.
|
inline |
Definition at line 241 of file PolyTrie.hh.
|
inline |
Definition at line 242 of file PolyTrie.hh.
|
inherited |
|
inherited |
Checks whether any values are equal to their index – only valid for Array<Index>
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inlineinherited |
|
inherited |
|
inlineinherited |
|
inherited |
|
inherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inherited |
|
inlinestaticprotectedinherited |
Definition at line 43 of file PolyTrie.hh.
|
inherited |
|
inlinevirtual |
Virtual from PTNode<T>, you cannot remove a PolyTrie.
Reimplemented from CASM::PTNode< T >.
Definition at line 200 of file PolyTrie.hh.
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
staticinherited |
Returns an array with the sequence (initial, ++initial, ..., final), inclusive requires that operator<() and operator++() are defined on type T
Returns an array with the sequence (initial, ++initial, ..., final), inclusive
|
staticinherited |
Returns an array with the sequence (initial, initial+increment, ..., final?), inclusive if final is in the sequence requires that operator<() and operator+=() are defined on type T
Returns an array with the sequence (initial, initial+increment, ..., final?), inclusive if final is in the sequence
|
inlineinherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inlineinherited |
|
inlineinherited |
Definition at line 58 of file PolyTrie.hh.
|
private |
Definition at line 174 of file PolyTrie.hh.
|
private |
Definition at line 175 of file PolyTrie.hh.
|
protectedinherited |
Definition at line 46 of file PolyTrie.hh.
|
privateinherited |
|
privateinherited |
|
protectedinherited |
Definition at line 45 of file PolyTrie.hh.
|
privateinherited |