ROOT » ROOFIT » ROOSTATS » RooStats::HypoTestResult

class RooStats::HypoTestResult: public TNamed

HypoTestResult is a base class for results from hypothesis tests. Any tool inheriting from HypoTestCalculator can return a HypoTestResult. As such, it stores a p-value for the null-hypothesis (eg. background-only) and an alternate hypothesis (eg. signal+background). The p-values can also be transformed into confidence levels (CLb, CLsplusb) in a trivial way. The ratio of the CLsplusb to CLb is often called CLs, and is considered useful, though it is not a probability. Finally, the p-value of the null can be transformed into a number of equivalent Gaussian sigma using the Significance method.

Function Members (Methods)

voidTObject::AbstractMethod(const char* method) const
virtual Double_tAlternatePValue() const
virtual voidAppend(const RooStats::HypoTestResult* other)
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual Double_tCLb() const
Double_tCLbError() const
virtual voidTNamed::Clear(Option_t* option = "")
virtual TObject*TNamed::Clone(const char* newname = "") const
virtual Double_tCLs() const
Double_tCLsError() const
virtual Double_tCLsplusb() const
Double_tCLsplusbError() const
virtual Int_tTNamed::Compare(const TObject* obj) const
virtual voidTNamed::Copy(TObject& named) const
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual voidTNamed::FillBuffer(char*& buffer)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
const RooArgList*GetAllTestStatisticsData() const
RooDataSet*GetAltDetailedOutput() const
RooStats::SamplingDistribution*GetAltDistribution() const
Bool_tGetBackGroundIsAlt() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
RooDataSet*GetFitInfo() const
virtual const char*TObject::GetIconName() const
virtual const char*TNamed::GetName() const
RooDataSet*GetNullDetailedOutput() const
RooStats::SamplingDistribution*GetNullDistribution() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
Bool_tGetPValueIsRightTail() const
Double_tGetTestStatisticData() const
virtual const char*TNamed::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTNamed::Hash() const
Bool_tHasTestStatisticData() const
RooStats::HypoTestResultHypoTestResult(const char* name = 0)
RooStats::HypoTestResultHypoTestResult(const RooStats::HypoTestResult& other)
RooStats::HypoTestResultHypoTestResult(const char* name, Double_t nullp, Double_t altp)
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTNamed::IsSortable() const
Bool_tTObject::IsZombie() const
virtual voidTNamed::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
virtual Bool_tTObject::Notify()
virtual Double_tNullPValue() const
Double_tNullPValueError() const
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
voidTObject::operator delete(void* ptr)
voidTObject::operator delete(void* ptr, void* vp)
voidTObject::operator delete[](void* ptr)
voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
RooStats::HypoTestResult&operator=(const RooStats::HypoTestResult& other)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidPrint(const Option_t* = "") const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(ostream& out, Option_t* option = "")
voidSetAllTestStatisticsData(const RooArgList* tsd)
voidSetAltDetailedOutput(RooDataSet* d)
voidSetAltDistribution(RooStats::SamplingDistribution* alt)
voidSetBackgroundAsAlt(Bool_t l = kTRUE)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidSetFitInfo(RooDataSet* d)
virtual voidTNamed::SetName(const char* name)MENU
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
voidSetNullDetailedOutput(RooDataSet* d)
voidSetNullDistribution(RooStats::SamplingDistribution* null)
static voidTObject::SetObjectStat(Bool_t stat)
voidSetPValueIsRightTail(Bool_t pr)
voidSetTestStatisticData(const Double_t tsd)
virtual voidTNamed::SetTitle(const char* title = "")MENU
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector& insp) const
virtual Double_tSignificance() const
Double_tSignificanceError() const
virtual Int_tTNamed::Sizeof() const
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidUpdatePValue(const RooStats::SamplingDistribution* distr, Double_t& pvalue, Double_t& perror, Bool_t pIsRightTail)

Data Members

