SG++-Doxygen-Documentation
sgpp::datadriven::OperationMakePositiveFindIntersectionCandidates Class Reference

#include <OperationMakePositiveCandidateSetAlgorithm.hpp>

Inheritance diagram for sgpp::datadriven::OperationMakePositiveFindIntersectionCandidates:
sgpp::datadriven::OperationMakePositiveCandidateSetAlgorithm sgpp::datadriven::OperationMakePositiveFindIntersectionCandidatesJoin sgpp::datadriven::OperationMakePositiveHybridFindIntersectionCandidates

Public Member Functions

void nextCandidates (base::Grid &grid, base::DataVector &alpha, size_t levelSum, std::vector< std::shared_ptr< base::HashGridPoint >> &candidates) override
 Load the next candidate set that contains grid points with the currently explored levelsum. More...
 
size_t numCandidates () override
 
base::DataVectornumCandidatesPerIteration () override
 
 OperationMakePositiveFindIntersectionCandidates (size_t maxLevel)
 
virtual ~OperationMakePositiveFindIntersectionCandidates ()
 
- Public Member Functions inherited from sgpp::datadriven::OperationMakePositiveCandidateSetAlgorithm
size_t costsComputingCandidates ()
 
base::DataVectorcostsComputingCandidatesPerIteration ()
 
base::DataVectornumCandidatesPerLevel ()
 
 OperationMakePositiveCandidateSetAlgorithm (size_t maxLevel)
 Constructor. More...
 
void setVerbose (bool pverbose)
 Set verbosity level. More...
 
virtual ~OperationMakePositiveCandidateSetAlgorithm ()
 Desctructor. More...
 

Protected Member Functions

void computeIntersection (base::HashGridPoint &gpi, base::HashGridPoint &gpj, base::HashGridPoint &gpintersection)
 
virtual void findIntersections (base::Grid &grid, base::DataVector &alpha, size_t levelSum, std::unordered_map< size_t, std::shared_ptr< base::HashGridPoint >> &res)
 
bool haveOverlappingSupport (base::HashGridPoint &gpi, base::HashGridPoint &gpj, size_t dim)
 
bool haveOverlappingSupport (base::HashGridPoint &gpi, base::HashGridPoint &gpj)
 
virtual void initializeCandidates (base::Grid &grid, std::vector< size_t > &negativeGridPoints)
 
- Protected Member Functions inherited from sgpp::datadriven::OperationMakePositiveCandidateSetAlgorithm
void findNodesWithNegativeCoefficients (base::DataVector &alpha, std::vector< size_t > &negativeGridPoints, double tol=-1e-14)
 Extract grid points with negative coefficient. More...
 

Static Protected Member Functions

static bool compareGridPointsByHash (const std::shared_ptr< base::HashGridPoint > &lhs, const std::shared_ptr< base::HashGridPoint > &rhs)
 

Protected Attributes

std::unordered_map< size_t, std::shared_ptr< base::HashGridPoint > > candidates
 
std::set< std::shared_ptr< base::HashGridPoint >, HashGridPointComparecurrentIntersections
 
std::unordered_map< size_t, std::shared_ptr< std::vector< std::shared_ptr< base::HashGridPoint > > > > intersections
 
std::set< std::shared_ptr< base::HashGridPoint >, HashGridPointComparenextIntersections
 
base::DataVector numCandidatesIteration
 
- Protected Attributes inherited from sgpp::datadriven::OperationMakePositiveCandidateSetAlgorithm
base::DataVector costsPerIteration
 comparison costs per iteration More...
 
base::DataVector gridPointsPerLevel
 candiddate grid points per level More...
 
size_t iteration
 iteration counter More...
 
size_t maxLevel
 maximum full grid level for the candidate set More...
 
bool verbose
 verbosity level More...
 

Constructor & Destructor Documentation

◆ OperationMakePositiveFindIntersectionCandidates()

sgpp::datadriven::OperationMakePositiveFindIntersectionCandidates::OperationMakePositiveFindIntersectionCandidates ( size_t  maxLevel)
explicit

◆ ~OperationMakePositiveFindIntersectionCandidates()

sgpp::datadriven::OperationMakePositiveFindIntersectionCandidates::~OperationMakePositiveFindIntersectionCandidates ( )
virtual

Member Function Documentation

◆ compareGridPointsByHash()

bool sgpp::datadriven::OperationMakePositiveFindIntersectionCandidates::compareGridPointsByHash ( const std::shared_ptr< base::HashGridPoint > &  lhs,
const std::shared_ptr< base::HashGridPoint > &  rhs 
)
staticprotected

◆ computeIntersection()

◆ findIntersections()

◆ haveOverlappingSupport() [1/2]

◆ haveOverlappingSupport() [2/2]

bool sgpp::datadriven::OperationMakePositiveFindIntersectionCandidates::haveOverlappingSupport ( base::HashGridPoint gpi,
base::HashGridPoint gpj 
)
protected

◆ initializeCandidates()

◆ nextCandidates()

void sgpp::datadriven::OperationMakePositiveFindIntersectionCandidates::nextCandidates ( base::Grid grid,
base::DataVector alpha,
size_t  levelSum,
std::vector< std::shared_ptr< base::HashGridPoint >> &  candidates 
)
overridevirtual

◆ numCandidates()

size_t sgpp::datadriven::OperationMakePositiveFindIntersectionCandidates::numCandidates ( )
overridevirtual
Returns
total number of candidates

Implements sgpp::datadriven::OperationMakePositiveCandidateSetAlgorithm.

References candidates.

◆ numCandidatesPerIteration()

base::DataVector & sgpp::datadriven::OperationMakePositiveFindIntersectionCandidates::numCandidatesPerIteration ( )
overridevirtual

Member Data Documentation

◆ candidates

std::unordered_map<size_t, std::shared_ptr<base::HashGridPoint> > sgpp::datadriven::OperationMakePositiveFindIntersectionCandidates::candidates
protected

◆ currentIntersections

◆ intersections

◆ nextIntersections

◆ numCandidatesIteration


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