ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/cbrown/AnalysisFramework/Plotting/Modules/ActiveSamples.C
Revision: 1.52
Committed: Fri Nov 25 21:49:19 2011 UTC (13 years, 5 months ago) by buchmann
Content type: text/plain
Branch: MAIN
Changes since 1.51: +1 -0 lines
Log Message:
Update to be ready for GMSB

File Contents

# Content
1 /****
2
3 Off peak status (RestrictToMassPeak) :
4
5 x Necessary adaptations identified
6 x Started working on necessary adaptations
7 x Necessary adaptations implemented
8 x Necessary adaptations tested
9
10 DONE!
11
12
13 ****/
14
15 #include <iostream>
16 #include <vector>
17 #include <sys/stat.h>
18 #include <unistd.h>
19
20 #include <TMath.h>
21 #include <TColor.h>
22 #include <TPaveText.h>
23 #include <TRandom.h>
24 #include <TF1.h>
25
26 #ifndef SampleClassLoaded
27 #include "ActiveSamples.C"
28 #endif
29
30 #ifndef Verbosity
31 #define Verbosity 0
32 #endif
33 #ifndef HUSH
34 #define HUSH 1
35 #endif
36
37 void define_SMS_sample(bool showList, samplecollection &allsamples, samplecollection &signalsamples, samplecollection &scansample, bool loadall=false)
38 {
39 char hostname[1023];
40 gethostname(hostname,1023);
41
42 /*
43
44 CRUCIAL: The NAME needs to contain either "SMS" or "mSUGRA" for the SUSY scan algorithm (to be able to distinguish the two) -- this is now done automatically based on PlottingSetup::ScanSampleDirectory
45
46 */
47
48 string prefix="/shome/";
49 if((int)((string)hostname).find("falda")>-1) prefix="/scratch/";
50 string mSUGRAorSMS="mSUGRA";
51 if((int)((string)PlottingSetup::ScanSampleDirectory).find("SMS")>-1) mSUGRAorSMS="SMS";
52 if((int)((string)PlottingSetup::ScanSampleDirectory).find("GMSB")>-1) mSUGRAorSMS="SMS";
53
54 /// NEW: Only indicate the very first file - please place scans in ntuples/SMS/ and adapt the name here and in SUSYScan.C (the files are loaded when needed avoiding high memory usage and startup times)
55 /// If you have different scans (e.g. you have a T5zzl one as well) you can create an additional directory such as SMS_T5zzl, but you need to change that below and in SUSYScan.C as well (where the files are loaded)
56 scansample.AddSample(prefix+"buchmann/ntuples/"+PlottingSetup::ScanSampleDirectory+"/"+mSUGRAorSMS+"_clean_splitup_0_0.root",mSUGRAorSMS,1,1,false,true,0,kRed); // there is only one sample in the scan; we give each event weight "1"
57
58 if(loadall) {
59 for(int ix=0;ix<PlottingSetup::ScanXzones;ix++) {
60 for(int iy=1;iy<PlottingSetup::ScanYzones;iy++) {//note: the "zero-zero" sample is already loaded above!
61 scansample.AddSample((prefix+"buchmann/ntuples/"+PlottingSetup::ScanSampleDirectory+"/"+mSUGRAorSMS+"_clean_splitup_"+any2string(ix)+"_"+any2string(iy)+".root"),mSUGRAorSMS,1,1,false,true,ix*PlottingSetup::ScanXzones+iy,kRed); // there is only one sample in the scan; we give each event weight "1"
62 }
63 }
64 }
65
66
67 flag_this_change(__FUNCTION__,__LINE__,true);//PlottingSetup::RestrictToMassPeak
68 if(!PlottingSetup::RestrictToMassPeak) {
69 PlottingSetup::cutmass=PlottingSetup::openmasscut;
70 // PlottingSetup::sidebandcut=TCut("mll<2&&mll>3");//impossible cut - because we don't want any sidebands!
71 PlottingSetup::sidebandcut=TCut("SideBandsHaveBeenCalledForOffPeakAnalysis__ERROR==1");//this will trigger errors whenever sidebands are called - perfect for checking any remaining uses (checked, and no uses were found).
72 PlottingSetup::genMassCut=PlottingSetup::openGenmasscut;//impossible cut - because we don't want any sidebands!
73 }
74 }
75
76
77 void define_samples(bool showList, samplecollection &allsamples, samplecollection &signalsamples, samplecollection &scansample, samplecollection &raresample)
78 {
79 flag_this_change(__FUNCTION__,__LINE__,true);//PlottingSetup::RestrictToMassPeak
80 if(!PlottingSetup::RestrictToMassPeak) {
81 PlottingSetup::cutmass=PlottingSetup::openmasscut;
82 PlottingSetup::sidebandcut=TCut("mll<2&&mll>3");//impossible cut - because we don't want any sidebands!
83 PlottingSetup::genMassCut=PlottingSetup::openGenmasscut;//impossible cut - because we don't want any sidebands!
84 }
85
86 float ZJetsCrossSection = 3048.0; //NNLO----------------------------------
87 // float ZJetsCrossSectionM20 = 4998.0;//summer11
88 // float ZJetsCrossSectionD6Tlow = 400.0;//summer11
89 float TTbarCrossSection = 165.0;//(NLO) ---- 165.0; // approx. NNLO-----
90 float WJetsCrossSection = 31314.0;//NNLO-------3.131e4; //NNLO------------
91 float ZnunuCrossSection = 5760.0;//NNLO -------4.5e+3; //(LO);------------
92 //Single top x-sections from here:
93 //https://twiki.cern.ch/twiki/bin/view/CMS/SingleTopSigma
94 float SingleTopSCrossSection = 4.63; // NLO;----------------------------------
95 float SingleTopTCrossSection = 64.57; // NLO;--------------------------------
96 float SingleTopUCrossSection = 15.74; // NLO;----------------------------------
97 float VVJetsCrossSection = 4.8; // LO;-------------------------------------
98 float LM4CrossSection = 1.879*1.35; // k*LO
99 float LM8CrossSection = 0.7300*1.41 ; // k*LO
100 //the following numbers are from the MadGraphStandardModel210Summary as linked on the GeneratorProduction2011 page
101 // float QCD50to100CrossSection=30000000; // not used
102 float QCD100to250CrossSection=7000000;
103 float QCD250to500CrossSection=171000;
104 float QCD500to1000CrossSection=5200;
105 float QCD1000toInfCrossSection=83.0;
106
107 // float totEventsQCD50to100=207418.0; // not used
108 long totEventsQCD100to250 = 638792;
109 long totEventsQCD250to500 = 344454;
110 long totEventsQCD500to1000 = (long)10e10; //unknown but now suppressed. (no event passes anyway)
111 long totEventsQCD1000toInf = 163185;
112
113 long totEventsZjets = 32005720;//summer11
114 long totEventsZjetsD6T = 2543706;//summer11
115 long totEventsZjetsD6Tlow = 181799;//summer11
116 // long totEventsZjetsEE = 2738801;
117 // long totEventsZjetsMM = 2148325;
118 // long totEventsZjetsTT = 2032536;
119
120 //spring:2313911.0;//2743142.0; // DYJetsToLL_TuneZ2_M-50_7TeV-madgraph-tauola
121 long totEventsTTbar = 3701872;//summer11
122 //1161621.0;//Spring//1144028.0; // PabloV13/TTJets_TuneZ2_7TeV-madgraph-tauola
123 long totEventsWJets = 56674902;//summer11
124 //15010237.0;//spring//14350756.0; /// WJetsToLNu_TuneZ2_7TeV-madgraph-tauola.root
125 long totEventsZnunu = 2106977;//2167964.0; //ZinvisibleJets_7TeV-madgraph.root
126 long totEventsVVJets = 959076;//509072.0;
127 long totEventsSingleTopS = 493868;//489472.0;
128 long totEventsSingleTopT = 475460;//477610.0;
129 long totEventsSingleTopU = 489417;//477599.0;
130 long totEventsLM4 = 218380;
131 long totEventsLM8 = 180960;
132
133
134 Int_t nice_blue = TColor::GetColor("#2E9AFE");
135 Int_t nice_green = TColor::GetColor("#81f781");
136 Int_t nice_red = TColor::GetColor("#F78181");
137 Int_t nice_pink = TColor::GetColor("#F781BE");
138 Int_t nice_orange= TColor::GetColor("#F7BE81");//#FA9624
139 Int_t nice_black = TColor::GetColor("#2A0A1B");//black with a bit of purple :-)
140
141
142 Int_t dy_color = nice_blue;
143 Int_t wjets_color = kGray;
144 Int_t ttbar_color = nice_green;
145 Int_t singletop_color = nice_orange;
146 Int_t qcd_color = nice_black;
147 Int_t diboson_color = nice_pink;
148 Int_t lm_color = kRed;
149
150 dy_color = kYellow;
151 wjets_color = kGray;
152 ttbar_color = kMagenta+2;
153 singletop_color = kBlue;
154 qcd_color = kPink;
155 diboson_color = kGreen;
156 lm_color = kViolet+7;
157
158 Int_t rare_color = nice_blue;
159
160 char hostname[1023];
161 gethostname(hostname,1023);
162
163 string prefix="/shome/";
164 if((int)((string)hostname).find("falda")>-1) prefix="/scratch/";
165
166 allsamples.AddSample(prefix+"buchmann/ntuples/Data/AllData_4654_ipb.root","Data",1,1,true,false,0,kBlack);
167 allsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/DYJetsToLL_TuneZ2_M-50_7TeV-madgraph-tauola_Summer11.root","Z+Jets",totEventsZjets,ZJetsCrossSection,false,false,7,dy_color);
168 // allsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/DYJetsToLL_TuneZ2_M-50_7TeV-madgraph-tauola_Fall11-PU_S6_START42_V14B-v1.root","Z+Jets",totEventsZjets,ZJetsCrossSection,false,false,7,dy_color);
169 allsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/TTJets_TuneZ2_7TeV-madgraph-tauola_Summer11_2.root","t#bar{t}",totEventsTTbar,TTbarCrossSection,false,false,1,ttbar_color);//summer11
170 allsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/WJetsToLNu_TuneZ2_7TeV-madgraph-tauola_Summer11_2.root","W+Jets",totEventsWJets,WJetsCrossSection,false,false,3,wjets_color);//summer
171 allsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/VVJetsTo4L_TuneD6T_7TeV-madgraph-tauola.root","WW/WZ/ZZ",totEventsVVJets,VVJetsCrossSection,false,false,4,diboson_color);
172 allsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/TToBLNu_TuneZ2_s-channel_7TeV-madgraph_2.root","Single-top",totEventsSingleTopS,SingleTopSCrossSection,false,false,2,singletop_color);
173 allsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/TToBLNu_TuneZ2_t-channel_7TeV-madgraph.root","Single-top",totEventsSingleTopT,SingleTopTCrossSection,false,false,2,singletop_color);
174 allsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/TToBLNu_TuneZ2_tW-channel_7TeV-madgraph.root","Single-top",totEventsSingleTopU,SingleTopUCrossSection,false,false,2,singletop_color);
175 allsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/ZinvisibleJets_7TeV-madgraph.root","Z nunu",totEventsZnunu,ZnunuCrossSection,false,false,4,diboson_color);
176 allsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/LM4_SUSY_sftsht_7TeV-pythia6.root","LM4",totEventsLM4,LM4CrossSection,false,true,8,lm_color);
177
178
179
180 if(!PlottingSetup::RestrictToMassPeak) {
181 // signalsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/LM0_SUSY_sftsht_7TeV-pythia6.root","LM0",219796,38.93*1.41 ,false,true,3,lm_color);
182 // signalsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/LM1_SUSY_sftsht_7TeV-pythia6.root","LM1",218176,4.888*1.34,false,true,4,lm_color);
183 // signalsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/LM2_SUSY_sftsht_7TeV-pythia6.root","LM2",206336,0.6027*1.33,false,true,5,lm_color);
184 signalsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/LM3_SUSY_sftsht_7TeV-pythia6.root","LM3",215120,3.438*1.40,false,true,6,lm_color);
185 signalsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/LM5_SUSY_sftsht_7TeV-pythia6.root","LM5",223992,0.473*1.34,false,true,7,lm_color);
186 signalsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/LM9_SUSY_sftsht_7TeV-pythia6.root","LM9",227808,7.134*1.48,false,true,8,lm_color);
187 signalsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/LM11_SUSY_sftsht_7TeV-pythia6.root","LM11",218703,0.8236*1.35,false,true,9,lm_color);
188 signalsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/LM12_SUSY_sftsht_7TeV-pythia6.root","LM12",223491,4.414*1.34,false,true,10,lm_color);
189 signalsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/LM13_SUSY_sftsht_7TeV-pythia6.root","LM13",173240,6.899*1.42,false,true,11,lm_color);
190 }
191 signalsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/LM4_SUSY_sftsht_7TeV-pythia6.root","LM4",totEventsLM4,LM4CrossSection,false,true,1,lm_color);
192 signalsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/LM8_SUSY_sftsht_7TeV-pythia6.root","LM8",totEventsLM8,LM8CrossSection,false,true,2,lm_color);
193 //
194 /*
195
196
197 // We do not use the following (rare) samples; nonetheless we include them in a separate category to prove that they are negligible
198 write_warning(__FUNCTION__,"Rare samples not yet reprocessed with new selectioN");/*
199 raresample.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/TTWWTo2Lplus2Nu_NTP.root","Rare SS",39791,4.76E-5,false,false,6,rare_color);//summer11
200 raresample.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/WWminusTo2L2Nu_NTP.root","Rare SS",51063,0.001559,false,false,6,rare_color);//summer11
201 raresample.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/TTWWTo2Lminus2Nu_NTP.root","Rare SS",39496 ,4.719E-5,false,false,6,rare_color);//summer11
202 raresample.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/TTWTo2Lplus2Nu_NTP.root","Rare SS",48764,0.006841,false,false,6,rare_color);//summer11
203 raresample.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/WWplusTo2L2Nu_NTP.root","Rare SS",48244 ,0.004216,false,false,6,rare_color);//summer11
204 raresample.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/TTZTo2Lplus2Nu_NTP.root","Rare SS",36740,0.002024,false,false,6,rare_color);//summer11
205 raresample.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/WWWTo2Lplus2Nu_NTP.root","Rare SS",43322,0.008957,false,false,6,rare_color);//summer11
206 raresample.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/TTWTo2Lminus2Nu_NTP.root","Rare SS",50435,0.002705,false,false,6,rare_color);//summer11
207 raresample.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/WWWTo2Lminus2Nu_NTP.root","Rare SS",17147,0.004109,false,false,6,rare_color);//summer11
208 raresample.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/TTZTo2Lminus2Nu_NTP.root","Rare SS",36781,0.001946,false,false,6,rare_color);//summer11
209 */
210 //scan files are only defined when necessary!
211
212 if(showList) allsamples.ListSamples();
213
214 }