ROOT logo
ROOT » ROOFIT » ROOSTATS » RooStats::CombinedCalculator

class RooStats::CombinedCalculator: public RooStats::IntervalCalculator, public RooStats::HypoTestCalculator

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:

  • a model common model (eg. a family of specific models which includes both the null and alternate),
  • a data set,
  • a set of parameters of which specify the null (including values and const/non-const status),
  • a set of parameters of which specify the alternate (including values and const/non-const status),
  • a set of parameters of nuisance parameters (including values and const/non-const status).
The interface allows one to pass the model, data, and parameters via a workspace and then specify them with names. The interface also allows one to pass the model, data, and parameters without a workspace (which is created internally).

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.

Function Members (Methods)

    This is an abstract class, constructors will not be documented.
    Look at the header to check for available constructors.

static TClass*Class()
virtual Double_tConfidenceLevel() const
virtual RooStats::HypoTestResult*GetHypoTest() const
virtual RooStats::ConfInterval*GetInterval() const
virtual TClass*IsA() const
RooStats::CombinedCalculator&operator=(const RooStats::CombinedCalculator&)
virtual voidSetAlternateModel(const RooStats::ModelConfig&)
virtual voidSetAlternateParameters(const RooArgSet& set)
virtual voidRooStats::HypoTestCalculator::SetCommonModel(const RooStats::ModelConfig& model)
virtual voidSetConfidenceLevel(Double_t cl)
virtual voidSetData(RooAbsData& data)
virtual voidSetModel(const RooStats::ModelConfig& model)
virtual voidSetNuisanceParameters(const RooArgSet& set)
virtual voidSetNullModel(const RooStats::ModelConfig&)
virtual voidSetNullParameters(const RooArgSet& set)
virtual voidSetParameters(const RooArgSet& set)
virtual voidSetPdf(RooAbsPdf& pdf)
virtual voidSetTestSize(Double_t size)
virtual voidShowMembers(TMemberInspector& insp, char* parent)
virtual Double_tSize() const
virtual voidStreamer(TBuffer& b)
voidStreamerNVirtual(TBuffer& b)
RooAbsData*GetData() const
RooAbsPdf*GetPdf() const

Data Members

RooArgSetfAlternateParamsRooArgSet specifying alternate parameters for hypothesis test // Is it used ????
RooArgSetfNuisParamsRooArgSet specifying nuisance parameters for interval
RooArgSetfNullParamsRooArgSet specifying null parameters for hypothesis test
RooArgSetfPOIRooArgSet specifying parameters of interest for interval
Double_tfSizesize of the test (eg. specified rate of Type I error)

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

SetTestSize(Double_t size)
SetModel(const RooStats::ModelConfig& model)
virtual ~CombinedCalculator()
{ }
ConfInterval* GetInterval() const
 Main interface to get a ConfInterval, pure virtual
HypoTestResult* GetHypoTest() const
 main interface to get a HypoTestResult, pure virtual
void SetConfidenceLevel(Double_t cl)
 set the confidence level for the interval (eg. 0.95 for a 95% Confidence Interval)
{fSize = 1.-cl;}
Double_t Size() const
 Get the size of the test (eg. rate of Type I error)
{return fSize;}
Double_t ConfidenceLevel() const
 Get the Confidence level for the test
{return 1.-fSize;}
void SetData(RooAbsData& data)
 Set the DataSet, add to the the workspace if not already there
void SetNullModel(const RooStats::ModelConfig& )
void SetAlternateModel(const RooStats::ModelConfig& )
void SetPdf(RooAbsPdf& pdf)
specific setting - keep for convenience-  some of them could be removed
 Set the Pdf
{ fPdf = &pdf; }
void SetParameters(const RooArgSet& set)
 specify the parameters of interest in the interval
{ fPOI.removeAll(); fPOI.add(set); }
void SetNuisanceParameters(const RooArgSet& set)
 specify the nuisance parameters (eg. the rest of the parameters)
void SetNullParameters(const RooArgSet& set)
 set parameter values for the null if using a common PDF
void SetAlternateParameters(const RooArgSet& set)
 set parameter values for the alternate if using a common PDF
RooAbsPdf * GetPdf() const
{ return fPdf; }
RooAbsData * GetData() const
{ return fData; }