Doxygen 1.9.1
Toolkit for Adaptive Stochastic Modeling and Non-Intrusive ApproximatioN: Tasmanian v8.2 (development)
TasGrid::HierarchyManipulations Namespace Reference

Collection of algorithm to manipulate multi-indexes. More...

Classes

class  SplitDirections
 Reorganize the points into sets of nodes that align in one-dimension, used for directional localp refinement. More...
 

Functions

template<RuleLocal::erule effrule>
Data2D< int > computeDAGup (MultiIndexSet const &mset)
 Cache the indexes slot numbers of the parents of the multi-indexes in mset. More...
 
Data2D< int > 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 > computeDAGup (MultiIndexSet const &mset, bool &is_complete)
 Variant that also check if all points have all parents. More...
 
template<RuleLocal::erule effrule>
Data2D< int > 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 > 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 > computeLevels (MultiIndexSet const &mset, RuleLocal::erule effrule)
 Overload that turns switch statement into template instantiations. More...
 
template<RuleLocal::erule effrule>
void 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 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 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 getLargestConnected (MultiIndexSet const &current, 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 > > 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 > > 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 > > splitByLevels (Data2D< T > const &data, std::vector< int > const &levels)
 Overload that operates on an entire Data2D structure set.
 
std::vector< Data2D< double > > splitByLevels (StorageSet const &stortage, std::vector< int > const &levels)
 Overload that operates on an entire StorageSet structure set.
 

Detailed Description

Collection of algorithm to manipulate multi-indexes.