Doxygen
1.9.1
|
Algorithms for manipulating multi-indexes defined by hierarchy rules. More...
Go to the source code of this file.
Classes | |
class | TasGrid::HierarchyManipulations::SplitDirections |
Reorganize the points into sets of nodes that align in one-dimension, used for directional localp refinement. More... | |
Namespaces | |
TasGrid | |
Encapsulates the Tasmanian Sparse Grid module. | |
TasGrid::HierarchyManipulations | |
Collection of algorithm to manipulate multi-indexes. | |
Functions | |
template<RuleLocal::erule effrule> | |
Data2D< int > | TasGrid::HierarchyManipulations::computeDAGup (MultiIndexSet const &mset) |
Cache the indexes slot numbers of the parents of the multi-indexes in mset. More... | |
Data2D< int > | TasGrid::HierarchyManipulations::computeDAGup (MultiIndexSet const &mset, RuleLocal::erule effrule) |
Cache the indexes slot numbers of the parents of the multi-indexes in mset. More... | |
template<RuleLocal::erule effrule> | |
Data2D< int > | TasGrid::HierarchyManipulations::computeDAGup (MultiIndexSet const &mset, bool &is_complete) |
Variant that also check if all points have all parents. More... | |
template<RuleLocal::erule effrule> | |
Data2D< int > | TasGrid::HierarchyManipulations::computeDAGDown (MultiIndexSet const &mset) |
Cache the indexes slot numbers of the children of the multi-indexes in mset. More... | |
template<RuleLocal::erule effrule> | |
std::vector< int > | TasGrid::HierarchyManipulations::computeLevels (MultiIndexSet const &mset) |
Returns a vector that is the sum of the one dimensional levels of each multi-index in the set.. More... | |
std::vector< int > | TasGrid::HierarchyManipulations::computeLevels (MultiIndexSet const &mset, RuleLocal::erule effrule) |
Overload that turns switch statement into template instantiations. More... | |
template<RuleLocal::erule effrule> | |
void | TasGrid::HierarchyManipulations::completeToLower (MultiIndexSet const &mset, MultiIndexSet &refined) |
Complete refined so that the union of refined and mset is lower w.r.t. the rule. . More... | |
template<RuleLocal::erule effrule, typename callable_method > | |
void | TasGrid::HierarchyManipulations::touchAllImmediateRelatives (std::vector< int > &point, MultiIndexSet const &mset, callable_method apply) |
Will call apply() with the slot index in mset of each parent/child of point.. More... | |
template<RuleLocal::erule effrule> | |
MultiIndexSet | TasGrid::HierarchyManipulations::getLevelZeroPoints (size_t num_dimensions) |
Return the tensor set of all points that sit on level zero (i.e., have no parents). More... | |
template<RuleLocal::erule effrule> | |
MultiIndexSet | TasGrid::HierarchyManipulations::getLargestConnected (MultiIndexSet const ¤t, MultiIndexSet const &candidates) |
Return the largest subset of candidates such that adding it to current will result in a connected graph. More... | |
template<typename T > | |
std::vector< Data2D< T > > | TasGrid::HierarchyManipulations::splitByLevels (size_t stride, typename std::vector< T >::const_iterator ibegin, typename std::vector< T >::const_iterator iend, std::vector< int >::const_iterator ilevels) |
Split the range between ibegin and iend into strips of stride and orders those by levels according to the level index in ilevels. More... | |
std::vector< Data2D< int > > | TasGrid::HierarchyManipulations::splitByLevels (MultiIndexSet const &mset, std::vector< int > const &levels) |
Overload that operates on an entire multi-index set. | |
template<typename T > | |
std::vector< Data2D< T > > | TasGrid::HierarchyManipulations::splitByLevels (Data2D< T > const &data, std::vector< int > const &levels) |
Overload that operates on an entire Data2D structure set. | |
std::vector< Data2D< double > > | TasGrid::HierarchyManipulations::splitByLevels (StorageSet const &stortage, std::vector< int > const &levels) |
Overload that operates on an entire StorageSet structure set. | |
Algorithms for manipulating multi-indexes defined by hierarchy rules.
A series of templates, lambda, and regular functions that allow the manipulation of multi-indexes and sets of multi-indexes defined by hierarchy rules.