27 #define BCMATH_NFACT_ALIMIT 20
44 double LogGaus(
double x,
double mean = 0,
double sigma = 1,
bool norm =
false);
104 double LogBreitWignerRel(
double x,
double mean,
double Gamma);
110 double LogChi2(
double x,
int n);
125 double LogVoigtian(
double x,
double sigma,
double gamma);
130 double LogGammaPDF(
double x,
double alpha,
double beta);
135 double LogLogNormal(
double x,
double mean = 0,
double sigma = 1);
141 void RandomChi2(std::vector<double> &randoms,
int K);
152 TH1D*
ECDF(
const std::vector<double>& data);
161 std::vector<int>
longestRuns(
const std::vector<bool>& bitStream);
173 std::vector<double>
longestRunsChi2(
const std::vector<double>& yMeasured,
174 const std::vector<double>& yExpected,
const std::vector<double>& sigma);
188 double longestRunFrequency(
unsigned int longestObserved,
unsigned int nTrials);
217 double Rvalue(
const std::vector<double> & chain_means,
const std::vector<double> & chain_variances,
218 const unsigned & chain_length,
const bool & strict =
true) throw (std::invalid_argument, std::domain_error);
231 double CorrectPValue(const
double & pvalue, const
unsigned & npar, const
unsigned & nobservations) throw (std::domain_error);
243 double FastPValue(const std::vector<
unsigned> & observed, const std::vector<
double> & expected,
244 unsigned nIterations = 1e5,
unsigned seed = 0) throw (std::invalid_argument);
double LogLogNormal(double x, double mean, double sigma)
double FastPValue(const std::vector< unsigned > &observed, const std::vector< double > &expected, unsigned nIterations, unsigned seed)
double SplitGaussian(double *x, double *par)
double LogBreitWignerNonRel(double x, double mean, double Gamma, bool norm)
double LogNoverK(int n, int k)
double LogChi2(double x, int n)
double LogGammaPDF(double x, double alpha, double beta)
double CorrectPValue(const double &pvalue, const unsigned &npar, const unsigned &nobservations)
std::vector< int > longestRuns(const std::vector< bool > &bitStream)
double LogBinomFactor(int n, int k)
double ApproxLogFact(double x)
double LogVoigtian(double x, double sigma, double gamma)
void RandomChi2(std::vector< double > &randoms, int K)
void CacheFactorial(unsigned int n)
double LogGaus(double x, double mean, double sigma, bool norm)
double Rvalue(const std::vector< double > &chain_means, const std::vector< double > &chain_variances, const unsigned &chain_length, const bool &strict)
double ApproxBinomial(int n, int k, double p)
double LogApproxBinomial(int n, int k, double p)
double LogPoisson(double x, double par)
std::vector< double > longestRunsChi2(const std::vector< double > &yMeasured, const std::vector< double > &yExpected, const std::vector< double > &sigma)
TH1D * ECDF(const std::vector< double > &data)