51 TString folder_ns =
"/net/cms2/cms2r0/babymaker/babies/2015_11_28/mc/";
52 TString folder_nsdata =
"/net/cms2/cms2r0/babymaker/babies/2015_11_20/data/singlelep/combined/";
53 TString folder_1l =
"/net/cms2/cms2r0/babymaker/babies/2015_11_28/mc/skim_1lht500met200/";
54 TString folder_1ldata =
"/net/cms2/cms2r0/babymaker/babies/2015_11_20/data/singlelep/combined/skim_1lht500met200/";
57 TString folder_2l =
"/net/cms2/cms2r0/jaehyeok/babies/2015_11_28/mc/skim_2l/";
58 TString folder_2ldata =
"/net/cms2/cms2r0/jaehyeok/babies/2015_11_20/data/skim_2l/";
60 TString folder_2vl =
"/net/cms24/cms24r0/jaehyeok/susy_cfa_babies/2015_09_28/skim_2vl/";
69 vector<TString> s_trig_htmht;
70 s_trig_htmht.push_back(folder_1ldata+
"*HTMHT*root");
71 vector<TString> s_trig_dl;
72 s_trig_dl.push_back(folder_1ldata+
"/*DoubleMu*root");
73 s_trig_dl.push_back(folder_1ldata+
"/*DoubleE*root");
74 vector<TString> s_trig_sl;
75 s_trig_sl.push_back(folder_1ldata+
"/*Single*root");
76 vector<TString> s_trig_dmu;
77 s_trig_dmu.push_back(folder_1ldata+
"/*DoubleMu*root");
78 vector<TString> s_trig_del;
79 s_trig_del.push_back(folder_1ldata+
"/*DoubleE*root");
80 vector<TString> s_trig_sl_2l;
81 s_trig_sl_2l.push_back(folder_2ldata+
"/*Run*SingleElectron_SingleMuon*root");
85 vector<TString> s_t1t_ns;
86 vector<TString> s_t1tc_ns;
88 s_tt.push_back(folder_1l+
"*_TTJets*Lept*root");
89 s_tt.push_back(folder_1l+
"*_TTJets_HT*root");
90 vector<TString> s_wjets;
91 s_wjets.push_back(folder_1l+
"*_WJetsToLNu*root");
92 vector<TString> s_ttv;
93 s_ttv.push_back(folder_1l+
"*_TTWJets*root");
94 s_ttv.push_back(folder_1l+
"*_TTZTo*root");
95 vector<TString> s_single;
96 s_single.push_back(folder_1l+
"*_ST_*root");
97 vector<TString> s_other;
98 s_other.push_back(folder_1l+
"*DYJetsToLL*root");
99 s_other.push_back(folder_1l+
"*_QCD_HT*root");
100 s_other.push_back(folder_1l+
"*_ZJet*root");
101 s_other.push_back(folder_1l+
"*_WWTo*root");
102 s_other.push_back(folder_1l+
"*ggZH_HToBB*root");
103 s_other.push_back(folder_1l+
"*ttHJetTobb*root");
104 vector<TString> s_t1t;
105 s_t1t.push_back(folder_1l+
"*T1tttt*1500_*root");
106 vector<TString> s_t1tc;
107 s_t1tc.push_back(folder_1l+
"*T1tttt*1200_*root");
110 vector<TString> s_DY;
111 s_DY.push_back(folder_2l+
"*DYJetsToLL*root");
112 vector<TString> s_tt_dl;
113 s_tt_dl.push_back(folder_2l+
"*_TTJets*Lept*root");
114 s_tt_dl.push_back(folder_2l+
"*_TTJets_HT*root");
115 vector<TString> s_singleDY;
116 s_singleDY.push_back(folder_2l+
"*ST_*root");
117 vector<TString> s_ttvDY;
118 s_ttvDY.push_back(folder_2l+
"*_TTWJets*root");
119 s_ttvDY.push_back(folder_2l+
"*_TTZTo*root");
120 vector<TString> s_otherDY;
121 s_otherDY.push_back(folder_2l+
"*_ZJet*root");
122 s_otherDY.push_back(folder_2l+
"*QCD_HT*root");
123 s_otherDY.push_back(folder_2l+
"*_WJetsToLNu*root");
124 s_otherDY.push_back(folder_2l+
"*_WWTo*root");
125 s_otherDY.push_back(folder_2l+
"*ggZH_HToBB*root");
126 s_otherDY.push_back(folder_2l+
"*ttHJetTobb*root");
129 vector<sfeats> Samples;
130 TString datatitle =
"Data";
132 Samples.push_back(
sfeats(s_trig_sl, datatitle,kBlack,1,
"(trig[4]||trig[8])&&pass")); Samples.back().isData =
true;
133 Samples.push_back(
sfeats(s_tt,
"t#bar{t}, 1 true lepton",
dps::c_tt_1l, 1,
"ntruleps<=1&&stitch"));
134 Samples.push_back(
sfeats(s_tt,
"t#bar{t}, 2 true leptons",
dps::c_tt_2l,1,
"ntruleps>=2&&stitch"));
141 Samples.push_back(
sfeats(s_other,
"Other", 1001, 1));
143 vector<int> ra4_sam, ra4_sam_ns;
144 unsigned nsam(Samples.size());
145 for(
unsigned sam(0); sam < nsam; sam++){
146 ra4_sam.push_back(sam);
147 ra4_sam_ns.push_back(nsam+sam);
148 vector<TString> sam_files = Samples[sam].file;
149 for(
unsigned ifile(0); ifile < sam_files.size(); ifile++)
150 if(Samples[sam].isData) sam_files[ifile].ReplaceAll(folder_1ldata, folder_nsdata);
151 else sam_files[ifile].ReplaceAll(folder_1l, folder_ns);
152 Samples.push_back(
sfeats(sam_files, Samples[sam].label, Samples[sam].color, Samples[sam].style,
154 Samples.back().isData = Samples[sam].isData;
157 int imj(Samples.size());
158 Samples.push_back(
sfeats(s_trig_sl_2l,
"Data 2l, N_{jets} #geq 5", kBlack, 1,
159 "pass&&(trig[4]||trig[8])&&ht>500&&met>200&&met<400&&njets>=5&&nbm<3&&(nmus+nels)==2&&mj>250")); Samples.back().isData =
true;
160 Samples.push_back(
sfeats(s_trig_sl,
"Data 1l, N_{jets} #geq 6, m_{T}#leq140, n_{b}#geq1",
dps::c_tt_1l, 1,
161 "pass&&(trig[4]||trig[8])&&ht>500&&met>200&&met<400&&njets>=6&&(nmus+nels)==1&&mt<=140&&nbm>=1&&mj>250"));
163 mj_sam.push_back(imj);
164 mj_sam.push_back(imj+1);
166 int idl(Samples.size());
169 Samples.push_back(
sfeats(s_trig_sl_2l,
"Data",kBlack,1,
170 "(trig[20]||trig[22])&&pass")); Samples.back().isData =
true;
171 Samples.push_back(
sfeats(s_tt_dl,
"t#bar{t}, 2 true leptons",
dps::c_tt_2l,1,
"ntruleps>=2&&stitch"));
172 Samples.push_back(
sfeats(s_tt_dl,
"t#bar{t}, 1 true lepton",
dps::c_tt_1l, 1,
"ntruleps==1&&stitch"));
178 for(
unsigned sam(idl); sam < Samples.size(); sam++) {
179 dl_sam.push_back(sam);
181 vector<int> dmu_sam(dl_sam), del_sam(dl_sam);
184 Samples.push_back(
sfeats(s_trig_sl,
"Data",kBlack,1,
185 "(trig[18])&&pass")); Samples.back().isData =
true;
188 Samples.push_back(
sfeats(s_trig_sl,
"Data",kBlack,1,
189 "(trig[22])&&pass")); Samples.back().isData =
true;
190 dmu_sam[0] = Samples.size()-2;
191 del_sam[0] = Samples.size()-1;
194 TString factor_c(
"100"), factor_nc(
"300");
195 int isig(Samples.size());
196 Samples.push_back(
sfeats(s_t1t,
"Sig NC #times "+factor_nc, kRed+2)); Samples.back().factor = factor_nc;
197 Samples.push_back(
sfeats(s_t1tc,
"Sig C #times "+factor_c, kRed+2,2)); Samples.back().factor = factor_c;
199 sig_sam.push_back(ra4_sam[0]);
200 sig_sam.push_back(isig);
201 sig_sam.push_back(isig+1);
202 for(
unsigned ind(1); ind<ra4_sam.size(); ind++)
203 sig_sam.push_back(ra4_sam[ind]);
206 factor_c =
"20"; factor_nc =
"20";
207 isig = Samples.size();
208 Samples.push_back(
sfeats(s_t1t_ns,
"Sig NC #times "+factor_nc, kRed+2)); Samples.back().factor = factor_nc;
209 Samples.push_back(
sfeats(s_t1tc_ns,
"Sig C #times "+factor_c, kRed+2,2)); Samples.back().factor = factor_c;
210 vector<int> sig_sam_ns;
211 sig_sam_ns.push_back(ra4_sam_ns[0]);
212 sig_sam_ns.push_back(isig);
213 sig_sam_ns.push_back(isig+1);
214 for(
unsigned ind(1); ind<ra4_sam.size(); ind++)
215 sig_sam_ns.push_back(ra4_sam_ns[ind]);
218 isig = Samples.size();
219 Samples.push_back(
sfeats(s_t1t,
"Sig NC #times "+factor_nc, kRed+2)); Samples.back().factor = factor_nc;
220 Samples.push_back(
sfeats(s_t1tc,
"Sig C #times "+factor_c, kRed+2,2)); Samples.back().factor = factor_c;
221 vector<int> sig_sam_log;
222 sig_sam_log.push_back(ra4_sam[0]);
223 sig_sam_log.push_back(isig);
224 sig_sam_log.push_back(isig+1);
225 for(
unsigned ind(1); ind<ra4_sam.size(); ind++)
226 sig_sam_log.push_back(ra4_sam[ind]);
231 TString mll(
"(mumu_m*(mumu_m>0&&mumu_pt1>30)+elel_m*(elel_m>0&&elel_pt1>30))>80&&(mumu_m*(mumu_m>0&&mumu_pt1>30)+elel_m*(elel_m>0&&elel_pt1>30))<100");
383 vars.push_back(
hfeats(
"mj",10,0,500, dl_sam,
"M_{J} [GeV]",
384 "pass&&nels==1&&nmus==1&&met>100&&nbm>=1&&(Sum$(leps_pt>30&&abs(leps_eta)<2.1)>0)"));
385 vars.back().whichPlots =
"2"; vars.back().normalize =
true;
387 vars.push_back(
hfeats(
"mj",10,0,500, dl_sam,
"M_{J} [GeV]",
388 "pass&&nels==1&&nmus==1&&met>100&&nbm>=1&&(Sum$(leps_pt>30&&abs(leps_eta)<2.1)>0)&&ht>300"));
389 vars.back().whichPlots =
"2"; vars.back().normalize =
true;
394 vars.push_back(
hfeats(
"mj",20,0,600, dl_sam,
"M_{J} [GeV]",
395 "pass&&ht>350&&(nmus>=2||nels>=2)&&njets<=3&&"+mll));
396 vars.back().whichPlots =
"2"; vars.back().normalize =
true;
398 vars.push_back(
hfeats(
"mj",20,0,600, dl_sam,
"M_{J} [GeV]",
399 "pass&&ht>350&&(nmus>=2||nels>=2)&&njets>=4&&"+mll));
400 vars.back().whichPlots =
"2"; vars.back().normalize =
true;
void plot_distributions(std::vector< sfeats > Samples, std::vector< hfeats > vars, TString luminosity="10", TString filetype=".eps", TString namestyle="LargeLabels", TString dir="1d", bool doRatio=false, bool showcuts=false)
TString metcut("met>200")