virtual int | RooStats::HypoTestCalculatorGeneric::CheckHook() const |
static double | EvaluateNLL(RooAbsPdf& pdf, RooAbsData& data, const RooArgSet* poiSet = 0) |
static void | FillBins(const RooAbsPdf& pdf, const RooArgList& obs, RooAbsData& data, int& index, double& binVolume, int& ibin) |
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) |
virtual int | RooStats::HypoTestCalculatorGeneric::PreAltHook(RooArgSet*, double) const |
virtual int | RooStats::HypoTestCalculatorGeneric::PreNullHook(RooArgSet*, double) const |
static void | SetObsToExpected(RooProdPdf& prod, const RooArgSet& obs) |
static void | SetObsToExpected(RooPoisson& pois, const RooArgSet& obs) |
RooAbsData* | fAsimovData | asimov data set |
RooArgSet | fAsimovGlobObs | snapshot of Asimov global observables |
RooArgSet | fBestFitPoi | snapshot of best fitted POI values |
double | fNLLAsimov | |
double | fNLLObs | |
bool | fOneSided | |
int | fUseQTilde | flag to indicate if using qtilde or not (-1 (default based on RooRealVar)), 0 false, 1 (true) |
static int | fgPrintLevel | control print level (0 minimal, 1 normal, 2 debug) |
constructor for asymptotic calculator from Data set and ModelConfig The constructor will perform a global fit of the model to the data and build an Asimov data set. It will then also fit the model to the Asimov data set to find the likelihood value of the Asimov data set NOTE: If a fit has been done before, one for speeding up could set all the initial prameters to the fit value and in addition set the null snapshot to the best fit
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
function given the null and the alt p value - return the expected one given the N - sigma value
fill bins by looping recursivly on observables
iterate a Prod pdf to find the Poisson part to set the observed value to expected one
set observed value in Poisson to the expected one need to iterate on the components of the POisson to get n and nu (nu can be a RooAbsReal) (code from G. Petrucciani)
generate countuing Asimov data for the case when the pdf cannot be extended assume pdf is a RooPoisson or can be decomposed in a product of RooPoisson, otherwise we cannot know how to make the Asimov data sets in the other cases
compute the asimov data set for an observable of a pdf use the number of bins sets in the observables to do : (possibility to change number of bins) impelment integration over bin content
generate the asimov data for the observables (not the global ones) need to deal with the case of a sim pdf
static function to the an Asimov data set given an observed dat set, a model and a snapshot of poi. Return the asimov data set + global observables set to values satisfying the constraints
HypoTestCalculatorGeneric(data, altModel, nullModel, 0) { }
get expected limit static void GetExpectedLimit(double nsigma, double alpha, double &clsblimit, double &clslimit);
{ fOneSided = on; }
set using of qtilde, by default is controlled if RoORealVar is limited or not
{ fUseQTilde = on; }