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

Conditionalize Probability Density Function. More...

#include <OperationDensityConditional.hpp>

Inheritance diagram for sgpp::datadriven::OperationDensityConditional:
sgpp::datadriven::OperationDensityConditionalLinear

Public Member Functions

virtual void doConditional (base::DataVector &alpha, base::Grid *&mg, base::DataVector &malpha, unsigned int mdim, double xbar)
 Conditional (Density) Functions. More...
 
 OperationDensityConditional (base::Grid *grid)
 
virtual ~OperationDensityConditional ()
 

Protected Attributes

base::Gridgrid
 

Detailed Description

Conditionalize Probability Density Function.

Constructor & Destructor Documentation

◆ OperationDensityConditional()

sgpp::datadriven::OperationDensityConditional::OperationDensityConditional ( base::Grid grid)
inlineexplicit

◆ ~OperationDensityConditional()

virtual sgpp::datadriven::OperationDensityConditional::~OperationDensityConditional ( )
inlinevirtual

References alpha, and doConditional().

Member Function Documentation

◆ doConditional()

void sgpp::datadriven::OperationDensityConditional::doConditional ( base::DataVector alpha,
base::Grid *&  mg,
base::DataVector malpha,
unsigned int  mdim,
double  xbar 
)
virtual

Conditional (Density) Functions.

Parameters
alphaCoefficient vector for current grid
mgReferenz of grid pointer
malphaCoefficient vector for new grid (mg). Will be resized.
mdimMarginalize in dimension mdim
xbarPoint at which to conditionalize

Assume: mdim = 1 Compute vector with values (phi_{l1,i1}(xbar) = phi_{l1,i1}(xbar)*phi_{l2,i2}(0.5)

Compute theta = theta + alpha_{l,i}*zeta_{l,i}*int{phi_{l2, i_2}}

Generate d - 1 dimensional grid, as in marginalize

Note: Because of adaptively refined sparse grids, we cannot simply generate a regular grid. Thus, we need to add point after point to the new grid mg

Compute coefficients malpha for grid mg

Reimplemented in sgpp::datadriven::OperationDensityConditionalLinear.

References sgpp::base::Grid::createGridOfEquivalentType(), sgpp::base::Grid::getBasis(), sgpp::base::HashGridStorage::getDimension(), sgpp::base::HashGridPoint::getIndex(), sgpp::base::HashGridPoint::getLevel(), sgpp::base::HashGridStorage::getPoint(), sgpp::base::HashGridStorage::getSequenceNumber(), sgpp::base::HashGridStorage::getSize(), sgpp::base::DataVector::getSize(), sgpp::base::Grid::getStorage(), grid, sgpp::base::HashGridStorage::insert(), sgpp::base::HashGridStorage::isContaining(), sgpp::base::DataVector::mult(), sgpp::base::HashGridStorage::recalcLeafProperty(), sgpp::base::HashGridPoint::set(), and sgpp::base::DataVector::setAll().

Referenced by sgpp::datadriven::OperationDensitySamplingLinear::doSampling_in_next_dim(), sgpp::datadriven::OperationInverseRosenblattTransformationBsplineBoundary::doTransformation_in_next_dim(), sgpp::datadriven::OperationInverseRosenblattTransformationModPoly::doTransformation_in_next_dim(), sgpp::datadriven::OperationRosenblattTransformationPolyBoundary::doTransformation_in_next_dim(), sgpp::datadriven::OperationRosenblattTransformationBsplineBoundary::doTransformation_in_next_dim(), sgpp::datadriven::OperationRosenblattTransformationLinear::doTransformation_in_next_dim(), sgpp::datadriven::OperationRosenblattTransformationModBspline::doTransformation_in_next_dim(), sgpp::datadriven::OperationInverseRosenblattTransformationPoly::doTransformation_in_next_dim(), sgpp::datadriven::OperationRosenblattTransformationModPoly::doTransformation_in_next_dim(), sgpp::datadriven::OperationRosenblattTransformationPoly::doTransformation_in_next_dim(), sgpp::datadriven::OperationInverseRosenblattTransformationBspline::doTransformation_in_next_dim(), sgpp::datadriven::OperationInverseRosenblattTransformationLinear::doTransformation_in_next_dim(), sgpp::datadriven::OperationRosenblattTransformationBspline::doTransformation_in_next_dim(), sgpp::datadriven::OperationInverseRosenblattTransformationPolyBoundary::doTransformation_in_next_dim(), sgpp::datadriven::OperationInverseRosenblattTransformationModBspline::doTransformation_in_next_dim(), sgpp::datadriven::OperationInverseRosenblattTransformationModBsplineClenshawCurtis::doTransformation_in_next_dim(), sgpp::datadriven::OperationRosenblattTransformationModPolyClenshawCurtis::doTransformation_in_next_dim(), sgpp::datadriven::OperationInverseRosenblattTransformationModPolyClenshawCurtis::doTransformation_in_next_dim(), sgpp::datadriven::OperationRosenblattTransformationBsplineClenshawCurtis::doTransformation_in_next_dim(), sgpp::datadriven::OperationInverseRosenblattTransformationBsplineClenshawCurtis::doTransformation_in_next_dim(), sgpp::datadriven::OperationInverseRosenblattTransformationPolyClenshawCurtisBoundary::doTransformation_in_next_dim(), sgpp::datadriven::OperationRosenblattTransformationPolyClenshawCurtis::doTransformation_in_next_dim(), sgpp::datadriven::OperationInverseRosenblattTransformationPolyClenshawCurtis::doTransformation_in_next_dim(), sgpp::datadriven::OperationRosenblattTransformationModBsplineClenshawCurtis::doTransformation_in_next_dim(), sgpp::datadriven::OperationRosenblattTransformationPolyClenshawCurtisBoundary::doTransformation_in_next_dim(), and ~OperationDensityConditional().

Member Data Documentation

◆ grid


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