ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/cbrown/AnalysisFramework/limits/run2011limits.C
Revision: 1.1
Committed: Fri Jun 24 07:48:47 2011 UTC (13 years, 10 months ago) by fronga
Content type: text/plain
Branch: MAIN
CVS Tags: cbaf_4_98ifb_paper, cbaf_4p7ifb, Honeypot, cbaf_2p1ifb, HEAD
Log Message:
Adding macros used to compute limits.

File Contents

# User Rev Content
1 fronga 1.1 #include "roostats_cl95.C"
2    
3     int getLimits( double lumi, double elumi, double bkg, double ebkg, double elm4, double eelm4, double elm8, double eelm8, int obs ) {
4     // gROOT->LoadMacro("roostats_cl95.C+");
5    
6     int niter = 100;
7    
8     double evt = roostats_cl95(1.0, 0.001, 1.0, 0.001, bkg, ebkg, obs, kFALSE, 1);
9     LimitResult expevt = roostats_clm( 1.0, 0.001, 1.0, 0.001, bkg, ebkg, niter, 1);
10    
11     double lm4 = roostats_cl95(lumi, lumi*elumi, elm4, eelm4, bkg, ebkg, obs, kFALSE, 1);
12     LimitResult exp4 = roostats_clm( lumi, lumi*elumi, elm4, eelm4, bkg, ebkg, niter, 1 );
13    
14     double lm8 = roostats_cl95(lumi, lumi*elumi, elm8, eelm8, bkg, ebkg, obs, kFALSE, 1);
15     LimitResult exp8 = roostats_clm( lumi, lumi*elumi, elm8, eelm8, bkg, ebkg, niter, 1 );
16    
17    
18     std::cout << "UL on #(events) = " << evt << ", expected = " << expevt.GetExpectedLimit();
19     std::cout << "+" << expevt.GetOneSigmaHighRange()-expevt.GetExpectedLimit();
20     std::cout << "-" << expevt.GetExpectedLimit()-expevt.GetOneSigmaLowRange() << std::endl;
21     std::cout << "UL on LM4 SxBRxA= " << lm4 << ", expected = " << exp4.GetExpectedLimit();
22     std::cout << "+" << exp4.GetOneSigmaHighRange()-exp4.GetExpectedLimit();
23     std::cout << "-" << exp4.GetExpectedLimit()-exp4.GetOneSigmaLowRange() << std::endl;
24     std::cout << "UL on LM8 SxBRxA= " << lm8 << ", expected = " << exp8.GetExpectedLimit();
25     std::cout << "+" << exp8.GetOneSigmaHighRange()-exp8.GetExpectedLimit();
26     std::cout << "-" << exp8.GetExpectedLimit()-exp8.GetOneSigmaLowRange() << std::endl;
27    
28     return 0;
29     }
30    
31     //_____________________________________________________________________________________________
32     int run2011_3jets_50(double elumi = 0.04 ) {
33    
34     double lumi = 191.;
35     double bkg = 24;
36     double ebkg = sqrt(6*6+1.4*1.4+2.4*2.4);
37     int obs = 20;
38    
39     double elm4 = 0.919;
40     double eelm4s = sqrt(4*4+2.*2.+1.0*1.0+2.*2.+1.4*1.4)/100.;
41     double eelm4t = (0.7*0.7)/100.;
42     double elm8 = 0.885;
43     double eelm8s = sqrt(4*4+2.*2.+1.4*1.4+2.*2.+1.5*1.5)/100.;
44     double eelm8t = (0.9*0.9)/100.;
45    
46     std::cout << "LM4 syst error: " << eelm4s << std::endl;
47     std::cout << "LM8 syst error: " << eelm8s << std::endl;
48    
49     double eelm4 = sqrt(eelm4s*eelm4s+eelm4t*eelm4t+0.01*elm4*elm4); // Add 10% theo. unc.
50     double eelm8 = sqrt(eelm8s*eelm8s+eelm8t*eelm8t+0.01*elm8*elm8);
51    
52     getLimits( lumi, elumi, bkg, ebkg, elm4, eelm4, elm8, eelm8, obs );
53    
54     return 0;
55    
56     }
57    
58     //_____________________________________________________________________________________________
59     int run2011_3jets_100(double elumi = 0.04) {
60    
61     double lumi = 191.;
62     double bkg = 8;
63     double ebkg = sqrt(4*4+0.1*0.1+0.4*0.4);
64     int obs = 6;
65    
66     double elm4 = 0.904;
67     double eelm4s = sqrt(4*4+2.*2.+1.0*1.0+4.*4.+4.3*4.3)/100.;
68     double eelm4t = (0.9*0.9)/100.;
69     double elm8 = 0.853;
70     double eelm8s = sqrt(4*4+2.*2.+2.0*2.0+4.*4.+4.5*4.5)/100.;
71     double eelm8t = (1.1*1.1)/100.;
72    
73     std::cout << "LM4 syst erro: " << eelm4s << std::endl;
74     std::cout << "LM8 syst erro: " << eelm8s << std::endl;
75    
76     double eelm4 = sqrt(eelm4s*eelm4s+eelm4t*eelm4t+0.01*elm4*elm4); // Add 10% theo. unc.
77     double eelm8 = sqrt(eelm8s*eelm8s+eelm8t*eelm8t+0.01*elm8*elm8);
78    
79     getLimits( lumi, elumi, bkg, ebkg, elm4, eelm4, elm8, eelm8, obs );
80    
81     return 0;
82    
83     }
84    
85     //___________________________________________________________________________________________
86     int main(void) {
87    
88     run2011_3jets_50();
89     run2011_3jets_100();
90     // run2011_3jets_50(0.1);
91     // run2011_3jets_100(0.1);
92    
93     return 0;
94     }