class RooStats::LikelihoodInterval: public RooStats::ConfInterval


LikelihoodInterval is a concrete implementation of the RooStats::ConfInterval interface. It implements a connected N-dimensional intervals based on the contour of a likelihood ratio. The boundary of the inteval is equivalent to a MINUIT/MINOS contour about the maximum likelihood estimator [1]. The interval does not need to be an ellipse (eg. it is not the HESSE error matrix). The level used to make the contour is the same as that used in MINOS, eg. it uses Wilks' theorem, which states that under certain regularity conditions the function -2* log (profile likelihood ratio) is asymptotically distributed as a chi^2 with N-dof, where N is the number of parameters of interest.

Note, a boundary on the parameter space (eg. s>= 0) or a degeneracy (eg. mass of signal if Nsig = 0) can lead to violations of the conditions necessary for Wilks' theorem to be true.

Also note, one can use any RooAbsReal as the function that will be used in the contour; however, the level of the contour is based on Wilks' theorem as stated above.

References

1 F. James., Minuit.Long writeup D506, CERN, 1998.




Function Members (Methods)

public:
virtual~LikelihoodInterval()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
virtual Bool_tCheckParameters(RooArgSet&) const
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTNamed::Clear(Option_t* option = "")
virtual TObject*TNamed::Clone(const char* newname = "") const
virtual Int_tTNamed::Compare(const TObject* obj) const
virtual Double_tConfidenceLevel() 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
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const char*TObject::GetIconName() const
virtual const char*TNamed::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
virtual RooArgSet*GetParameters() const
virtual const char*TNamed::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTNamed::Hash() const
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
virtual Bool_tIsInInterval(RooArgSet&)
Bool_tTObject::IsOnHeap() const
virtual Bool_tTNamed::IsSortable() const
Bool_tTObject::IsZombie() const
RooStats::LikelihoodIntervalLikelihoodInterval()
RooStats::LikelihoodIntervalLikelihoodInterval(const char* name)
RooStats::LikelihoodIntervalLikelihoodInterval(const RooStats::LikelihoodInterval&)
RooStats::LikelihoodIntervalLikelihoodInterval(const char* name, const char* title)
RooStats::LikelihoodIntervalLikelihoodInterval(const char* name, RooAbsReal*, RooArgSet*)
RooStats::LikelihoodIntervalLikelihoodInterval(const char* name, const char* title, RooAbsReal*, RooArgSet*)
Double_tLowerLimit(RooRealVar& param)
virtual voidTNamed::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
virtual Bool_tTObject::Notify()
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::LikelihoodInterval&operator=(const RooStats::LikelihoodInterval&)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTNamed::Print(Option_t* option = "") 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(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidSetConfidenceLevel(Double_t cl)
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)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidTNamed::SetTitle(const char* title = "")MENU
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector& insp, char* parent)
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
Double_tUpperLimit(RooRealVar& param)
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

public:
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
protected:
TStringTNamed::fNameobject identifier
TStringTNamed::fTitleobject title
private:
Double_tfConfidenceLevelRequested confidence level (eg. 0.95 for 95% CL)
RooAbsReal*fLikelihoodRatiolikelihood ratio function used to make contours
RooArgSet*fParametersparameters of interest for this interval

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

LikelihoodInterval()
 Default constructor
LikelihoodInterval(const char* name)
 Alternate constructor
LikelihoodInterval(const char* name, const char* title)
 Alternate constructor
LikelihoodInterval(const char* name, RooAbsReal* , RooArgSet* )
 Alternate constructor
LikelihoodInterval(const char* name, const char* title, RooAbsReal* , RooArgSet* )
 Alternate constructor
~LikelihoodInterval()
 Destructor
Bool_t IsInInterval(RooArgSet& )
 This is the main method to satisfy the RooStats::ConfInterval interface.
 It returns true if the parameter point is in the interval.
RooArgSet* GetParameters()
 returns list of parameters
Bool_t CheckParameters(RooArgSet& ) const
 check that the parameters are correct
Double_t LowerLimit(RooRealVar& param)
 A binary search to get lower/upper limit for a given parameter.  Slow.
Double_t UpperLimit(RooRealVar& param)
LikelihoodInterval()
void SetConfidenceLevel(Double_t cl)
{fConfidenceLevel = cl;}
Double_t ConfidenceLevel()
{return fConfidenceLevel;}

Author: Kyle Cranmer, Lorenzo Moneta, Gregory Schott, Wouter Verkerke
Last change: root/roostats:$Id: LikelihoodInterval.h 26434 2008-11-24 21:29:32Z moneta $
Last generated: 2008-11-25 08:47
Copyright (C) 1995-2008, Rene Brun and Fons Rademakers. *

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.