ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/cbrown/AnalysisFramework/Plotting/Modules/Setup.C
Revision: 1.57
Committed: Fri Nov 25 17:12:37 2011 UTC (13 years, 5 months ago) by buchmann
Content type: text/plain
Branch: MAIN
Changes since 1.56: +7 -4 lines
Log Message:
Update to be ready for GMSB

File Contents

# User Rev Content
1 buchmann 1.1 #include <iostream>
2 buchmann 1.11 #include <fstream>
3 buchmann 1.1 #include <TCut.h>
4 buchmann 1.18 #include <TColor.h>
5     #include <TStyle.h>
6 buchmann 1.11
7 buchmann 1.1 #ifndef SampleClassLoaded
8     #include "SampleClass.C"
9     #endif
10 buchmann 1.5 #define SetupLoaded
11 buchmann 1.55 #ifndef ResultLibraryClassLoaded
12     #include "ResultLibraryClass.C"
13     #endif
14    
15 buchmann 1.1
16     using namespace std;
17    
18    
19     namespace PlottingSetup {
20 buchmann 1.34
21 buchmann 1.57 string directoryname="TestingTheGroundwWith_4653ipb";
22 buchmann 1.39
23 buchmann 1.43 bool RestrictToMassPeak=true; //if you want to switch between offpeak ("false") and onpeak ("true") analysis please use this switch; the masscut below will be adapted automatically when adding samples :-)
24 buchmann 1.39
25 buchmann 1.53 float luminosity=4653.74;//p3523.18;//2096.0;//3172.73;//2096.0;//1936;//751.0;//486.0;//468.0//336.;//pb^{-1}
26 buchmann 1.44 // float luminosity=3523.18;//2096.0;//3172.73;//2096.0;//1936;//751.0;//486.0;//468.0//336.;//pb^{-1}
27 buchmann 1.45 // float luminosity=2096.0;//3172.73;//2096.0;//1936;//751.0;//486.0;//468.0//336.;//pb^{-1}
28 buchmann 1.34 float lumiuncert=0.045;// to be indicated in [0,1] range, e.g. for 4% write 0.04
29 buchmann 1.36
30 buchmann 1.4 string jzbvariabledata="jzb[1]+0.06*pt";
31     string jzbvariablemc="jzb[1]+0.04*pt";
32 fronga 1.25 float jzbHigh = 350.; // Range for JZB plots
33 buchmann 1.34
34 buchmann 1.1 samplecollection allsamples("completesamplecollection");
35 buchmann 1.9 samplecollection signalsamples("signalsamplecollection");
36 buchmann 1.14 samplecollection scansample("scansamplecollection");
37 buchmann 1.41 samplecollection raresample("raresamplecollection");
38 buchmann 1.1 int data=1;
39     int mc=0;
40     int mcwithsignal=2;
41     TCut passtrig("(passed_triggers||!is_data)");
42 buchmann 1.20 TCut cutmass("abs(mll-91.2)<20");
43 buchmann 1.44 TCut genMassCut("abs(genMll-91.2)<20");
44 buchmann 1.46 TCut openmasscut("mll>40"); // this is the mass cut used in the off peak analysis!
45     TCut openGenmasscut("genMll>40");
46 buchmann 1.1 //TCut cutmass("mll>2");
47     TCut basiccut("mll>2");//basically nothing.
48 buchmann 1.7 TCut basicqualitycut("(pfJetGoodNum>=2&&pfJetGoodID[0]!=0)&&(pfJetGoodNum>=2&&pfJetGoodID[1]!=0)");//don't use this for the "essential cut", because we want to plot nJets as well as mll in the inclusive case; we thus use it as an addition nJets cut.
49 buchmann 1.1 //TCut jetqualitycut("(pfJetGoodNum>=2&&pfJetGoodID[0])&&(pfJetGoodNum>=2&&pfJetGoodID[1])");//now part of the basiccut
50     //TCut jetqualitycut("mll>0");
51 buchmann 1.7
52 buchmann 1.20 TCut cutnJets("pfJetGoodNum>=3"&&basicqualitycut);
53 buchmann 1.7 TCut cutnJetsJESdown("pfJetGoodNum25>=3"&&basicqualitycut);
54     TCut cutnJetsJESup("pfJetGoodNum35>=3"&&basicqualitycut);
55 buchmann 1.1 TCut cutOSOF("(id1!=id2)&&(ch1*ch2<0)");
56     TCut cutOSSF("(id1==id2)&&(ch1*ch2<0)");
57 buchmann 1.22 TCut sidebandcut("(mll>55&&mll<70)||(mll>112&&mll<160)");
58 fronga 1.25
59 buchmann 1.50 TCut Weight("weight"); // this is the weight that is used everywhere
60    
61 buchmann 1.22 //TCut sidebandcut("(mll>61&&mll<70)||(mll>112&&mll<190)");
62 buchmann 1.1 //TCut basiccut("(passed_triggers||!is_data)");
63    
64 buchmann 1.15 // SUSY scan parameters
65 buchmann 1.16 float mglustart=25;float mgluend=1200;float mglustep=25;
66     float mLSPstart=25;float mLSPend=1200;float mLSPstep=25;
67 buchmann 1.31
68     float m0start=20; float m0end=2000; float m0step=20;
69     float m12start=20; float m12end=760; float m12step=20;
70 buchmann 1.42
71 buchmann 1.50 int ScanXzones=15; // number of zones in x for (mSUGRA) scans
72     int ScanYzones=15; // number of zones in y for (mSUGRA) scans
73 buchmann 1.15
74 buchmann 1.57 //scan types:
75     int mSUGRA=1;
76     int SMS=2;
77     int GMSB=3;
78    
79 buchmann 1.1 TCut essential(passtrig);//add here any cuts you ALWAYS want
80     int dogaus=0;
81     int doKM=1;
82     int dogaus2sigma=2;
83     int dogaus3sigma=3;
84     int Kostasmethod=-99;
85    
86 buchmann 1.13 float fitresultconstdata=0;//this is the result when fitting in the 0-30 GeV range
87     float fitresultconstmc=0;//this is the result when fitting in the 0-30 GeV range
88 buchmann 1.1
89 buchmann 1.33 int method=-1;//Fitting method
90 buchmann 1.8
91     //now some style issues:
92     float DataMarkerSize=1.2;
93 buchmann 1.10
94     //here we save our number of predicted and observed events (with errors)
95     vector<float> Nobs;
96     vector<float> Npred;
97     vector<float> Nprederr;
98 buchmann 1.13
99 buchmann 1.47 //here we save our "flipped" number of predicted and observed events (with errors) -- this means that we consider JZB<-X as observed and construct the corresponding prediction
100 buchmann 1.48 bool alwaysflip=false;
101 buchmann 1.47 vector<float> flippedNobs;
102     vector<float> flippedNpred;
103     vector<float> flippedNprederr;
104    
105 buchmann 1.13 int noJES=0;
106     int JESdown=1;
107     int JESup=2;
108 buchmann 1.14
109 buchmann 1.17 //some refinement: nicer color gradient
110     Double_t stops[5] = { 0.00, 0.34, 0.61, 0.84, 1.00 };
111     Double_t red[5] = { 0.00, 0.00, 0.87, 1.00, 0.51 };
112     Double_t green[5] = { 0.00, 0.81, 1.00, 0.20, 0.00 };
113     Double_t blue[5] = { 0.51, 1.00, 0.12, 0.00, 0.00 };
114 buchmann 1.18 int fi=TColor::CreateGradientColorTable(5, stops, red, green,blue, 255);
115 buchmann 1.17
116 buchmann 1.32 // LIMITS
117 buchmann 1.33 int nlimittoys=1000; // how many toys for setting limits
118 buchmann 1.40 string limitmethod="cls";//what method to use to set limits
119 buchmann 1.52 int limitpatience=15; // for how many minutes should the limit calculation (for one configuration!) be allowed to run before being aborted? this only has an effect when when running on the t3 batch; the value for CRAB is on the next line
120     int limitpatienceCRAB=60;
121 buchmann 1.37 bool ConsiderSignalContaminationForLimits=true; //whether or not to consider signal contamination when computing limits (standard:true)
122 buchmann 1.36 int nuisancemodel=1;
123 buchmann 1.23
124 buchmann 1.28 float JZBPeakPositionData=-999;
125     float JZBPeakPositionMC=-999;
126     float JZBPeakWidthData=-999;
127     float JZBPeakWidthMC=-999;
128 buchmann 1.36
129 buchmann 1.40 // two possible future systematics that ATM only take up CPU time in SUSY scans
130     bool computeJZBefficiency=false;
131     bool computeJZBresponse=false;
132    
133 buchmann 1.54 bool requireZ=true;
134    
135 buchmann 1.57 string ScanSampleDirectory="SMS/"; // possibilities (atm) : SMS/, SMS_T5zzl/, GMSB/, mSUGRA/ note: this string needs to either contain "SMS", "GMSB", or "mSUGRA"
136 buchmann 1.47
137 buchmann 1.55 ResultLibrary allresults;
138 buchmann 1.1 }