Back to home page

EIC code displayed by LXR

 
 

    


Warning, file /include/root/TConfidenceLevel.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 // @(#)root/hist:$Id$
0002 // Author: Christophe.Delaere@cern.ch   21/08/2002
0003 
0004 #ifndef ROOT_TConfidenceLevel
0005 #define ROOT_TConfidenceLevel
0006 
0007 #include "TObject.h"
0008 
0009 //____________________________________________________________________
0010 //
0011 // TConfidenceLevel
0012 //
0013 // This class serves as output for the TLimit::ComputeLimit method.
0014 // It is created just after the time-consuming part and can be stored
0015 // in a TFile for further processing. It contains
0016 // light methods to return CLs, CLb and other interesting quantities.
0017 //____________________________________________________________________
0018 
0019 
0020 class TConfidenceLevel : public TObject {
0021  public:
0022    TConfidenceLevel();
0023    TConfidenceLevel(Int_t mc, bool onesided = kTRUE);
0024    ~TConfidenceLevel() override;
0025    inline void SetTSD(Double_t in) { fTSD = in; }
0026    void SetTSB(Double_t * in);
0027    void SetTSS(Double_t * in);
0028    inline void SetLRS(Double_t * in) { fLRS = in; }
0029    inline void SetLRB(Double_t * in) { fLRB = in; }
0030    inline void SetBtot(Double_t in) { fBtot = in; }
0031    inline void SetStot(Double_t in) { fStot = in; }
0032    inline void SetDtot(Int_t in) { fDtot = in; }
0033    inline Double_t GetStatistic() const { return -2 * (fTSD - fStot); }
0034    void Draw(const Option_t *option="") override;
0035    Double_t GetExpectedStatistic_b(Int_t sigma = 0) const;
0036    Double_t GetExpectedStatistic_sb(Int_t sigma = 0) const;
0037    Double_t CLb(bool use_sMC = kFALSE) const;
0038    Double_t CLsb(bool use_sMC = kFALSE) const;
0039    Double_t CLs(bool use_sMC = kFALSE) const;
0040    Double_t GetExpectedCLb_sb(Int_t sigma = 0) const;
0041    Double_t GetExpectedCLb_b(Int_t sigma = 0) const;
0042    Double_t GetExpectedCLsb_b(Int_t sigma = 0) const;
0043    inline Double_t GetExpectedCLs_b(Int_t sigma = 0) const { return (GetExpectedCLsb_b(sigma) / GetExpectedCLb_b(sigma)); }
0044    Double_t GetAverageCLs() const;
0045    Double_t GetAverageCLsb() const;
0046    Double_t Get3sProbability() const;
0047    Double_t Get5sProbability() const;
0048    inline Int_t GetDtot() const { return fDtot; }
0049    inline Double_t GetStot() const { return fStot; }
0050    inline Double_t GetBtot() const { return fBtot; }
0051  private:
0052    // data members used for the limits calculation
0053    Int_t      fNNMC;
0054    Int_t      fDtot;
0055    Double_t   fStot;
0056    Double_t   fBtot;
0057    Double_t   fTSD;
0058    Double_t   fNMC;
0059    Double_t   fMCL3S;
0060    Double_t   fMCL5S;
0061    Double_t  *fTSB;              //[fNNMC]
0062    Double_t  *fTSS;              //[fNNMC]
0063    Double_t  *fLRS;              //[fNNMC]
0064    Double_t  *fLRB;              //[fNNMC]
0065    Int_t     *fISS;              //[fNNMC]
0066    Int_t     *fISB;              //[fNNMC]
0067    // cumulative probabilities for defining the bands on plots
0068    static const Double_t fgMCLM2S;
0069    static const Double_t fgMCLM1S;
0070    static const Double_t fgMCLMED;
0071    static const Double_t fgMCLP1S;
0072    static const Double_t fgMCLP2S;
0073    static const Double_t fgMCL3S1S;
0074    static const Double_t fgMCL5S1S;
0075    static const Double_t fgMCL3S2S;
0076    static const Double_t fgMCL5S2S;
0077    ClassDefOverride(TConfidenceLevel, 1) // output for TLimit functions
0078 };
0079 
0080 #endif
0081