11 #ifndef ROOSTATS_AsymptoticCalculator
12 #define ROOSTATS_AsymptoticCalculator
16 #ifndef ROOSTATS_HypoTestCalculatorGeneric
53 bool nominalAsimov =
false
83 static double GetExpectedPValues(
double pnull,
double palt,
double nsigma,
bool usecls,
bool oneSided =
true );
90 void SetTwoSided() { fOneSided =
false; fOneSidedDiscovery =
false;}
98 fIsInitialized =
false;
102 fIsInitialized =
false;
106 fIsInitialized =
false;
110 bool IsTwoSided()
const {
return (!fOneSided && !fOneSidedDiscovery); }
142 &binVolume,
int &ibin);
155 mutable
bool fOneSidedDiscovery;
157 mutable
bool fIsInitialized;
158 mutable
int fUseQTilde;
159 static
int fgPrintLevel;
160 mutable
double fNLLObs;
161 mutable
double fNLLAsimov;
static RooAbsData * GenerateAsimovData(const RooAbsPdf &pdf, const RooArgSet &observables)
bool Initialize() const
initialize the calculator by performin g a global fit and make the Asimov data set ...
virtual void SetNullModel(const ModelConfig &nullModel)
re-implementation of setters since they are needed to re-initialize the calculator ...
ModelConfig is a simple class that holds configuration information specifying how a model should be u...
virtual HypoTestResult * GetHypoTest() const
re-implement HypoTest computation using the asymptotic
static double GetExpectedPValues(double pnull, double palt, double nsigma, bool usecls, bool oneSided=true)
function given the null and the alt p value - return the expected one given the N - sigma value ...
HypoTestResult is a base class for results from hypothesis tests.
AsymptoticCalculator(RooAbsData &data, const ModelConfig &altModel, const ModelConfig &nullModel, bool nominalAsimov=false)
ClassDef(AsymptoticCalculator, 2) private bool fOneSidedDiscovery
static void SetPrintLevel(int level)
static RooAbsData * GenerateCountingAsimovData(RooAbsPdf &pdf, const RooArgSet &obs, const RooRealVar &weightVar, RooCategory *channelCat=0)
Common base class for the Hypothesis Test Calculators.
static RooAbsData * MakeAsimovData(RooAbsData &data, const ModelConfig &model, const RooArgSet &poiValues, RooArgSet &globObs, const RooArgSet *genPoiValues=0)
make the asimov data from the ModelConfig and list of poi - return data set annd snapshoot of global ...
static void FillBins(const RooAbsPdf &pdf, const RooArgList &obs, RooAbsData &data, int &index, double &binVolume, int &ibin)
#define ClassDef(name, id)
const RooArgSet & GetBestFitParams() const
return best fit value for all parameters
void SetQTilde(bool on)
set using of qtilde, by default is controlled if RoORealVar is limited or not
virtual void SetData(RooAbsData &data)
static double EvaluateNLL(RooAbsPdf &pdf, RooAbsData &data, const RooArgSet *condObs, const RooArgSet *poiSet=0)
void SetTwoSided()
set the test statistics for two sided (in case of upper limits for discovery does not make really sen...
static bool SetObsToExpected(RooAbsPdf &pdf, const RooArgSet &obs)
const RooRealVar * GetMuHat() const
return best fit parameter (firs of poi)
virtual void SetAlternateModel(const ModelConfig &altModel)
Namespace for the RooStats classes.
const RooArgSet & GetBestFitPoi() const
return snapshot of the best fit parameter
void SetOneSidedDiscovery(bool on)
set the test statistics for one-sided discovery
void SetOneSided(bool on)
set test statistic for one sided (upper limits)
RooAbsPdf is the abstract interface for all probability density functions The class provides hybrid a...
virtual void SetData(RooAbsData &data)
virtual void SetAlternateModel(const ModelConfig &altModel)
bool IsOneSidedDiscovery() const
virtual void SetNullModel(const ModelConfig &nullModel)
Hypothesis Test Calculator based on the asymptotic formulae for the profile likelihood ratio...
static RooAbsData * GenerateAsimovDataSinglePdf(const RooAbsPdf &pdf, const RooArgSet &obs, const RooRealVar &weightVar, RooCategory *channelCat=0)