npstat is hosted by Hepforge, IPPP Durham
NPStat  5.10.0
npstat::BernsteinCopulaSmoother Class Reference

#include <BernsteinCopulaSmoother.hh>

Inheritance diagram for npstat::BernsteinCopulaSmoother:
npstat::CVCopulaSmoother< SequentialPolyFilterND > npstat::AbsCVCopulaSmoother npstat::AbsCopulaSmootherBase

Public Types

typedef CVCopulaSmoother< SequentialPolyFilterNDBase
 
- Public Types inherited from npstat::CVCopulaSmoother< SequentialPolyFilterND >
typedef AbsBandwidthCVND< double, ArrayND< double > > CVCalc
 
typedef SequentialPolyFilterND Filter
 

Public Member Functions

 BernsteinCopulaSmoother (const unsigned *nBinsInEachDim, unsigned dim, double marginTolerance, unsigned maxNormCycles, const CVCalc *cvCalc, bool becomeCvCalcOwner, const Matrix< int > &polyDegreesToUse)
 
- Public Member Functions inherited from npstat::AbsCVCopulaSmoother
bool isConvolving () const
 
void setConvolving (const bool b)
 
const std::vector< double > & bandwidthValues () const
 
const std::vector< double > & lastCVValues () const
 
const std::vector< double > & lastRegularizedFractions () const
 
unsigned getNFilters () const
 
unsigned lastFilterChosen () const
 
- Public Member Functions inherited from npstat::AbsCopulaSmootherBase
 AbsCopulaSmootherBase (const unsigned *nBinsInEachDim, unsigned dim, double tolerance, unsigned maxNormCycles)
 
unsigned dim () const
 
ArrayShape copulaShape () const
 
void setArchive (gs::AbsArchive *ar, const char *category=0)
 
template<class Point >
const HistoND< double > & smooth (unsigned long uniqueId, std::vector< OrderedPointND< Point > > &in, double *bandwidthUsed=0)
 
template<class Point >
const HistoND< double > & weightedSmooth (unsigned long uniqueId, const std::vector< std::pair< const Point *, double > > &in, const unsigned *dimsToUse, unsigned nDimsToUse, double *bandwidthUsed=0)
 

Additional Inherited Members

- Protected Member Functions inherited from npstat::CVCopulaSmoother< SequentialPolyFilterND >
 CVCopulaSmoother (const unsigned *nBinsInEachDim, unsigned dim, double marginTolerance, unsigned maxNormCycles, double initialBw, const CVCalc *cvCalc, bool becomeCvCalcOwner, double cvRange, unsigned nCV, bool useConvolve)
 
 CVCopulaSmoother (const unsigned *nBinsInEachDim, unsigned dim, double marginTolerance, unsigned maxNormCycles, const std::vector< double > &bandwidthValues, const CVCalc *cvCalc, bool becomeCvCalcOwner, bool useConvolve)
 
void setFilter (unsigned i, Filter *filter)
 
- Protected Member Functions inherited from npstat::AbsCVCopulaSmoother
 AbsCVCopulaSmoother (const unsigned *nBinsInEachDim, unsigned dim, double marginTolerance, unsigned maxNormCycles, double initialBw, double cvRange, unsigned nCV, bool useConvolve)
 
 AbsCVCopulaSmoother (const unsigned *nBinsInEachDim, unsigned dim, double marginTolerance, unsigned maxNormCycles, const std::vector< double > &bandwidthValues, bool useConvolve)
 

Detailed Description

This class builds multivariate copula filters which are tensor products of univariate Bernstein polynomial filters

Constructor & Destructor Documentation

◆ BernsteinCopulaSmoother()

npstat::BernsteinCopulaSmoother::BernsteinCopulaSmoother ( const unsigned *  nBinsInEachDim,
unsigned  dim,
double  marginTolerance,
unsigned  maxNormCycles,
const CVCalc cvCalc,
bool  becomeCvCalcOwner,
const Matrix< int > &  polyDegreesToUse 
)

Constructor arguments are as follows:

nBinsInEachDim – number of copula bins in each dimension

dim – copula dimensionality

marginTolerance – tolerance for the margin to be uniform

maxNormCycles – max number of copula normalization cycles

cvCalc – calculator for the quantity being optimized in the cross validation process. May be NULL in which case cross validation will not be used.

becomeCvCalcOwner – tells us whether we should destroy cvCalc in our own destructor

polyDegreesToUse – Bernstein polynomial degrees to try. The row number of the matrix corresponds to the "trial" number and the column number gives the Bernstein polynomial degree for the corresponding dimension.


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