static TObject::(anonymous)TObject::kBitMask
static TObject::EStatusBitsTObject::kCanDelete
static TObject::EStatusBitsTObject::kCannotPick
static TObject::EStatusBitsTObject::kHasUUID
static TObject::EStatusBitsTObject::kInvalidObject
static TObject::(anonymous)TObject::kIsOnHeap
static TObject::EStatusBitsTObject::kIsReferenced
static TObject::EStatusBitsTObject::kMustCleanup
static TObject::EStatusBitsTObject::kNoContextMenu
static TObject::(anonymous)TObject::kNotDeleted
static TObject::EStatusBitsTObject::kObjInCanvas
static TObject::(anonymous)TObject::kOverwrite
static TObject::(anonymous)TObject::kSingleKey
static TObject::(anonymous)TObject::kWriteDelete
static TObject::(anonymous)TObject::kZombie
const RooArgList*fAllTestStatisticsDatafor the case of multiple test statistics, holds all the results
Double_tfAlternatePValuep-value for the alternate hypothesis (small number means disfavored)
Double_tfAlternatePValueErrorerror of p-value for the alternate hypothesis (small number means disfavored)
TStringTNamed::fNameobject identifier
Double_tfNullPValuep-value for the null hypothesis (small number means disfavored)
Double_tfNullPValueErrorerror of p-value for the null hypothesis (small number means disfavored)
Double_tfTestStatisticDataresult of the test statistic evaluated on data
TStringTNamed::fTitleobject title

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

HypoTestResult(const char* name = 0)
 Default constructor
HypoTestResult(const char* name, Double_t nullp, Double_t altp)
 Alternate constructor
HypoTestResult(const RooStats::HypoTestResult& other)
 copy constructor
HypoTestResult & operator=(const RooStats::HypoTestResult& other)
 assignment operator
void Append(const RooStats::HypoTestResult* other)
 Add additional toy-MC experiments to the current results.
 Use the data test statistics of the added object if it is not already
 set (otherwise, ignore the new one).
void SetAltDistribution(RooStats::SamplingDistribution* alt)
void SetNullDistribution(RooStats::SamplingDistribution* null)
void SetTestStatisticData(const Double_t tsd)
void SetAllTestStatisticsData(const RooArgList* tsd)
void SetPValueIsRightTail(Bool_t pr)
Bool_t HasTestStatisticData(void)
Double_t NullPValueError() const
 compute error on Null pvalue
Double_t CLbError() const
 compute CLb error
 Clb =  1 - NullPValue()
 must use opposite condition that routine above
Double_t CLsplusbError() const
Double_t SignificanceError() const
 Taylor expansion series approximation for standard deviation (error propagation)
Double_t CLsError() const
 Returns an estimate of the error on CLs through combination of the
 errors on CLb and CLsplusb:

#sigma_{CL_s} = CL_s
void UpdatePValue(const RooStats::SamplingDistribution* distr, Double_t& pvalue, Double_t& perror, Bool_t pIsRightTail)
 updates the pvalue if sufficient data is available
void Print(const Option_t* = "") const
 Print out some information about the results
 Note: use Alt/Null labels for the hypotheses here as the Null
 might be the s+b hypothesis.
Double_t NullPValue() const
 Return p-value for null hypothesis
{ return fNullPValue; }
Double_t AlternatePValue() const
 Return p-value for alternate hypothesis
{ return fAlternatePValue; }
Double_t CLb() const
 Convert  NullPValue into a "confidence level"
Double_t CLsplusb() const
 Convert  AlternatePValue into a "confidence level"
Double_t CLs() const
 CLs is simply CLs+b/CLb (not a method, but a quantity)
Double_t Significance() const
 familiar name for the Null p-value in terms of 1-sided Gaussian significance
SamplingDistribution* GetNullDistribution(void)
{ return fNullDistr; }
SamplingDistribution* GetAltDistribution(void)
{ return fAltDistr; }
RooDataSet* GetNullDetailedOutput(void)
RooDataSet* GetAltDetailedOutput(void)
{ return fAltDetailedOutput; }
RooDataSet* GetFitInfo(void)
{ return fFitInfo; }
Double_t GetTestStatisticData(void)
{ return fTestStatisticData; }
const RooArgList* GetAllTestStatisticsData(void)
void SetAltDetailedOutput(RooDataSet* d)
void SetNullDetailedOutput(RooDataSet* d)
void SetFitInfo(RooDataSet* d)
{ fFitInfo = d; }
Bool_t GetPValueIsRightTail(void)
{ return fPValueIsRightTail; }
void SetBackgroundAsAlt(Bool_t l = kTRUE)
Bool_t GetBackGroundIsAlt(void)
{ return fBackgroundIsAlt; }