ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/auterman/scripts/CLs/TLimit.h
Revision: 1.1.1.1 (vendor branch)
Committed: Thu Apr 1 15:14:10 2010 UTC (15 years, 1 month ago) by auterman
Content type: text/plain
Branch: CLs, MAIN
CVS Tags: start, HEAD
Changes since 1.1: +0 -0 lines
Error occurred while calculating annotation data.
Log Message:
some cls demo plots

File Contents

# Content
1 // @(#)root/hist:$Id: TLimit.h 20882 2007-11-19 11:31:26Z rdm $
2 // Author: Christophe.Delaere@cern.ch 21/08/2002
3
4 #ifndef ROOT_TLimit
5 #define ROOT_TLimit
6
7 #ifndef ROOT_TObject
8 #include "TObject.h"
9 #endif
10
11 #include "TVectorDfwd.h"
12
13 class TConfidenceLevel;
14 class TRandom;
15 class TLimitDataSource;
16 class TArrayD;
17 class TOrdCollection;
18 class TH1;
19
20 //____________________________________________________________________
21 //
22 // TLimit
23 //
24 // This class computes 95% Confidence Levels.
25 //
26 // Implemented by C. Delaere from the mclimit code written by Tom Junk.
27 // reference: HEP-EX/9902006
28 // See http://cern.ch/thomasj/searchlimits/ecl.html for more details.
29 //____________________________________________________________________
30
31 class TLimit {
32 protected:
33 static bool Fluctuate(TLimitDataSource * input, TLimitDataSource * output, bool init,TRandom *, bool stat=false);
34 static Double_t LogLikelihood(Double_t s, Double_t b, Double_t b2, Double_t d);
35
36 public:
37 TLimit() {}
38 virtual ~TLimit() {}
39 static TConfidenceLevel *ComputeLimit(TLimitDataSource * data,
40 Int_t nmc =50000,
41 bool stat = false,
42 TRandom * generator = 0);
43 static TConfidenceLevel *ComputeLimit(Double_t s, Double_t b, Int_t d,
44 Int_t nmc =50000,
45 bool stat = false,
46 TRandom * generator = 0);
47 static TConfidenceLevel *ComputeLimit(Double_t s, Double_t b, Int_t d,
48 TVectorD* se, TVectorD* be, TObjArray*,
49 Int_t nmc =50000,
50 bool stat = false,
51 TRandom * generator = 0);
52 static TConfidenceLevel *ComputeLimit(TH1* s, TH1* b, TH1* d,
53 Int_t nmc =50000,
54 bool stat = false,
55 TRandom * generator = 0);
56 static TConfidenceLevel *ComputeLimit(TH1* s, TH1* b, TH1* d,
57 TVectorD* se, TVectorD* be, TObjArray*,
58 Int_t nmc =50000,
59 bool stat = false,
60 TRandom * generator = 0);
61 private:
62 static TArrayD *fgTable; // a log table... just to speed up calculation
63 static TOrdCollection *fgSystNames; // Collection of systematics names
64 ClassDef(TLimit, 2) // Class to compute 95% CL limits
65 };
66
67 #endif
68