ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/cbrown/Development/Plotting/Modules/ActiveSamples.C
Revision: 1.1
Committed: Mon Jan 30 14:45:54 2012 UTC (13 years, 3 months ago) by buchmann
Content type: text/plain
Branch: MAIN
Log Message:
Initial commit of Ice Cream versions

File Contents

# User Rev Content
1 buchmann 1.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="GMSB";
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, samplecollection &systsamples)
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 = 3701947;//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+2;
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_Complete_4653_ipb_PAPER.root","Data",1,1,true,false,0,kBlack);
167    
168    
169     allsamples.AddSample(prefix+"buchmann//ntuples/MC/NewSelectionForPaper/NewlyReweighted/DYJetsToLL_TuneZ2_M-50_7TeV-madgraph-tauola_Summer11___NTupleV020300.root","Z+Jets",totEventsZjets,ZJetsCrossSection,false,false,7,dy_color);
170     allsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/CorrectFull2011PileUp/TTJets_TuneZ2_7TeV-madgraph-tauola_Summer11_3.root","t#bar{t}",totEventsTTbar,TTbarCrossSection,false,false,1,ttbar_color);//summer11
171     allsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/CorrectFull2011PileUp/WJetsToLNu_TuneZ2_7TeV-madgraph-tauola_Summer11_2.root","W+Jets",totEventsWJets,WJetsCrossSection,false,false,3,wjets_color);//summer
172     allsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/CorrectFull2011PileUp/VVJetsTo4L_TuneD6T_7TeV-madgraph-tauola.root","WW/WZ/ZZ",totEventsVVJets,VVJetsCrossSection,false,false,4,diboson_color);
173     allsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/CorrectFull2011PileUp/TToBLNu_TuneZ2_s-channel_7TeV-madgraph_2.root","Single-top",totEventsSingleTopS,SingleTopSCrossSection,false,false,2,singletop_color);
174     allsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/CorrectFull2011PileUp/TToBLNu_TuneZ2_t-channel_7TeV-madgraph.root","Single-top",totEventsSingleTopT,SingleTopTCrossSection,false,false,2,singletop_color);
175     allsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/CorrectFull2011PileUp/TToBLNu_TuneZ2_tW-channel_7TeV-madgraph.root","Single-top",totEventsSingleTopU,SingleTopUCrossSection,false,false,2,singletop_color);
176     allsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/CorrectFull2011PileUp/ZinvisibleJets_7TeV-madgraph.root","Z nunu",totEventsZnunu,ZnunuCrossSection,false,false,4,diboson_color);
177     allsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/CorrectFull2011PileUp/LM4_SUSY_sftsht_7TeV-pythia6.root","LM4",totEventsLM4,LM4CrossSection,false,true,8,lm_color);
178    
179    
180    
181     if(!PlottingSetup::RestrictToMassPeak) {
182     // signalsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/LM0_SUSY_sftsht_7TeV-pythia6.root","LM0",219796,38.93*1.41 ,false,true,3,lm_color);
183     // signalsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/LM1_SUSY_sftsht_7TeV-pythia6.root","LM1",218176,4.888*1.34,false,true,4,lm_color);
184     // signalsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/LM2_SUSY_sftsht_7TeV-pythia6.root","LM2",206336,0.6027*1.33,false,true,5,lm_color);
185     signalsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/LM3_SUSY_sftsht_7TeV-pythia6.root","LM3",215120,3.438*1.40,false,true,6,lm_color);
186     signalsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/LM5_SUSY_sftsht_7TeV-pythia6.root","LM5",223992,0.473*1.34,false,true,7,lm_color);
187     signalsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/LM9_SUSY_sftsht_7TeV-pythia6.root","LM9",227808,7.134*1.48,false,true,8,lm_color);
188     signalsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/LM11_SUSY_sftsht_7TeV-pythia6.root","LM11",218703,0.8236*1.35,false,true,9,lm_color);
189     signalsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/LM12_SUSY_sftsht_7TeV-pythia6.root","LM12",223491,4.414*1.34,false,true,10,lm_color);
190     signalsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/LM13_SUSY_sftsht_7TeV-pythia6.root","LM13",173240,6.899*1.42,false,true,11,lm_color);
191     }
192     signalsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/LM4_SUSY_sftsht_7TeV-pythia6.root","LM4",totEventsLM4,LM4CrossSection,false,true,1,lm_color);
193     signalsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/LM8_SUSY_sftsht_7TeV-pythia6.root","LM8",totEventsLM8,LM8CrossSection,false,true,2,lm_color);
194    
195     // systsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/HighStatSamples/DYJetsToLL_TuneZ2_M-50_7TeV-madgraph-tauola_Fall11-PU_S6_START42_V14B-v1.root","Z+Jets",18368890,ZJetsCrossSection,false,false,7,dy_color);
196    
197    
198     systsamples.AddSample(prefix+"buchmann//ntuples/MC/NewSelectionForPaper/NewlyReweighted/DYJetsToLL_TuneZ2_M-50_7TeV-madgraph-tauola_Summer11___NTupleV020300.root","Z+Jets",32005720,ZJetsCrossSection,false,false,7,dy_color);
199     systsamples.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/HighStatSamples/TTJets_Fall11-PU_S6_START42_V14B.root","t#bar{t}",58370118,TTbarCrossSection,false,false,1,ttbar_color);//summer11
200    
201     //
202     /*
203    
204    
205     // We do not use the following (rare) samples; nonetheless we include them in a separate category to prove that they are negligible
206     write_warning(__FUNCTION__,"Rare samples not yet reprocessed with new selectioN");/*
207     raresample.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/TTWWTo2Lplus2Nu_NTP.root","Rare SS",39791,4.76E-5,false,false,6,rare_color);//summer11
208     raresample.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/WWminusTo2L2Nu_NTP.root","Rare SS",51063,0.001559,false,false,6,rare_color);//summer11
209     raresample.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/TTWWTo2Lminus2Nu_NTP.root","Rare SS",39496 ,4.719E-5,false,false,6,rare_color);//summer11
210     raresample.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/TTWTo2Lplus2Nu_NTP.root","Rare SS",48764,0.006841,false,false,6,rare_color);//summer11
211     raresample.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/WWplusTo2L2Nu_NTP.root","Rare SS",48244 ,0.004216,false,false,6,rare_color);//summer11
212     raresample.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/TTZTo2Lplus2Nu_NTP.root","Rare SS",36740,0.002024,false,false,6,rare_color);//summer11
213     raresample.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/WWWTo2Lplus2Nu_NTP.root","Rare SS",43322,0.008957,false,false,6,rare_color);//summer11
214     raresample.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/TTWTo2Lminus2Nu_NTP.root","Rare SS",50435,0.002705,false,false,6,rare_color);//summer11
215     raresample.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/WWWTo2Lminus2Nu_NTP.root","Rare SS",17147,0.004109,false,false,6,rare_color);//summer11
216     raresample.AddSample(prefix+"buchmann/ntuples/MC/NewSelectionForPaper/TTZTo2Lminus2Nu_NTP.root","Rare SS",36781,0.001946,false,false,6,rare_color);//summer11
217     */
218     //scan files are only defined when necessary!
219    
220     if(showList) allsamples.ListSamples();
221    
222     }