npstat is hosted by Hepforge, IPPP Durham
NPStat  5.10.0
npstat::LOrPE1DCVFunctorHelper< Numeric, BwFcn, WFcn > Class Template Referenceabstract
Inheritance diagram for npstat::LOrPE1DCVFunctorHelper< Numeric, BwFcn, WFcn >:
npstat::Functor1< double, double > npstat::Functor2< double, double, double > npstat::LOrPE1DLSCVFunctorHelper< Numeric, BwFcn, WFcn > npstat::LOrPE1DRLCVFunctorHelper< Numeric, BwFcn, WFcn >

Public Types

typedef Numeric point_type
 
- Public Types inherited from npstat::Functor1< double, double >
typedef double result_type
 
typedef double first_argument_type
 
- Public Types inherited from npstat::Functor2< double, double, double >
typedef double result_type
 
typedef double first_argument_type
 
typedef double second_argument_type
 

Public Member Functions

 LOrPE1DCVFunctorHelper (const int i_symbetaPower, const double i_leftBoundary, const double i_rightBoundary, const BoundaryHandling &i_bh, const BwFcn &i_bandwidthFunctor, const WFcn &i_localizingWeight, const double i_localizingWeightXmin, const double i_localizingWeightXmax, const unsigned i_nIntegIntervals, const unsigned i_nIntegPoints, const bool i_normalizeLOrPEEstimate, const std::vector< Numeric > &i_coords)
 
void bindFilterDegree (const double deg)
 
void unbindFilterDegree ()
 
double boundFilterDegree () const
 
virtual void setWeights (const double *weights, unsigned long nWeights)
 
int symbetaPower () const
 
double leftBoundary () const
 
double rightBoundary () const
 
BoundaryHandling bh () const
 
double localizingWeightXmin () const
 
double localizingWeighXmax () const
 
unsigned nIntegIntervals () const
 
unsigned nIntegPoints () const
 
bool normalizingLOrPEEstimate () const
 
const std::vector< Numeric > & coords () const
 
unsigned long nCoords () const
 
Numeric minCoordinate () const
 
Numeric maxCoordinate () const
 
double totalSampleWeight () const
 
double effectiveSampleSize () const
 
bool isMemoizingKernels () const
 
bool isMemoizingNorms () const
 
bool isUsingMemoisingKernels () const
 
void memoizeKernels (const bool b)
 
void memoizeNorms (const bool b)
 
void useMemoisingKernels (const bool b)
 
void clearMemoizedInfo ()
 
void clearKernel ()
 
double pointCoordinate (const unsigned long i) const
 
double pointWeight (const unsigned long i) const
 
double bandwidthCurve (const double x) const
 
double cvLocalizingWeight (const double x) const
 
LOrPE1DCVLocalizingWeightFunctor< LOrPE1DCVFunctorHelper< Numeric, BwFcn, WFcn > > cvLocalizingWeightFunctor () const
 
double density (const double x, const double filterDegree, const double bwFactor) const
 
double density (const double x, const double bwFactor) const
 
LOrPE1DCVDensityFunctor< LOrPE1DCVFunctorHelper< Numeric, BwFcn, WFcn > > densityFunctor (const double filterDegree, const double bwFactor) const
 
LOrPE1DCVDensityFunctor< LOrPE1DCVFunctorHelper< Numeric, BwFcn, WFcn > > densityFunctor (const double bwFactor) const
 
LOrPE1D< Numeric > getLOrPE1D (const double filterDegree, const double bwFactor) const
 
LOrPE1D< Numeric > getLOrPE1D (const double bwFactor) const
 
double operator() (const double &filterDegree, const double &bwFactor) const
 
double operator() (const double &bwFactor) const
 
double densityIntegral (const double filterDegree, const double bwFactor) const
 
double densityIntegral (const double bwFactor) const
 
double integratedSquaredError (const AbsDistribution1D &distro, const double filterDegree, const double bwFactor) const
 
double integratedSquaredError (const AbsDistribution1D &distro, const double bwFactor) const
 

Static Public Member Functions

static bool cvCapable ()
 

Protected Types

typedef MultFunctor< BwFcn > BwFunctor
 
typedef std::map< std::pair< double, double >, double > MapOfNorms
 
typedef std::map< double, std::shared_ptr< LOrPE1DSymbetaKernel > > MapOfKernels
 

Protected Member Functions

virtual double pointContribution (double selfC, double leaveOneOutEstimate, double pointWeight, double localWeight) const =0
 
virtual double valueToMaximize (double sum) const =0
 
LOrPE1DFunctorHelper< Numeric, BwFunctorbwDensityFunctor (const double bwFactor) const
 

Protected Attributes

std::vector< Numeric > coords_
 
double sampleWeight_
 
double effSampleSize_
 
std::shared_ptr< LOrPE1DSymbetaKernelkernel_
 
double lastBwFactor_
 
double lastNorm_
 
double boundFilterDegree_
 
int symbetaPower_
 
double leftBoundary_
 
double rightBoundary_
 
BoundaryHandling bh_
 
BwFcn bandwidthFunctor_
 
WFcn localizingWeight_
 
double xminForWeight_
 
double xmaxForWeight_
 
unsigned nIntegIntervals_
 
unsigned nIntegPoints_
 
bool normalize_
 
bool memoizeKernels_
 
bool memoizeNorms_
 
bool useMemoisingKernels_
 
MapOfNorms mapOfNorms_
 
MapOfKernels mapOfKernels_
 

Member Function Documentation

◆ cvCapable()

template<typename Numeric , class BwFcn , class WFcn >
static bool npstat::LOrPE1DCVFunctorHelper< Numeric, BwFcn, WFcn >::cvCapable ( )
inlinestatic

Is this class capable of cross-validation?

◆ densityIntegral()

template<typename Numeric , class BwFcn , class WFcn >
double npstat::LOrPE1DCVFunctorHelper< Numeric, BwFcn, WFcn >::densityIntegral ( const double  filterDegree,
const double  bwFactor 
) const
inline

This method will return meaningful results only if the automatic normalization is not turned on

◆ normalizingLOrPEEstimate()

template<typename Numeric , class BwFcn , class WFcn >
bool npstat::LOrPE1DCVFunctorHelper< Numeric, BwFcn, WFcn >::normalizingLOrPEEstimate ( ) const
inline

Is the density estimate auto-normalizing?

◆ setWeights()

template<typename Numeric , class BwFcn , class WFcn >
virtual void npstat::LOrPE1DCVFunctorHelper< Numeric, BwFcn, WFcn >::setWeights ( const double *  weights,
unsigned long  nWeights 
)
inlinevirtual

This method with throw std::runtime_error if Numeric is not an std::pair

Reimplemented in npstat::LOrPE1DRLCVFunctorHelper< Numeric, BwFcn, WFcn >.


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