![]() |
ROOT
6.07/01
Reference Guide
|
Hypothesis Test Calculator based on the asymptotic formulae for the profile likelihood ratio.
See G. Cowan, K. Cranmer, E. Gross and O. Vitells: Asymptotic formulae for likelihood- based tests of new physics. Eur. Phys. J., C71:1–19, 2011. It provides method to perform an hypothesis tests using the likelihood function and computes the p values for the null and the alternate using the asymptotic formulae for the profile likelihood ratio described in the given paper.
The calculator provides methods to produce the Asimov dataset, i.e a dataset generated where the observade values are equal to the expected ones. The Asimov data set is then used to compute the observed asymptotic p-value for the alternate hypothesis and the asympotic expected p-values.
The asymptotic formulae are valid only for one POI (parameter of interest). So the calculator works only for one-dimesional (one POI) model. If more than one POI exists consider as POI only the first one is used.
Definition at line 46 of file AsymptoticCalculator.h.
Public Member Functions | |
AsymptoticCalculator (RooAbsData &data, const ModelConfig &altModel, const ModelConfig &nullModel, bool nominalAsimov=false) | |
~AsymptoticCalculator () | |
bool | Initialize () const |
initialize the calculator by performin g a global fit and make the Asimov data set More... | |
virtual HypoTestResult * | GetHypoTest () const |
re-implement HypoTest computation using the asymptotic More... | |
void | SetOneSided (bool on) |
set test statistic for one sided (upper limits) More... | |
void | SetTwoSided () |
set the test statistics for two sided (in case of upper limits for discovery does not make really sense) More... | |
void | SetOneSidedDiscovery (bool on) |
set the test statistics for one-sided discovery More... | |
virtual void | SetNullModel (const ModelConfig &nullModel) |
re-implementation of setters since they are needed to re-initialize the calculator More... | |
virtual void | SetAlternateModel (const ModelConfig &altModel) |
virtual void | SetData (RooAbsData &data) |
bool | IsTwoSided () const |
bool | IsOneSidedDiscovery () const |
void | SetQTilde (bool on) |
set using of qtilde, by default is controlled if RoORealVar is limited or not More... | |
const RooArgSet & | GetBestFitPoi () const |
return snapshot of the best fit parameter More... | |
const RooRealVar * | GetMuHat () const |
return best fit parameter (firs of poi) More... | |
const RooArgSet & | GetBestFitParams () const |
return best fit value for all parameters More... | |
![]() | |
HypoTestCalculatorGeneric (const RooAbsData &data, const ModelConfig &altModel, const ModelConfig &nullModel, TestStatSampler *sampler=0) | |
Constructor. More... | |
~HypoTestCalculatorGeneric () | |
const RooAbsData * | GetData (void) const |
const ModelConfig * | GetNullModel (void) const |
virtual const RooArgSet * | GetFitInfo () const |
const ModelConfig * | GetAlternateModel (void) const |
TestStatSampler * | GetTestStatSampler (void) const |
void | UseSameAltToys () |
to re-use same toys for alternate hypothesis More... | |
![]() | |
virtual | ~HypoTestCalculator () |
virtual void | SetCommonModel (const ModelConfig &model) |
Static Public Member Functions | |
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 obs poiValues is the snapshot of POI used for finding the best buisance parameter values (conditioned at these values) genPoiValues is optionally a different set of POI values used for generating. More... | |
static RooAbsData * | MakeAsimovData (const ModelConfig &model, const RooArgSet &allParamValues, RooArgSet &globObs) |
make a nominal asimov data from the ModelConfig and parameter values The parameter values (including the nunisance) could be given from a fit to data or be at the nominal values More... | |
static RooAbsData * | GenerateAsimovData (const RooAbsPdf &pdf, const RooArgSet &observables) |
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 More... | |
static void | SetPrintLevel (int level) |
Static Protected Member Functions | |
static RooAbsData * | GenerateAsimovDataSinglePdf (const RooAbsPdf &pdf, const RooArgSet &obs, const RooRealVar &weightVar, RooCategory *channelCat=0) |
static RooAbsData * | GenerateCountingAsimovData (RooAbsPdf &pdf, const RooArgSet &obs, const RooRealVar &weightVar, RooCategory *channelCat=0) |
static void | FillBins (const RooAbsPdf &pdf, const RooArgList &obs, RooAbsData &data, int &index, double &binVolume, int &ibin) |
static double | EvaluateNLL (RooAbsPdf &pdf, RooAbsData &data, const RooArgSet *condObs, const RooArgSet *poiSet=0) |
static bool | SetObsToExpected (RooAbsPdf &pdf, const RooArgSet &obs) |
static bool | SetObsToExpected (RooProdPdf &prod, const RooArgSet &obs) |
Protected Attributes | |
ClassDef(AsymptoticCalculator, 2) private bool | fOneSidedDiscovery |
bool | fNominalAsimov |
bool | fIsInitialized |
int | fUseQTilde |
flag to check if calculator is initialized More... | |
double | fNLLObs |
double | fNLLAsimov |
RooAbsData * | fAsimovData |
RooArgSet | fAsimovGlobObs |
RooArgSet | fBestFitPoi |
RooArgSet | fBestFitParams |
![]() | |
const ModelConfig * | fAltModel |
const ModelConfig * | fNullModel |
const RooAbsData * | fData |
TestStatSampler * | fTestStatSampler |
TestStatSampler * | fDefaultSampler |
TestStatistic * | fDefaultTestStat |
unsigned int | fAltToysSeed |
Static Protected Attributes | |
static int | fgPrintLevel = 1 |
Additional Inherited Members | |
![]() | |
virtual int | CheckHook (void) const |
virtual int | PreNullHook (RooArgSet *, double) const |
virtual int | PreAltHook (RooArgSet *, double) const |
virtual void | PreHook () const |
virtual void | PostHook () const |
#include <RooStats/AsymptoticCalculator.h>
AsymptoticCalculator::AsymptoticCalculator | ( | RooAbsData & | data, |
const ModelConfig & | altModel, | ||
const ModelConfig & | nullModel, | ||
bool | nominalAsimov = false |
||
) |
Definition at line 65 of file AsymptoticCalculator.cxx.
|
inline |
Definition at line 59 of file AsymptoticCalculator.h.
|
staticprotected |
Definition at line 262 of file AsymptoticCalculator.cxx.
Referenced by GetHypoTest(), and Initialize().
|
staticprotected |
Definition at line 818 of file AsymptoticCalculator.cxx.
Referenced by GenerateAsimovDataSinglePdf().
|
static |
Definition at line 1081 of file AsymptoticCalculator.cxx.
Referenced by MakeAsimovData().
|
staticprotected |
Definition at line 1003 of file AsymptoticCalculator.cxx.
Referenced by GenerateAsimovData().
|
staticprotected |
Definition at line 968 of file AsymptoticCalculator.cxx.
Referenced by GenerateAsimovDataSinglePdf().
|
inline |
return best fit value for all parameters
Definition at line 122 of file AsymptoticCalculator.h.
|
inline |
return snapshot of the best fit parameter
Definition at line 118 of file AsymptoticCalculator.h.
|
static |
function given the null and the alt p value - return the expected one given the N - sigma value
Definition at line 770 of file AsymptoticCalculator.cxx.
Referenced by RooStats::HypoTestInverterResult::GetExpectedPValueDist().
|
virtual |
re-implement HypoTest computation using the asymptotic
It performs an hypothesis tests using the likelihood function and computes the p values for the null and the alternate using the asymptotic formulae for the profile likelihood ratio.
See G. Cowan, K. Cranmer, E. Gross and O. Vitells. Asymptotic formulae for likelihood- based tests of new physics. Eur. Phys. J., C71:1–19, 2011. The formulae are valid only for one POI. If more than one POI exists consider as POI only the first one
Reimplemented from RooStats::HypoTestCalculatorGeneric.
Definition at line 441 of file AsymptoticCalculator.cxx.
|
inline |
return best fit parameter (firs of poi)
Definition at line 120 of file AsymptoticCalculator.h.
bool AsymptoticCalculator::Initialize | ( | ) | const |
initialize the calculator by performin g a global fit and make the Asimov data set
Definition at line 94 of file AsymptoticCalculator.cxx.
Referenced by AsymptoticCalculator(), and GetHypoTest().
|
inline |
Definition at line 111 of file AsymptoticCalculator.h.
|
inline |
Definition at line 110 of file AsymptoticCalculator.h.
Referenced by RooStats::HypoTestInverter::CreateResults().
|
static |
make the asimov data from the ModelConfig and list of poi - return data set annd snapshoot of global obs poiValues is the snapshot of POI used for finding the best buisance parameter values (conditioned at these values) genPoiValues is optionally a different set of POI values used for generating.
static function to the an Asimov data set given an observed dat set, a model and a snapshot of poi.
By default the same POI are used for generating and for finding the nuisance parameters
Return the asimov data set + global observables set to values satisfying the constraints
Definition at line 1153 of file AsymptoticCalculator.cxx.
Referenced by Initialize().
|
static |
make a nominal asimov data from the ModelConfig and parameter values The parameter values (including the nunisance) could be given from a fit to data or be at the nominal values
static function to the an Asimov data set given the model and the values of all parameters including the nuisance Return the asimov data set + global observables set to values satisfying the constraints
Definition at line 1256 of file AsymptoticCalculator.cxx.
|
inlinevirtual |
Reimplemented from RooStats::HypoTestCalculatorGeneric.
Definition at line 100 of file AsymptoticCalculator.h.
|
inlinevirtual |
Reimplemented from RooStats::HypoTestCalculatorGeneric.
Definition at line 104 of file AsymptoticCalculator.h.
|
inlinevirtual |
re-implementation of setters since they are needed to re-initialize the calculator
Reimplemented from RooStats::HypoTestCalculatorGeneric.
Definition at line 96 of file AsymptoticCalculator.h.
|
staticprotected |
Definition at line 912 of file AsymptoticCalculator.cxx.
Referenced by GenerateCountingAsimovData(), and SetObsToExpected().
|
staticprotected |
Definition at line 882 of file AsymptoticCalculator.cxx.
|
inline |
set test statistic for one sided (upper limits)
Definition at line 86 of file AsymptoticCalculator.h.
|
inline |
set the test statistics for one-sided discovery
Definition at line 93 of file AsymptoticCalculator.h.
|
static |
Definition at line 58 of file AsymptoticCalculator.cxx.
|
inline |
set using of qtilde, by default is controlled if RoORealVar is limited or not
Definition at line 115 of file AsymptoticCalculator.h.
|
inline |
set the test statistics for two sided (in case of upper limits for discovery does not make really sense)
Definition at line 90 of file AsymptoticCalculator.h.
|
mutableprotected |
Definition at line 163 of file AsymptoticCalculator.h.
Referenced by GetHypoTest(), and Initialize().
|
mutableprotected |
Definition at line 164 of file AsymptoticCalculator.h.
Referenced by GetHypoTest(), and Initialize().
|
mutableprotected |
Definition at line 166 of file AsymptoticCalculator.h.
Referenced by GetHypoTest(), and Initialize().
|
mutableprotected |
Definition at line 165 of file AsymptoticCalculator.h.
Referenced by GetBestFitParams(), GetBestFitPoi(), GetHypoTest(), GetMuHat(), and Initialize().
|
staticprotected |
Definition at line 159 of file AsymptoticCalculator.h.
Referenced by AsymptoticCalculator(), EvaluateNLL(), FillBins(), GenerateAsimovData(), GenerateAsimovDataSinglePdf(), GenerateCountingAsimovData(), GetHypoTest(), Initialize(), MakeAsimovData(), and SetObsToExpected().
|
mutableprotected |
Definition at line 157 of file AsymptoticCalculator.h.
Referenced by GetHypoTest(), Initialize(), SetAlternateModel(), SetData(), and SetNullModel().
|
mutableprotected |
Definition at line 161 of file AsymptoticCalculator.h.
Referenced by GetHypoTest(), and Initialize().
|
mutableprotected |
Definition at line 160 of file AsymptoticCalculator.h.
Referenced by GetHypoTest(), and Initialize().
|
protected |
Definition at line 156 of file AsymptoticCalculator.h.
Referenced by Initialize().
|
mutableprotected |
Definition at line 150 of file AsymptoticCalculator.h.
Referenced by AsymptoticCalculator(), GetHypoTest(), IsOneSidedDiscovery(), IsTwoSided(), SetOneSidedDiscovery(), and SetTwoSided().
|
mutableprotected |
flag to check if calculator is initialized
Definition at line 158 of file AsymptoticCalculator.h.
Referenced by GetHypoTest(), and SetQTilde().