TestStatistic that returns the ratio of profiled likelihoods.
By default the calculation is:
\[ \log{ \frac{ \lambda(\mu_{alt} , {conditional \: MLE \: for \: alt \: nuisance}) } { \lambda(\mu_{null} , {conditional \: MLE \: for \: null \: nuisance}) } } \]
where \( \lambda \) is the profile likelihood ratio, so the MLE for the null and alternate are subtracted off.
If SetSubtractMLE(false)
then it calculates:
\[ \log{ \frac{ L(\mu_{alt} , {conditional \: MLE \: for \: alt \: nuisance}) } { L(\mu_{null} , {conditional \: MLE \: for \: null \: nuisance}) } } \]
where \( L \) is the Likelihood function.
The values of the parameters of interest for the alternative hypothesis are taken at the time of the construction. If empty, it treats all free parameters as nuisance parameters.
The value of the parameters of interest for the null hypotheses are given at each call of Evaluate.
This test statistic is often called the Tevatron test statistic, because it has been used by the Tevatron experiments.
Definition at line 24 of file RatioOfProfiledLikelihoodsTestStat.h.
Public Member Functions | |
RatioOfProfiledLikelihoodsTestStat () | |
RatioOfProfiledLikelihoodsTestStat (RooAbsPdf &nullPdf, RooAbsPdf &altPdf, const RooArgSet *altPOI=nullptr) | |
~RatioOfProfiledLikelihoodsTestStat (void) override | |
virtual void | EnableDetailedOutput (bool e=true) |
double | Evaluate (RooAbsData &data, RooArgSet &nullParamsOfInterest) override |
evaluate the ratio of profile likelihood | |
const RooArgSet * | GetDetailedOutput (void) const override |
Returns detailed output. | |
const TString | GetVarName () const override |
TClass * | IsA () const override |
double | ProfiledLikelihood (RooAbsData &data, RooArgSet &poi, RooAbsPdf &pdf) |
returns -logL(poi, conditional MLE of nuisance params) it does not subtract off the global MLE because nuisance parameters of null and alternate may not be the same. | |
void | SetConditionalObservables (const RooArgSet &set) override |
set the conditional observables which will be used when creating the NLL so the pdf's will not be normalized on the conditional observables when computing the NLL | |
void | SetGlobalObservables (const RooArgSet &set) override |
set the global observables which will be used when creating the NLL so the constraint pdf's will be normalized correctly on the global observables when computing the NLL | |
void | SetMinimizer (const char *minimizer) |
void | SetPrintLevel (Int_t printLevel) |
void | SetReuseNLL (bool flag) |
void | SetStrategy (Int_t strategy) |
void | SetSubtractMLE (bool subtract) |
void | SetTolerance (double tol) |
void | Streamer (TBuffer &) override |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
Public Member Functions inherited from RooStats::TestStatistic | |
virtual | ~TestStatistic () |
virtual bool | PValueIsRightTail (void) const |
Defines the sign convention of the test statistic. Overwrite function if necessary. | |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
Static Public Member Functions | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
static void | SetAlwaysReuseNLL (bool flag) |
Static Public Member Functions inherited from RooStats::TestStatistic | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
Private Attributes | |
RooArgSet * | fAltPOI |
ProfileLikelihoodTestStat | fAltProfile |
RooArgSet * | fDetailedOutput |
bool | fDetailedOutputEnabled |
ProfileLikelihoodTestStat | fNullProfile |
bool | fSubtractMLE |
Static Private Attributes | |
static bool | fgAlwaysReuseNll = true |
#include <RooStats/RatioOfProfiledLikelihoodsTestStat.h>
|
inline |
Definition at line 27 of file RatioOfProfiledLikelihoodsTestStat.h.
|
inline |
Definition at line 38 of file RatioOfProfiledLikelihoodsTestStat.h.
|
inlineoverride |
Definition at line 56 of file RatioOfProfiledLikelihoodsTestStat.h.
|
static |
|
static |
|
inlinestaticconstexpr |
Definition at line 146 of file RatioOfProfiledLikelihoodsTestStat.h.
|
inlinestatic |
Definition at line 146 of file RatioOfProfiledLikelihoodsTestStat.h.
|
inlinevirtual |
Definition at line 71 of file RatioOfProfiledLikelihoodsTestStat.h.
|
overridevirtual |
evaluate the ratio of profile likelihood
Implements RooStats::TestStatistic.
Definition at line 88 of file RatioOfProfiledLikelihoodsTestStat.cxx.
|
inlineoverridevirtual |
Returns detailed output.
The value returned by this function is updated after each call to Evaluate(). The returned RooArgSet contains the following for the alternative and null hypotheses:
Reimplemented from RooStats::TestStatistic.
Definition at line 119 of file RatioOfProfiledLikelihoodsTestStat.h.
|
inlineoverridevirtual |
Implements RooStats::TestStatistic.
Definition at line 126 of file RatioOfProfiledLikelihoodsTestStat.h.
|
inlineoverridevirtual |
Reimplemented from RooStats::TestStatistic.
Definition at line 146 of file RatioOfProfiledLikelihoodsTestStat.h.
double RooStats::RatioOfProfiledLikelihoodsTestStat::ProfiledLikelihood | ( | RooAbsData & | data, |
RooArgSet & | poi, | ||
RooAbsPdf & | |||
) |
returns -logL(poi, conditional MLE of nuisance params) it does not subtract off the global MLE because nuisance parameters of null and alternate may not be the same.
returns -logL(poi, conditional MLE of nuisance params) subtract off the global MLE or not depending on the option It is the numerator or the denominator of the ratio (depending on the pdf)
L.M. : not sure why this method is needed now
Definition at line 68 of file RatioOfProfiledLikelihoodsTestStat.cxx.
|
static |
Definition at line 59 of file RatioOfProfiledLikelihoodsTestStat.cxx.
|
inlineoverridevirtual |
set the conditional observables which will be used when creating the NLL so the pdf's will not be normalized on the conditional observables when computing the NLL
Reimplemented from RooStats::TestStatistic.
Definition at line 103 of file RatioOfProfiledLikelihoodsTestStat.h.
|
inlineoverridevirtual |
set the global observables which will be used when creating the NLL so the constraint pdf's will be normalized correctly on the global observables when computing the NLL
Reimplemented from RooStats::TestStatistic.
Definition at line 110 of file RatioOfProfiledLikelihoodsTestStat.h.
|
inline |
Definition at line 84 of file RatioOfProfiledLikelihoodsTestStat.h.
|
inline |
Definition at line 96 of file RatioOfProfiledLikelihoodsTestStat.h.
|
inline |
Definition at line 79 of file RatioOfProfiledLikelihoodsTestStat.h.
|
inline |
Definition at line 88 of file RatioOfProfiledLikelihoodsTestStat.h.
|
inline |
Definition at line 130 of file RatioOfProfiledLikelihoodsTestStat.h.
|
inline |
Definition at line 92 of file RatioOfProfiledLikelihoodsTestStat.h.
|
overridevirtual |
Reimplemented from RooStats::TestStatistic.
|
inline |
Definition at line 146 of file RatioOfProfiledLikelihoodsTestStat.h.
|
private |
Definition at line 137 of file RatioOfProfiledLikelihoodsTestStat.h.
|
private |
Definition at line 135 of file RatioOfProfiledLikelihoodsTestStat.h.
|
private |
Definition at line 142 of file RatioOfProfiledLikelihoodsTestStat.h.
|
private |
Definition at line 141 of file RatioOfProfiledLikelihoodsTestStat.h.
|
staticprivate |
Definition at line 139 of file RatioOfProfiledLikelihoodsTestStat.h.
|
private |
Definition at line 134 of file RatioOfProfiledLikelihoodsTestStat.h.
|
private |
Definition at line 138 of file RatioOfProfiledLikelihoodsTestStat.h.