ROOT  6.06/09
Reference Guide
TConfidenceLevel.h
Go to the documentation of this file.
1 // @(#)root/hist:$Id$
2 // Author: Christophe.Delaere@cern.ch 21/08/2002
3 
4 #ifndef ROOT_TConfidenceLevel
5 #define ROOT_TConfidenceLevel
6 
7 #ifndef ROOT_TObject
8 #include "TObject.h"
9 #endif
10 
11 //____________________________________________________________________
12 //
13 // TConfidenceLevel
14 //
15 // This class serves as output for the TLimit::ComputeLimit method.
16 // It is created just after the time-consuming part and can be stored
17 // in a TFile for further processing. It contains
18 // light methods to return CLs, CLb and other interesting quantities.
19 //____________________________________________________________________
20 
21 
22 class TConfidenceLevel : public TObject {
23  public:
25  TConfidenceLevel(Int_t mc, bool onesided = kTRUE);
26  virtual ~TConfidenceLevel();
27  inline void SetTSD(Double_t in) { fTSD = in; }
28  void SetTSB(Double_t * in);
29  void SetTSS(Double_t * in);
30  inline void SetLRS(Double_t * in) { fLRS = in; }
31  inline void SetLRB(Double_t * in) { fLRB = in; }
32  inline void SetBtot(Double_t in) { fBtot = in; }
33  inline void SetStot(Double_t in) { fStot = in; }
34  inline void SetDtot(Int_t in) { fDtot = in; }
35  inline Double_t GetStatistic() const { return -2 * (fTSD - fStot); }
36  void Draw(const Option_t *option="");
37  Double_t GetExpectedStatistic_b(Int_t sigma = 0) const;
38  Double_t GetExpectedStatistic_sb(Int_t sigma = 0) const;
39  Double_t CLb(bool use_sMC = kFALSE) const;
40  Double_t CLsb(bool use_sMC = kFALSE) const;
41  Double_t CLs(bool use_sMC = kFALSE) const;
42  Double_t GetExpectedCLb_sb(Int_t sigma = 0) const;
43  Double_t GetExpectedCLb_b(Int_t sigma = 0) const;
44  Double_t GetExpectedCLsb_b(Int_t sigma = 0) const;
45  inline Double_t GetExpectedCLs_b(Int_t sigma = 0) const { return (GetExpectedCLsb_b(sigma) / GetExpectedCLb_b(sigma)); }
46  Double_t GetAverageCLs() const;
47  Double_t GetAverageCLsb() const;
48  Double_t Get3sProbability() const;
49  Double_t Get5sProbability() const;
50  inline Int_t GetDtot() const { return fDtot; }
51  inline Double_t GetStot() const { return fStot; }
52  inline Double_t GetBtot() const { return fBtot; }
53  private:
54  // data members used for the limits calculation
63  Double_t *fTSB; //[fNNMC]
64  Double_t *fTSS; //[fNNMC]
65  Double_t *fLRS; //[fNNMC]
66  Double_t *fLRB; //[fNNMC]
67  Int_t *fISS; //[fNNMC]
68  Int_t *fISB; //[fNNMC]
69  // cumulative probabilities for defining the bands on plots
70  static const Double_t fgMCLM2S;
71  static const Double_t fgMCLM1S;
72  static const Double_t fgMCLMED;
73  static const Double_t fgMCLP1S;
74  static const Double_t fgMCLP2S;
75  static const Double_t fgMCL3S1S;
76  static const Double_t fgMCL5S1S;
77  static const Double_t fgMCL3S2S;
78  static const Double_t fgMCL5S2S;
79  ClassDef(TConfidenceLevel, 1) // output for TLimit functions
80 };
81 
82 #endif
83 
Double_t CLs(bool use_sMC=kFALSE) const
Get the Confidence Level defined by CLs = CLsb/CLb.
static const Double_t fgMCL5S1S
Double_t GetStot() const
Int_t GetDtot() const
Double_t GetExpectedCLs_b(Int_t sigma=0) const
static const Double_t fgMCL3S1S
Double_t GetAverageCLs() const
Get average CLs.
Double_t Get3sProbability() const
Get 3s probability.
const char Option_t
Definition: RtypesCore.h:62
static const Double_t fgMCLM1S
Double_t GetBtot() const
void SetLRB(Double_t *in)
int Int_t
Definition: RtypesCore.h:41
const Bool_t kFALSE
Definition: Rtypes.h:92
static const Double_t fgMCLMED
void SetDtot(Int_t in)
void SetStot(Double_t in)
Double_t GetExpectedCLb_b(Int_t sigma=0) const
Get the expected Confidence Level for the background only if there is only background.
void SetLRS(Double_t *in)
#define ClassDef(name, id)
Definition: Rtypes.h:254
Double_t GetExpectedCLb_sb(Int_t sigma=0) const
Get the expected Confidence Level for the background only if there is signal and background.
static const Double_t fgMCLP1S
void SetTSD(Double_t in)
Double_t Get5sProbability() const
Get 5s probability.
static const Double_t fgMCL5S2S
void SetBtot(Double_t in)
TConfidenceLevel()
Default constructor.
Double_t GetExpectedCLsb_b(Int_t sigma=0) const
Get the expected Confidence Level for the signal plus background hypothesis if there is only backgrou...
Class to compute 95% CL limits.
Double_t GetStatistic() const
void SetTSS(Double_t *in)
Set the TSS.
void SetTSB(Double_t *in)
Set the TSB.
static const Double_t fgMCLP2S
double Double_t
Definition: RtypesCore.h:55
void Draw(const Option_t *option="")
Display sort of a "canonical" -2lnQ plot.
Double_t GetExpectedStatistic_sb(Int_t sigma=0) const
Get the expected statistic value in the signal plus background hypothesis.
Double_t GetExpectedStatistic_b(Int_t sigma=0) const
Get the expected statistic value in the background only hypothesis.
virtual ~TConfidenceLevel()
The destructor.
Mother of all ROOT objects.
Definition: TObject.h:58
static const Double_t fgMCL3S2S
Double_t GetAverageCLsb() const
Get average CLsb.
static const Double_t fgMCLM2S
const Bool_t kTRUE
Definition: Rtypes.h:91
Double_t CLsb(bool use_sMC=kFALSE) const
Get the Confidence Level for the signal plus background hypothesis.
Double_t CLb(bool use_sMC=kFALSE) const
Get the Confidence Level for the background only.