73 double GetBIC(
const double llh,
const int data,
const int nPars);
84 const std::vector<double>& PValVec,
85 const double Threshold = 0.05);
105 double GetSubOptimality(
const std::vector<double>& EigenValues,
const int TotalTarameters);
118 void GetGaussian(TH1D*& hist, TF1* gauss,
double&
Mean,
double& Error);
127 void GetHPD(TH1D*
const hist,
double&
Mean,
double& Error,
double& Error_p,
double& Error_m,
const double coverage = 0.6827);
133 void GetCredibleInterval(
const std::unique_ptr<TH1D>& hist, std::unique_ptr<TH1D>& hpost_copy,
const double coverage = 0.6827);
140 void GetCredibleIntervalSig(
const std::unique_ptr<TH1D>& hist, std::unique_ptr<TH1D>& hpost_copy,
const bool CredibleInSigmas,
const double coverage = 0.6827);
145 void GetCredibleRegion(std::unique_ptr<TH2D>& hist2D,
const double coverage = 0.6827);
151 void GetCredibleRegionSig(std::unique_ptr<TH2D>& hist2D,
const bool CredibleInSigmas,
const double coverage = 0.6827);
155 double GetIQR(TH1D *Hist);
176 void ThinningMCMC(
const std::string& FilePath,
const int ThinningCut);
189 double GetZScore(
const double value,
const double mean,
const double stddev);
#define _MaCh3_Safe_Include_Start_
KS: Avoiding warning checking for headers.
#define _MaCh3_Safe_Include_End_
KS: Restore warning checking after including external headers.
TestStatistic
Make an enum of the test statistic that we're using.
double GetSigmaValue(const int sigma)
KS: Convert sigma from normal distribution into percentage.
double ComputeKLDivergence(TH2Poly *DataPoly, TH2Poly *PolyMC)
Compute the Kullback-Leibler divergence between two TH2Poly histograms.
void GetCredibleIntervalSig(const std::unique_ptr< TH1D > &hist, std::unique_ptr< TH1D > &hpost_copy, const bool CredibleInSigmas, const double coverage=0.6827)
KS: Get 1D histogram within credible interval, hpost_copy has to have the same binning,...
double GetSubOptimality(const std::vector< double > &EigenValues, const int TotalTarameters)
Based on .
void GetCredibleRegion(std::unique_ptr< TH2D > &hist2D, const double coverage=0.6827)
KS: Set 2D contour within some coverage.
double GetBIC(const double llh, const int data, const int nPars)
Get the Bayesian Information Criterion (BIC) or Schwarz information criterion (also SIC,...
double GetPValueFromZScore(const double zScore)
Compute the P-value from a given Z-score.
void Get2DBayesianpValue(TH2D *Histogram)
Calculates the 2D Bayesian p-value and generates a visualization.
double GetZScore(const double value, const double mean, const double stddev)
Compute the Z-score for a given value.
void GetGaussian(TH1D *&hist, TF1 *gauss, double &Mean, double &Error)
CW: Fit Gaussian to posterior.
double GetModeError(TH1D *hpost)
Get the mode error from a TH1D.
double GetAndersonDarlingTestStat(const double CumulativeData, const double CumulativeMC, const double CumulativeJoint)
double FisherCombinedPValue(const std::vector< double > &pvalues)
KS: Combine p-values using Fisher's method.
void PassErrorToRatioPlot(TH1D *RatioHist, TH1D *Hist1, TH1D *DataHist)
void GetCredibleRegionSig(std::unique_ptr< TH2D > &hist2D, const bool CredibleInSigmas, const double coverage=0.6827)
KS: Set 2D contour within some coverage.
double GetIQR(TH1D *Hist)
Interquartile Range (IQR)
void ThinningMCMC(const std::string &FilePath, const int ThinningCut)
Thin MCMC Chain, to save space and maintain low autocorrelations.
std::string GetJeffreysScale(const double BayesFactor)
KS: Following H. Jeffreys .
void GetHPD(TH1D *const hist, double &Mean, double &Error, double &Error_p, double &Error_m, const double coverage=0.6827)
Get Highest Posterior Density (HPD)
double GetNeffective(const int N1, const int N2)
KS: See 14.3.10 in Numerical Recipes in C .
void GetArithmetic(TH1D *const hist, double &Mean, double &Error)
CW: Get Arithmetic mean from posterior.
void GetCredibleInterval(const std::unique_ptr< TH1D > &hist, std::unique_ptr< TH1D > &hpost_copy, const double coverage=0.6827)
KS: Get 1D histogram within credible interval, hpost_copy has to have the same binning,...
std::string GetDunneKaboth(const double BayesFactor)
Convert a Bayes factor into an approximate particle-physics significance level using the Dunne–Kaboth...
int GetNumberOfRuns(const std::vector< int > &GroupClasifier)
KS: https://esjeevanand.uccollege.edu.in/wp-content/uploads/sites/114/2020/08/NON-PARAMTERIC-TEST-6....
void CheckBonferoniCorrectedpValue(const std::vector< std::string > &SampleNameVec, const std::vector< double > &PValVec, const double Threshold=0.05)
KS: For more see https://www.t2k.org/docs/technotes/429/TN429_v8#page=63.
double GetBetaParameter(const double data, const double mc, const double w2, TestStatistic TestStat)
KS: Calculate Beta parameter which will be different based on specified test statistic.
Main namespace for MaCh3 software.
kInfCrit
KS: Different Information Criterion tests mostly based Gelman paper.
@ kWAIC
Watanabe-Akaike information criterion.
@ kInfCrits
This only enumerates.
@ kBIC
Bayesian Information Criterion.
@ kDIC
Deviance Information Criterion.