ROOT logo
ROOT » ROOFIT » ROOSTATS » RooStats::HybridResult

class RooStats::HybridResult: public RooStats::HypoTestResult


HybridResult class: this class is a fresh rewrite in RooStats of
	RooStatsCms/LimitResults developped by D. Piparo and G. Schott
New contributions to this class have been written by Matthias Wolf (error estimation)

The objects of this class store and access with lightweight methods the
information calculated by LimitResults through a Lent calculation using
MC toy experiments.
In some ways can be considered an extended and extensible implementation of the
TConfidenceLevel class (http://root.cern.ch/root/html/TConfidenceLevel.html).


Function Members (Methods)

public:
virtual~HybridResult()
voidTObject::AbstractMethod(const char* method) const
voidAdd(RooStats::HybridResult* other)
virtual Double_tAlternatePValue() const
virtual voidRooStats::HypoTestResult::Append(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_tRooStats::HypoTestResult::CLb() const
Double_tCLbError() const
virtual voidTNamed::Clear(Option_t* option = "")
virtual TObject*TNamed::Clone(const char* newname = "") const
virtual Double_tRooStats::HypoTestResult::CLs() const
Double_tCLsError() const
virtual Double_tRooStats::HypoTestResult::CLsplusb() 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
RooStats::SamplingDistribution*RooStats::HypoTestResult::GetAltDistribution() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const char*TObject::GetIconName() const
virtual const char*TNamed::GetName() const
RooStats::SamplingDistribution*RooStats::HypoTestResult::GetNullDistribution() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
RooStats::HybridPlot*GetPlot(const char* name, const char* title, int n_bins)
Bool_tRooStats::HypoTestResult::GetPValueIsRightTail()
vector<double>GetTestStat_b()
doubleGetTestStat_data()
vector<double>GetTestStat_sb()
Double_tRooStats::HypoTestResult::GetTestStatisticData() const
virtual const char*TNamed::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTNamed::Hash() const
Bool_tRooStats::HypoTestResult::HasTestStatisticData() const
RooStats::HybridResultHybridResult(const char* name = 0)
RooStats::HybridResultHybridResult(const RooStats::HybridResult&)
RooStats::HybridResultHybridResult(const char* name, const vector<double>& testStat_sb_vals, const vector<double>& testStat_b_vals, bool sumLargerValues = true)
RooStats::HypoTestResultRooStats::HypoTestResult::HypoTestResult(const char* name = 0)
RooStats::HypoTestResultRooStats::HypoTestResult::HypoTestResult(const RooStats::HypoTestResult&)
RooStats::HypoTestResultRooStats::HypoTestResult::HypoTestResult(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
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static 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::HybridResult&operator=(const RooStats::HybridResult&)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidRooStats::HypoTestResult::Print(Option_t*) const
voidPrintMore(const char* options)
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(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
voidRooStats::HypoTestResult::SetAltDistribution(RooStats::SamplingDistribution* alt)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidSetDataTestStatistics(double testStat_data_val)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
virtual voidTNamed::SetName(const char* name)MENU
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
voidRooStats::HypoTestResult::SetNullDistribution(RooStats::SamplingDistribution* null)
static voidTObject::SetObjectStat(Bool_t stat)
voidRooStats::HypoTestResult::SetPValueIsRightTail(Bool_t pr)
voidRooStats::HypoTestResult::SetTestStatisticData(const Double_t tsd)
virtual voidTNamed::SetTitle(const char* title = "")MENU
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector& insp)
virtual Double_tRooStats::HypoTestResult::Significance() const
virtual Int_tTNamed::Sizeof() const
virtual voidStreamer(TBuffer& b)
voidStreamerNVirtual(TBuffer& 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
protected:
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()

Data Members

private:
boolfComputationsAltDoneFlagflag if the fAlternatePValue computation have been already done or not (ie need to be refreshed)
boolfComputationsNulDoneFlagflag if the fNullPValue computation have been already done or not (ie need to be refreshed)
boolfSumLargerValuesp-value for velues of testStat >= testStat_data (or testStat <= testStat_data)
vector<double>fTestStat_bvector of results for B-only toy-MC
doublefTestStat_dataresults (test statistics) evaluated for data
vector<double>fTestStat_sbvector of results for S+B toy-MC

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

HybridResult(const char* name = 0)
 HybridResult default constructor (with name )
HybridResult(const char* name, const vector<double>& testStat_sb_vals, const vector<double>& testStat_b_vals, bool sumLargerValues = true)
 HybridResult constructor (with name, title and vectors of S+B and B values)
~HybridResult()
 HybridResult destructor
void SetDataTestStatistics(double testStat_data_val)
 set the value of the test statistics on data
double NullPValue() const
 return 1-CL_b : the B p-value
double AlternatePValue() const
 return CL_s+b : the S+B p-value
Double_t CLbError() const
 Returns an estimate of the error on CLb assuming a binomial error on
 CLb:

#sigma_{CL_{b}} &=& #sqrt{CL_{b} #left( 1 - CL_{b} #right) / n_{toys}}
Double_t CLsplusbError() const
 Returns an estimate of the error on CLsplusb assuming a binomial
 error on CLsplusb:

#sigma_{CL_{s+b}} &=& #sqrt{CL_{s+b} #left( 1 - CL_{s+b} #right) / n_{toys}}
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 #sqrt{#left( #frac{#sigma_{CL_{s+b}}}{CL_{s+b}} #right)^2 + #left( #frac{#sigma_{CL_{b}}}{CL_{b}} #right)^2}
void Add(RooStats::HybridResult* other)
 add additional toy-MC experiments to the current results
 use the data test statistics of the added object if none is already present (otherwise, ignore the new one)
HybridPlot* GetPlot(const char* name, const char* title, int n_bins)
 prepare a plot showing a result and return a pointer to a HybridPlot object
 the needed arguments are: an object name, a title and the number of bins in the plot
void PrintMore(const char* options)
 Print out some information about the results
explicit HybridResult(const char* name = 0)
 Default constructor
std::vector<double> GetTestStat_sb()
 Get test statistics values for the sb model
{return fTestStat_sb;}
std::vector<double> GetTestStat_b()
 Get test statistics values for the b model
{return fTestStat_b;}
double GetTestStat_data()
 Get test statistics value for data
{ return fTestStat_data;}