33 TString folder=
"/cms5r0/ald77/archive/"+
ntuple_date+
"/skim/";
34 TString folder_ns=
"/cms5r0/ald77/archive/"+
ntuple_date+
"/";
35 folder=
"/afs/cern.ch/user/m/manuelf/work/ucsb/2015_05_25/skim/";
36 folder_ns=
"/afs/cern.ch/user/m/manuelf/work/ucsb/2015_06_05/skim/";
39 vector<TString> s_t1t;
40 s_t1t.push_back(folder+
"*T1tttt*1500_*PU20*");
41 vector<TString> s_t1tc;
42 s_t1tc.push_back(folder+
"*T1tttt*1200_*PU20*");
44 s_tt.push_back(folder+
"*_TTJet*");
45 vector<TString> s_wjets;
46 s_wjets.push_back(folder+
"*_WJets*");
47 vector<TString> s_singlet;
48 s_singlet.push_back(folder+
"*_T*channel*");
49 vector<TString> s_ttv;
50 s_ttv.push_back(folder+
"*TTW*");
51 s_ttv.push_back(folder+
"*TTZ*");
52 vector<TString> s_other;
53 s_other.push_back(folder+
"*QCD_HT*");
54 s_other.push_back(folder+
"*_ZJet*");
55 s_other.push_back(folder+
"*DY*");
56 s_other.push_back(folder+
"*WH_HToBB*");
57 s_other.push_back(folder+
"*_TTJet*");
58 vector<TString> s_bkg;
59 s_bkg.push_back(folder+
"*_TTJet*");
60 s_bkg.push_back(folder+
"*_WJets*");
61 s_bkg.push_back(folder+
"*_T*channel*");
62 s_bkg.push_back(folder+
"*TTW*");
63 s_bkg.push_back(folder+
"*TTZ*");
64 s_bkg.push_back(folder+
"*QCD_HT*");
65 s_bkg.push_back(folder+
"*_ZJet*");
66 s_bkg.push_back(folder+
"*DY*");
67 s_bkg.push_back(folder+
"*WH_HToBB*");
68 vector<TString> s_bkgmtt;
69 s_bkgmtt.push_back(folder+
"*_WJets*");
70 s_bkgmtt.push_back(folder+
"*_T*channel*");
71 s_bkgmtt.push_back(folder+
"*TTW*");
72 s_bkgmtt.push_back(folder+
"*TTZ*");
73 s_bkgmtt.push_back(folder+
"*QCD_HT*");
74 s_bkgmtt.push_back(folder+
"*_ZJet*");
75 s_bkgmtt.push_back(folder+
"*DY*");
76 s_bkgmtt.push_back(folder+
"*WH_HToBB*");
79 vector<sfeats> Samples;
93 vector<int> ra4_sam, ra4_sam_ns;
94 unsigned nsam(Samples.size());
95 for(
unsigned sam(0); sam < nsam; sam++){
96 ra4_sam.push_back(sam);
97 ra4_sam_ns.push_back(nsam+sam);
98 vector<TString> sam_files = Samples[sam].file;
99 for(
unsigned ifile(0); ifile < sam_files.size(); ifile++)
100 sam_files[ifile].ReplaceAll(folder, folder_ns);
101 Samples.push_back(
sfeats(sam_files, Samples[sam].label, Samples[sam].color, Samples[sam].style,
103 Samples.back().doStack = Samples[sam].doStack;
107 unsigned isec1 = Samples.size();
109 Samples.push_back(
sfeats(s_t1t,
"Reco Rel. iso.", kGreen+2,2,
"1",
"nels_reliso+nmus_reliso"));
110 Samples.push_back(
sfeats(s_t1t,
"Reco Mini iso.", 4,2,
"1",
"nels+nmus"));
112 unsigned isec6 = Samples.size();
113 Samples.push_back(
sfeats(s_bkg,
"All bkg, m_{T} #leq 140", 1, 1,
"mt<=140"));
114 Samples.push_back(
sfeats(s_bkg,
"All bkg, m_{T} > 140", 2, -1,
"mt>140"));
115 Samples.push_back(
sfeats(s_tt,
"t#bar{t}, m_{T} #leq 140", 1, 1,
"mt<=140"));
116 Samples.push_back(
sfeats(s_tt,
"t#bar{t}, m_{T} > 140", 2, -1,
"mt>140"));
117 Samples.push_back(
sfeats(s_bkgmtt,
"Non-tt bkg, m_{T} #leq 140", 1, 1,
"mt<=140"));
118 Samples.push_back(
sfeats(s_bkgmtt,
"Non-tt bkg, m_{T} > 140", 2, -1,
"mt>140"));
125 vector<int> ra4_sec1;
126 ra4_sec1.push_back(isec1);
127 ra4_sec1.push_back(isec1+1);
128 ra4_sec1.push_back(isec1+2);
130 vector<int> ra4_sec6, ra4_sec6_bkg, ra4_sec6_bkgmtt;
131 ra4_sec6_bkg.push_back(isec6);
132 ra4_sec6_bkg.push_back(isec6+1);
133 ra4_sec6.push_back(isec6+2);
134 ra4_sec6.push_back(isec6+3);
135 ra4_sec6_bkgmtt.push_back(isec6+4);
136 ra4_sec6_bkgmtt.push_back(isec6+5);
138 vector<int> ra4_sec10;
139 ra4_sec10.push_back(0);
140 ra4_sec10.push_back(1);
141 ra4_sec10.push_back(2);
142 ra4_sec10.push_back(3);
144 vector<int> ra4_tt_t1_noskim;
145 ra4_tt_t1_noskim.push_back(nsam);
146 ra4_tt_t1_noskim.push_back(nsam+1);
147 ra4_tt_t1_noskim.push_back(nsam+2);
152 TString cuts(
"(nmus+nels)==1");
155 vars.push_back(
hfeats(
"ntruels+ntrumus",5,-0.5,4.5, ra4_sec1,
"Number of prompt e+#mu in T1tttt(1500,100)"));
158 cuts =
"(nmus+nels)==1&&ht>500&&met>200&&njets>=7&&nbm>=2&&met>400";
159 vars.push_back(
hfeats(
"mt",25,0,500, ra4_sam,
"m_{T} [GeV]",cuts,140));
161 vars.push_back(
hfeats(
"mj",32,0,1600, ra4_sam,
"M_{J} [GeV]",cuts,400));
162 cuts =
"(nmus+nels)==1&&ht>500&&met>200&&njets>=9&&nbm>=2&&met>400";
163 vars.push_back(
hfeats(
"mt",25,0,500, ra4_sam,
"m_{T} [GeV]",cuts,140));
165 vars.push_back(
hfeats(
"mj",32,0,1600, ra4_sam,
"M_{J} [GeV]",cuts,400));
168 vars.push_back(
hfeats(
"ht",35,0,3500, ra4_sam_ns,
"H_{T} [GeV]",
169 "(nmus+nels)==1&&met>200&&njets>="+
minjets+
"&&nbm>=2",500));
171 vars.push_back(
hfeats(
"met",40,0,800, ra4_sam_ns,
"MET [GeV]",
172 "(nmus+nels)==1&&ht>500&&njets>="+
minjets+
"&&nbm>=2",200));
174 vars.push_back(
hfeats(
"njets",18,-0.5,17.5, ra4_sam,
"Number of jets",
175 "(nmus+nels)==1&&ht>500&&met>200&&nbm>=2",6.5));
177 vars.push_back(
hfeats(
"nbm",7,-0.5,6.5, ra4_sam,
"Number of b-tags (CSVM)",
178 "(nmus+nels)==1&&ht>500&&met>200&&njets>="+
minjets,1.5));
180 vars.push_back(
hfeats(
"mt",25,0,500, ra4_sam,
"m_{T} [GeV]",cuts,140));
182 vars.push_back(
hfeats(
"mj",32,0,1600, ra4_sam,
"M_{J} [GeV]",cuts,
mjthresh.Atof()));
187 cuts +=
"&&ht>500&&met>200";
189 vars.push_back(
hfeats(
"mj",28,0,1400, ra4_sec6,
"M_{J} [GeV]",cuts+
"&&njets<=4",
mjthresh.Atof()));
190 vars.push_back(
hfeats(
"mj",28,0,1400, ra4_sec6,
"M_{J} [GeV]",cuts+
"&&njets>=5&&njets<=6",
mjthresh.Atof()));
191 vars.push_back(
hfeats(
"mj",28,0,1400, ra4_sec6,
"M_{J} [GeV]",cuts+
"&&njets>=7&&njets<=8",
mjthresh.Atof()));
192 vars.push_back(
hfeats(
"mj",28,0,1400, ra4_sec6,
"M_{J} [GeV]",cuts+
"&&njets>=9",
mjthresh.Atof()));
194 vars.push_back(
hfeats(
"njets",7,-0.5,6.5, ra4_sec6,
"Number of jets",cuts+
"&&njets<=6"));
195 vars.push_back(
hfeats(
"njets",6,6.5,12.5, ra4_sec6,
"Number of jets",cuts+
"&&njets>=7"));
220 vars.push_back(
hfeats(
"ht",30,500,3500, ra4_sam,
"H_{T} [GeV]",
221 "(nmus+nels)==1&&met>200&&njets>=7&&nbm>=2&&mt>140",500));
222 vars.push_back(
hfeats(
"ht",30,500,3500, ra4_sam,
"H_{T} [GeV]",
223 "(nmus+nels)==1&&met>200&&njets>=7&&nbm>=2&&mt>140&&mj>400",500));
224 vars.push_back(
hfeats(
"ht",30,500,3500, ra4_sam,
"H_{T} [GeV]",
225 "(nmus+nels)==1&&met>200&&njets>=7&&nbm>=2&&mt>140&&njets>=9",500));
228 cuts =
"(nmus+nels)==1&&ht>500&&met>200&&njets>=7";
229 vars.push_back(
hfeats(
"fjets08_m[0]",60,0,600, ra4_sec10,
"m(J_{1}) [GeV]",cuts));
230 vars.push_back(
hfeats(
"fjets08_m[1]",60,0,300, ra4_sec10,
"m(J_{2}) [GeV]",cuts));
231 vars.push_back(
hfeats(
"fjets08_m[2]",60,0,300, ra4_sec10,
"m(J_{3}) [GeV]",cuts));
233 cuts =
"(nmus+nels)==1&&ht>500&&met>200&&nbm>=2&&njets>=7&&mt>140&&mj>400";
234 vars.push_back(
hfeats(
"fjets08_m[0]",12,0,600, ra4_sam,
"m(J_{1}) [GeV]",cuts));
235 vars.back().maxYaxis = 18;
236 vars.push_back(
hfeats(
"fjets08_m[1]",12,0,300, ra4_sam,
"m(J_{2}) [GeV]",cuts));
237 vars.back().maxYaxis = 20;
238 vars.push_back(
hfeats(
"fjets08_m[2]",12,0,300, ra4_sam,
"m(J_{3}) [GeV]",cuts));
239 vars.back().maxYaxis = 29;
240 vars.push_back(
hfeats(
"min_dphi_bb",8,0,3.2, ra4_sam_ns,
"Minimum #Delta#phi(b,b)",cuts));
241 vars.back().maxYaxis = 10.5;
243 cuts =
"(nmus+nels)==1&&ht>500&&met>400&&nbm>=2&&njets>=7&&mt>140&&mj>400";
244 vars.push_back(
hfeats(
"fjets08_m[0]",12,0,600, ra4_sam,
"m(J_{1}) [GeV]",cuts));
245 vars.back().maxYaxis = 18;
246 vars.push_back(
hfeats(
"fjets08_m[1]",12,0,300, ra4_sam,
"m(J_{2}) [GeV]",cuts));
247 vars.back().maxYaxis = 20;
248 vars.push_back(
hfeats(
"fjets08_m[2]",12,0,300, ra4_sam,
"m(J_{3}) [GeV]",cuts));
249 vars.back().maxYaxis = 29;
250 vars.push_back(
hfeats(
"min_dphi_bb",8,0,3.2, ra4_sam_ns,
"Minimum #Delta#phi(b,b)",cuts));
251 vars.back().maxYaxis = 10.5;
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 ntuple_date("2015_05_25")