1 #ifndef NPSTAT_ORTHOPOLYGOFTEST1D_HH_
2 #define NPSTAT_ORTHOPOLYGOFTEST1D_HH_
26 typedef std::pair<double,UUPair> EigenInfo;
31 template <
class Quadrature>
36 const unsigned char* mask=0,
unsigned lenMask=0);
40 virtual std::string shortName()
const;
42 inline unsigned maxDegree()
const {
return maxdeg_;}
43 inline unsigned numDeviations()
const {
return nUnmasked_;}
44 inline bool isEigenvectorUsed(
const unsigned i)
const
45 {
return i >= 2U*maxdeg_ ? false : !mask_[i];}
72 unsigned i,
double threshold)
const;
79 const double* data,
const unsigned long sz,
bool)
const
80 {
return testStat(data, sz);}
83 const float* data,
const unsigned long sz,
bool)
const
84 {
return testStat(data, sz);}
86 inline virtual bool hasAnalyticPValue()
const {
return true;}
88 virtual double analyticPValue(
double stat,
unsigned long sz)
const;
91 double smin,
double smax)
const;
99 template<
typename Numeric>
101 const Numeric* data,
unsigned long lenData,
102 double* deviations,
unsigned lenDeviations)
const;
105 template <
class Quadrature>
106 void calculateNormalizingMatrix(
const Quadrature& q,
108 template<
typename Numeric>
109 double testStat(
const Numeric* data,
unsigned long lenData)
const;
111 std::shared_ptr<const AbsClassicalOrthoPoly1D> poly_;
113 std::vector<double> buf_;
114 std::vector<double> statBuf_;
115 std::vector<double> sqrBuf_;
116 std::vector<unsigned char> mask_;
122 #include "npstat/stat/OrthoPolyGOFTest1D.icc"
Base class for classical continuous orthonormal polynomials.
Interface definition for goodness-of-fit tests for 1-d distributions.
Definition: AbsClassicalOrthoPoly1D.hh:32
Definition: AbsUnbinnedGOFTest1D.hh:24
Definition: OrthoPolyGOFTest1D.hh:24
std::vector< EigenInfo > eigenComponents(unsigned i, double threshold) const
double eigenUncertainty(unsigned i) const
std::vector< double > covmatEigenvector(unsigned i) const
virtual double inverseExceedance(double pvalue, unsigned long sz, double smin, double smax) const
unsigned normalizedDeviations(const Numeric *data, unsigned long lenData, double *deviations, unsigned lenDeviations) const
virtual double testStatistic(const double *data, const unsigned long sz, bool) const
Definition: OrthoPolyGOFTest1D.hh:78
Utility for enumerating pairs on diagonals of symmetric matrices.
Definition: AbsArrayProjector.hh:14
Definition: AbsDistribution1D.hh:31