SG++-Doxygen-Documentation
sgpp::base::HashRefinementBoundariesMaxLevel Class Reference

Standard free refinement class for sparse grids with boundaries with a maximal level depth of refinement. More...

#include <HashRefinementBoundariesMaxLevel.hpp>

Inheritance diagram for sgpp::base::HashRefinementBoundariesMaxLevel:
sgpp::base::HashRefinementBoundaries sgpp::base::AbstractRefinement

Public Member Functions

size_t getNumberOfRefinablePointsToMaxLevel (GridStorage &storage, unsigned int maxLevel)
 Calculates the number of points, which can be refined. More...
 
void refineGridpoint1D (GridStorage &storage, GridPoint &point, size_t d, unsigned int maxLevel)
 Refine one grid point along a single direction. More...
 
void refineToMaxLevel (GridStorage &storage, RefinementFunctor &functor, unsigned int maxLevel)
 Performs the refinement on grid. More...
 
- Public Member Functions inherited from sgpp::base::HashRefinementBoundaries
void free_refine (GridStorage &storage, RefinementFunctor &functor, std::vector< size_t > *addedPoints=0) override
 Performs the refinement on grid. More...
 
size_t getNumberOfRefinablePoints (GridStorage &storage) override
 Calculates the number of points, which can be refined. More...
 
void refineGridpoint1D (GridStorage &storage, GridPoint &point, size_t d) override
 Refine one grid point along a single direction. More...
 
- Public Member Functions inherited from sgpp::base::AbstractRefinement
virtual size_t getIndexOfMin (RefinementFunctor::value_type *array, size_t length)
 Returns the index of the first occurrence of minimal element in array. More...
 
bool isRefinable (GridStorage &storage, GridPoint &point)
 Check if the grid point is refinable. More...
 
virtual void refineGridpoint1D (GridStorage &storage, size_t seq, size_t d)
 Refine one grid point along a single direction. More...
 
virtual ~AbstractRefinement ()
 Destructor. More...
 

Protected Member Functions

void refineGridpoint (GridStorage &storage, size_t refine_index, unsigned int maxLevel)
 This method refines a grid point be generating the children in every dimension of the grid. More...
 
- Protected Member Functions inherited from sgpp::base::HashRefinementBoundaries
virtual void addElementToCollection (const GridStorage::grid_map_iterator &iter, AbstractRefinement::refinement_list_type current_value_list, size_t refinements_num, AbstractRefinement::refinement_container_type &collection)
 Adds elements to the collection. More...
 
void collectRefinablePoints (GridStorage &storage, RefinementFunctor &functor, AbstractRefinement::refinement_container_type &collection) override
 Examines the grid points and stores the indices those that can be refined and have maximal indicator values. More...
 
void createGridpoint (GridStorage &storage, GridPoint &point) override
 Wrapper for the two functions create_gridpoint_general and create_gridpoint_levelZeroConsistency which have both to be executed if a gridpoint is refined. More...
 
void createGridpoint1D (GridPoint &point, size_t d, GridStorage &storage, index_t &source_index, level_t &source_level) override
 Creates children grid points along single direction. More...
 
void createGridpointGeneral (GridStorage &storage, GridPoint &point)
 This method creates a new point on the grid. More...
 
void createGridpointLevelZeroConsistency (GridStorage &storage, GridPoint &point)
 Assures that we have always a consistent grid with both functions 0,0 and 0,1 on level zero. More...
 
AbstractRefinement::refinement_list_type getIndicator (GridStorage &storage, const GridStorage::grid_map_iterator &iter, const RefinementFunctor &functor) const override
 Generates a list with indicator elements. More...
 
void refineGridpoint (GridStorage &storage, size_t refine_index) override
 This method refines a grid point be generating the children in every dimension of the grid. More...
 
void refineGridpointsCollection (GridStorage &storage, RefinementFunctor &functor, AbstractRefinement::refinement_container_type &collection) override
 Extends the grid adding elements defined in collection. More...
 
- Protected Member Functions inherited from sgpp::base::AbstractRefinement
virtual void createGridpointSubroutine (GridStorage &storage, GridPoint &point)
 Subroutine for grid point creation. More...
 

Additional Inherited Members

- Public Types inherited from sgpp::base::AbstractRefinement
typedef std::vector< refinement_pair_typerefinement_container_type
 Container for the collection of the refinement atoms and the corresponding value. More...
 
typedef AbstractRefinement_refinement_key refinement_key_type
 Type of the identifier of the refinement atom (e.g. More...
 
typedef std::forward_list< AbstractRefinement::refinement_pair_typerefinement_list_type
 
typedef std::pair< std::shared_ptr< refinement_key_type >, refinement_value_typerefinement_pair_type
 Pair for the refinement key and value. More...
 
typedef double refinement_value_type
 Type of functor value assigned to each refinement atom. More...
 
- Static Public Member Functions inherited from sgpp::base::AbstractRefinement
static bool compare_pairs (const refinement_pair_type &lhs, const refinement_pair_type &rhs)
 Comparison of the refinement_pair_type. More...
 

Detailed Description

Standard free refinement class for sparse grids with boundaries with a maximal level depth of refinement.

Member Function Documentation

size_t sgpp::base::HashRefinementBoundariesMaxLevel::getNumberOfRefinablePointsToMaxLevel ( GridStorage storage,
unsigned int  maxLevel 
)
void sgpp::base::HashRefinementBoundariesMaxLevel::refineGridpoint ( GridStorage storage,
size_t  refine_index,
unsigned int  maxLevel 
)
protected

This method refines a grid point be generating the children in every dimension of the grid.

Parameters
storagehashmap that stores the gridpoints
refine_indexthe index in the hashmap of the point that should be refined
maxLevelno points on higher levels than maxLevel will be created

References sgpp::base::HashGridStorage::getDimension(), chess::point, and refineGridpoint1D().

Referenced by refineToMaxLevel().

void sgpp::base::HashRefinementBoundariesMaxLevel::refineGridpoint1D ( GridStorage storage,
GridPoint point,
size_t  d,
unsigned int  maxLevel 
)

Refine one grid point along a single direction.

Parameters
storagehashmap that stores the grid points
pointpoint to refine
ddirection
maxLevelno points on higher levels than maxLevel will be created

References sgpp::base::HashRefinementBoundaries::createGridpoint(), sgpp::base::HashGridPoint::get(), sgpp::base::HashGridStorage::isContaining(), sgpp::base::HashGridPoint::set(), and sgpp::base::HashGridPoint::setLeaf().

Referenced by refineGridpoint().


The documentation for this class was generated from the following files: