npstat is hosted by Hepforge, IPPP Durham
NPStat  5.10.0
npstat::AbsCopulaSmootherBase Class Referenceabstract

#include <AbsCopulaSmootherBase.hh>

Inheritance diagram for npstat::AbsCopulaSmootherBase:
npstat::AbsCVCopulaSmoother npstat::CVCopulaSmoother< LocalPolyFilterND< MaxLOrPEDeg > > npstat::CVCopulaSmoother< KDEFilterND< MaxKDEDeg > > npstat::CVCopulaSmoother< SequentialPolyFilterND > npstat::GCVCopulaSmoother< LocalPolyFilterND< MaxLOrPEDeg > > npstat::GCVCopulaSmoother< KDEFilterND< MaxKDEDeg > > npstat::GCVCopulaSmoother< SequentialPolyFilterND > npstat::CVCopulaSmoother< F > npstat::GCVCopulaSmoother< F >

Public Member Functions

 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)
 

Detailed Description

Interface definition for classes which build discrete copulas out of data samples (typically, by LOrPE, KDE, or some other nonparametric method). The derived classes are supposed to override the "smoothHistogram" member function.

Constructor & Destructor Documentation

◆ AbsCopulaSmootherBase()

npstat::AbsCopulaSmootherBase::AbsCopulaSmootherBase ( const unsigned *  nBinsInEachDim,
unsigned  dim,
double  tolerance,
unsigned  maxNormCycles 
)

Parameters "tolerance" and "maxNormaCycles" define how many copula normalization cycles to perform after smoothing. These cycles make sure that the resulting distribution has uniform marginal densities. The cycles are needed because, in general, marginals are not preserved by smoothing procedures.

Member Function Documentation

◆ copulaShape()

ArrayShape npstat::AbsCopulaSmootherBase::copulaShape ( ) const
inline

Return the shape of the copula array

◆ setArchive()

void npstat::AbsCopulaSmootherBase::setArchive ( gs::AbsArchive *  ar,
const char *  category = 0 
)

Set the archive for storing the histograms

◆ smooth()

template<class Point >
const HistoND<double>& npstat::AbsCopulaSmootherBase::smooth ( unsigned long  uniqueId,
std::vector< OrderedPointND< Point > > &  in,
double *  bandwidthUsed = 0 
)

Smoothing function for unweighted samples

◆ weightedSmooth()

template<class Point >
const HistoND<double>& npstat::AbsCopulaSmootherBase::weightedSmooth ( unsigned long  uniqueId,
const std::vector< std::pair< const Point *, double > > &  in,
const unsigned *  dimsToUse,
unsigned  nDimsToUse,
double *  bandwidthUsed = 0 
)

Smoothing function for weighted samples


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