CombinedCalculator is an interface class for a tools which can produce both RooStats HypoTestResults and ConfIntervals. The interface currently assumes that any such calculator can be configured by specifying:
After configuring the calculator, one only needs to ask GetHypoTest() (which will return a HypoTestResult pointer) or GetInterval() (which will return an ConfInterval pointer).
The concrete implementations of this interface should deal with the details of how the nuisance parameters are dealt with (eg. integration vs. profiling) and which test-statistic is used (perhaps this should be added to the interface).
The motivation for this interface is that we hope to be able to specify the problem in a common way for several concrete calculators.
RooAbsData* | GetData() const |
RooAbsPdf* | GetPdf() const |
RooArgSet | fAlternateParams | RooArgSet specifying alternate parameters for hypothesis test // Is it used ???? |
RooArgSet | fConditionalObs | RooArgSet specifying the conditional observables |
RooAbsData* | fData | |
RooArgSet | fNuisParams | RooArgSet specifying nuisance parameters for interval |
RooArgSet | fNullParams | RooArgSet specifying null parameters for hypothesis test |
RooArgSet | fPOI | RooArgSet specifying parameters of interest for interval |
RooAbsPdf* | fPdf | |
Double_t | fSize | size of the test (eg. specified rate of Type I error) |
constructor from data and model configuration
set the confidence level for the interval (eg. 0.95 for a 95% Confidence Interval)
{fSize = 1.-cl;}
specific setting - keep for convenience- some of them could be removed Set the Pdf
{ fPdf = &pdf; }
specify the nuisance parameters (eg. the rest of the parameters)
{fNuisParams.removeAll(); fNuisParams.add(set);}
set parameter values for the null if using a common PDF
{fNullParams.removeAll(); fNullParams.add(set);}
set parameter values for the alternate if using a common PDF
{fAlternateParams.removeAll(); fAlternateParams.add(set);}
set conditional observables needed for computing the NLL
{fConditionalObs.removeAll(); fConditionalObs.add(set);}