11 #ifndef ROOT_Math_GoFTest 12 #define ROOT_Math_GoFTest 62 GoFTest(UInt_t sample1Size,
const Double_t* sample1, UInt_t sample2Size,
const Double_t* sample2);
70 Double_t xmin = 1, Double_t xmax = 0)
72 Instantiate(sample, sampleSize);
73 SetUserDistribution<Dist>(
dist, userDist, xmin, xmax);
78 Double_t xmin = 1, Double_t xmax = 0)
80 Instantiate(sample, sampleSize);
81 SetUserDistribution(dist, userDist, xmin, xmax);
88 SetDistributionFunction(wdist, userDist, xmin, xmax);
93 SetDistributionFunction(dist, userDist, xmin, xmax);
99 SetUserDistribution<Dist>(pdf, kPDF, xmin, xmax);
104 SetUserDistribution(pdf, kPDF, xmin, xmax);
112 SetUserDistribution<Dist>(cdf, kCDF, xmin, xmax);
117 SetUserDistribution(cdf, kCDF, xmin, xmax);
132 void AndersonDarling2SamplesTest(Double_t& pvalue, Double_t& testStat)
const;
133 Double_t AndersonDarling2SamplesTest(
const Char_t* option =
"p")
const;
142 void AndersonDarlingTest(Double_t& pvalue, Double_t& testStat)
const;
143 Double_t AndersonDarlingTest(
const Char_t* option =
"p")
const;
150 void KolmogorovSmirnov2SamplesTest(Double_t& pvalue, Double_t& testStat)
const;
151 Double_t KolmogorovSmirnov2SamplesTest(
const Char_t* option =
"p")
const;
158 void KolmogorovSmirnovTest(Double_t& pvalue, Double_t& testStat)
const;
159 Double_t KolmogorovSmirnovTest(
const Char_t* option =
"p")
const;
162 void operator()(
ETestType test, Double_t& pvalue, Double_t& testStat)
const;
166 Double_t operator()(
ETestType test = kAD,
const Char_t* option =
"p")
const;
170 static Double_t PValueADKSamples(UInt_t nsamples, Double_t A2 );
181 std::unique_ptr<IGenFunction>
fCDF;
196 void SetDistributionFunction(
const IGenFunction& cdf, Bool_t isPDF, Double_t xmin, Double_t xmax);
198 void Instantiate(
const Double_t* sample, UInt_t sampleSize);
201 Double_t LogNormalCDF(Double_t
x)
const;
202 Double_t GaussianCDF(Double_t
x)
const;
203 Double_t ExponentialCDF(Double_t
x)
const;
205 static Double_t GetSigmaN(
const std::vector<UInt_t> & ns, UInt_t
N);
207 static Double_t InterpolatePValues(
int nsamples,Double_t A2);
210 Double_t PValueAD1Sample(Double_t A2)
const;
214 void SetSamples(std::vector<const Double_t*> samples,
const std::vector<UInt_t> samplesSizes);
216 void SetParameters();
double dist(Rotation3D const &r1, Rotation3D const &r2)
Interface (abstract class) for generic functions objects of one-dimension Provides a method to evalua...
Namespace for new ROOT classes and functions.
std::vector< Double_t > fCombinedSamples
void SetUserCDF(Dist &cdf, Double_t xmin=1, Double_t xmax=0)
Template class to wrap any C++ callable object which takes one argument i.e.
void SetUserDistribution(const IGenFunction &dist, GoFTest::EUserDistribution userDist=kPDF, Double_t xmin=1, Double_t xmax=0)
std::unique_ptr< IGenFunction > fCDF
double Dist(void *xp, void *yp)
Class describing the binned data sets : vectors of x coordinates, y values and optionally error on y ...
* x
Deprecated and error prone model selection interface.
std::vector< std::vector< Double_t > > fSamples
Namespace for new Math classes and functions.
GoFTest(UInt_t sampleSize, const Double_t *sample, const IGenFunction &dist, EUserDistribution userDist=kPDF, Double_t xmin=1, Double_t xmax=0)
void SetUserPDF(Dist &pdf, Double_t xmin=1, Double_t xmax=0)
void SetUserCDF(const IGenFunction &cdf, Double_t xmin=1, Double_t xmax=0)
GoFTest(UInt_t sampleSize, const Double_t *sample, Dist &dist, EUserDistribution userDist=kPDF, Double_t xmin=1, Double_t xmax=0)
void SetUserPDF(const IGenFunction &pdf, Double_t xmin=1, Double_t xmax=0)
void SetUserDistribution(Dist &dist, EUserDistribution userDist=kPDF, Double_t xmin=1, Double_t xmax=0)