69 int type = (fSubtractMLE) ? 0 : 2;
72 if ( &pdf == fNullProfile.GetPdf() )
73 return fNullProfile.EvaluateProfileLikelihood(
type, data, poi);
74 else if (&pdf == fAltProfile.GetPdf() )
75 return fAltProfile.EvaluateProfileLikelihood(
type, data, poi);
77 oocoutE((
TObject*)NULL,InputArguments) <<
"RatioOfProfiledLikelihoods::ProfileLikelihood - invalid pdf used for computing the profiled likelihood - return NaN"
89 int type = (fSubtractMLE) ? 0 : 2;
92 double nullNLL = fNullProfile.EvaluateProfileLikelihood(
type, data, nullParamsOfInterest);
93 const RooArgSet *nullset = fNullProfile.GetDetailedOutput();
96 double altNLL = fAltProfile.EvaluateProfileLikelihood(
type, data, *fAltPOI);
97 const RooArgSet *altset = fAltProfile.GetDetailedOutput();
99 if (fDetailedOutput != NULL) {
100 delete fDetailedOutput;
101 fDetailedOutput = NULL;
103 if (fDetailedOutputEnabled) {
109 fDetailedOutput->addOwned(*cloneVar);
114 fDetailedOutput->addOwned(*cloneVar);
126 return nullNLL -altNLL;
TIterator * createIterator(Bool_t dir=kIterForward) const
TIterator-style iteration over contained elements.
RooAbsData is the common abstract base class for binned and unbinned datasets.
Double_t getVal(const RooArgSet *normalisationSet=nullptr) const
Evaluate object.
RooArgSet is a container object that can hold multiple RooAbsArg objects.
RooRealVar represents a variable that can be changed from the outside.
Double_t ProfiledLikelihood(RooAbsData &data, RooArgSet &poi, RooAbsPdf &pdf)
returns -logL(poi, conditional MLE of nuisance params) subtract off the global MLE or not depending o...
virtual Double_t Evaluate(RooAbsData &data, RooArgSet &nullParamsOfInterest)
evaluate the ratio of profile likelihood
static void SetAlwaysReuseNLL(Bool_t flag)
static Bool_t fgAlwaysReuseNll
Iterator abstract base class.
virtual const char * GetTitle() const
Returns title of object.
virtual const char * GetName() const
Returns name of object.
Mother of all ROOT objects.
static TString Format(const char *fmt,...)
Static method which formats a string using a printf style format descriptor and return a TString.
Double_t QuietNaN()
Returns a quiet NaN as defined by IEEE 754