34 TString folder=
"/net/cms2/cms2r0/ald77/archive/"+
ntuple_date+
"/";
35 TString folder_ns=
"/net/cms2/cms2r0/ald77/archive/"+
ntuple_date+
"/";
40 vector<TString> s_t1t;
41 s_t1t.push_back(folder+
"*T1tttt*1500_*PU20*");
42 vector<TString> s_t1tc;
43 s_t1tc.push_back(folder+
"*T1tttt*1200_*PU20*");
45 s_tt.push_back(folder+
"*_TTJet*25ns*");
46 vector<TString> s_wjets;
47 s_wjets.push_back(folder+
"*_WJets*");
48 vector<TString> s_singlet;
49 s_singlet.push_back(folder+
"*_ST*");
50 vector<TString> s_ttv;
51 s_ttv.push_back(folder+
"*TTW*");
52 s_ttv.push_back(folder+
"*TTZ*");
53 vector<TString> s_other;
54 s_other.push_back(folder+
"*QCD_HT*");
55 s_other.push_back(folder+
"*_ZJet*");
56 s_other.push_back(folder+
"*DY*");
57 s_other.push_back(folder+
"*WH_HToBB*");
58 s_other.push_back(folder+
"*_TTJet*");
59 vector<TString> s_allbkg;
60 s_allbkg.push_back(folder+
"*QCD_HT*");
61 s_allbkg.push_back(folder+
"*_ZJet*");
62 s_allbkg.push_back(folder+
"*DY*");
63 s_allbkg.push_back(folder+
"*WH_HToBB*");
64 s_allbkg.push_back(folder+
"*_TTJet*25ns*");
65 s_allbkg.push_back(folder+
"*TTW*");
66 s_allbkg.push_back(folder+
"*TTZ*");
67 s_allbkg.push_back(folder+
"*_T*channel*");
68 s_allbkg.push_back(folder+
"*_WJets*");
71 vector<sfeats> Samples;
72 Samples.push_back(
sfeats(s_t1t,
"T1tttt(1500,100)", kBlack));
73 Samples.push_back(
sfeats(s_t1tc,
"T1tttt(1200,800)", kBlack,2));
83 vector<int> ra4_sam, ra4_sam_ns;
84 unsigned nsam(Samples.size());
85 for(
unsigned sam(0); sam < nsam; sam++){
86 ra4_sam.push_back(sam);
87 ra4_sam_ns.push_back(nsam+sam);
88 vector<TString> sam_files = Samples[sam].file;
89 for(
unsigned ifile(0); ifile < sam_files.size(); ifile++)
90 sam_files[ifile].ReplaceAll(folder, folder_ns);
91 Samples.push_back(
sfeats(sam_files, Samples[sam].label, Samples[sam].color, Samples[sam].style,
96 unsigned isec1 = Samples.size();
97 Samples.push_back(
sfeats(s_t1t,
"True", kBlack,1,
"1",
"ntruels+ntrumus"));
98 Samples.push_back(
sfeats(s_t1t,
"Reco Rel. iso.", kGreen+2,2,
"1",
"nels_reliso+nmus_reliso"));
99 Samples.push_back(
sfeats(s_t1t,
"Reco Mini iso.", 4,2,
"1",
"nels+nmus"));
101 unsigned isec6 = Samples.size();
102 Samples.push_back(
sfeats(s_tt,
"t#bar{t} 1l, m_{T} #leq 140", 1, 1,
"ntruleps==1&&mt<=140"));
103 Samples.push_back(
sfeats(s_tt,
"t#bar{t} 1l, m_{T} > 140", 3, -1,
"ntruleps==1&&mt>140"));
104 Samples.push_back(
sfeats(s_tt,
"t#bar{t} 2l, m_{T} #leq 140", 2, -1,
"ntruleps>=2&&mt<=140"));
105 Samples.push_back(
sfeats(s_tt,
"t#bar{t} 2l, m_{T} > 140", 4, -1,
"ntruleps>=2&&mt>140"));
107 unsigned isec11 = Samples.size();
108 vector<TString> s_allbkg_ns = s_allbkg;
109 for(
unsigned ifile(0); ifile < s_allbkg_ns.size(); ifile++)
110 s_allbkg_ns[ifile].ReplaceAll(folder, folder_ns);
111 Samples.push_back(
sfeats(s_allbkg,
"Exp. data", 1, -1)); Samples.back().isData =
true;
112 Samples.push_back(
sfeats(s_allbkg_ns,
"Exp. data", 1, -1)); Samples.back().isData =
true;
114 vector<int> ra4_sec1;
115 ra4_sec1.push_back(isec1);
116 ra4_sec1.push_back(isec1+1);
117 ra4_sec1.push_back(isec1+2);
119 vector<int> ra4_sec6;
120 ra4_sec6.push_back(isec6);
122 ra4_sec6.push_back(isec6+2);
123 ra4_sec6.push_back(isec6+3);
126 vector<int> ra4_sec11, ra4_sec11_ns;
127 ra4_sec11.push_back(isec11);
128 ra4_sec11_ns.push_back(isec11+1);
129 for(
unsigned ind(0); ind<ra4_sam.size(); ind++) ra4_sec11.push_back(ra4_sam[ind]);
130 for(
unsigned ind(0); ind<ra4_sam_ns.size(); ind++) ra4_sec11_ns.push_back(ra4_sam_ns[ind]);
132 vector<int> ra4_tt_t1_noskim;
133 ra4_tt_t1_noskim.push_back(nsam);
134 ra4_tt_t1_noskim.push_back(nsam+1);
135 ra4_tt_t1_noskim.push_back(nsam+2);
140 TString cuts(
"(nmus+nels)==1");
143 cuts =
"(nmus+nels)==1&&ht>500&&met>200&&njets>=7&&nbm>=2&&met>400";
144 vars.push_back(
hfeats(
"mt",25,0,500, ra4_sam,
"m_{T} [GeV]",cuts,140));
146 vars.push_back(
hfeats(
"mj",32,0,1600, ra4_sam,
"M_{J} [GeV]",cuts,400));
147 cuts =
"(nmus+nels)==1&&ht>500&&met>200&&njets>=9&&nbm>=2&&met>400";
148 vars.push_back(
hfeats(
"mt",25,0,500, ra4_sam,
"m_{T} [GeV]",cuts,140));
150 vars.push_back(
hfeats(
"mj",32,0,1600, ra4_sam,
"M_{J} [GeV]",cuts,400));
152 vars.push_back(
hfeats(
"ntruels+ntrumus",5,-0.5,4.5, ra4_sec1,
"Number of prompt e+#mu in T1tttt(1500,100)"));
153 vars.push_back(
hfeats(
"ht",30,500,3500, ra4_sam,
"H_{T} [GeV]",
154 "(nmus+nels)==1&&met>200&&njets>=7&&nbm>=2&&mt>140",500));
155 vars.push_back(
hfeats(
"ht",30,500,3500, ra4_sam,
"H_{T} [GeV]",
156 "(nmus+nels)==1&&met>200&&njets>=7&&nbm>=2&&mt>140&&mj>400",500));
157 vars.push_back(
hfeats(
"ht",30,500,3500, ra4_sam,
"H_{T} [GeV]",
158 "(nmus+nels)==1&&met>200&&njets>=7&&nbm>=2&&mt>140&&njets>=9",500));
165 vars.push_back(
hfeats(
"met",40,0,800, ra4_sam_ns,
"MET [GeV]",
166 "(nmus+nels)==1&&ht>500&&njets>="+
minjets+
"&&nbm>=2",200));
168 vars.back().whichPlots =
"1";
169 vars.push_back(
hfeats(
"njets",18,-0.5,17.5, ra4_sam,
"Number of jets",
170 "(nmus+nels)==1&&ht>500&&met>200&&nbm>=2",6.5));
172 vars.back().whichPlots =
"1";
173 vars.push_back(
hfeats(
"nbm",7,-0.5,6.5, ra4_sam,
"Number of b-tags (CSVM)",
174 "(nmus+nels)==1&&ht>500&&met>200&&njets>="+
minjets,1.5));
176 vars.back().whichPlots =
"1";
185 cuts +=
"&&ht>500&&met>200";
186 vars.push_back(
hfeats(
"mj",28,0,1400, ra4_sec6,
"M_{J} [GeV]",cuts+
"&&njets<=4",
mjthresh.Atof()));
187 vars.push_back(
hfeats(
"mj",28,0,1400, ra4_sec6,
"M_{J} [GeV]",cuts+
"&&njets>=5&&njets<=6",
mjthresh.Atof()));
188 vars.push_back(
hfeats(
"mj",28,0,1400, ra4_sec6,
"M_{J} [GeV]",cuts+
"&&njets>=7&&njets<=8",
mjthresh.Atof()));
189 vars.push_back(
hfeats(
"mj",28,0,1400, ra4_sec6,
"M_{J} [GeV]",cuts+
"&&njets>=9",
mjthresh.Atof()));
191 vars.push_back(
hfeats(
"njets",7,-0.5,6.5, ra4_sec6,
"Number of jets",cuts+
"&&njets<=6"));
192 vars.push_back(
hfeats(
"njets",6,6.5,12.5, ra4_sec6,
"Number of jets",cuts+
"&&njets>=7"));
196 vars.push_back(
hfeats(
"ht",17,0,3400, ra4_sec11_ns,
"H_{T} [GeV]",
197 "(nmus+nels)==1&&met>200&&njets>="+
minjets+
"&&nbm>=2",500));
198 vars.back().whichPlots =
"12";
199 vars.push_back(
hfeats(
"met",20,0,800, ra4_sec11_ns,
"MET [GeV]",
200 "(nmus+nels)==1&&ht>500&&njets>="+
minjets+
"&&nbm>=2",200));
201 vars.back().whichPlots =
"12";
202 vars.push_back(
hfeats(
"njets",18,-0.5,17.5, ra4_sec11,
"Number of jets",
203 "(nmus+nels)==1&&ht>500&&met>200&&nbm>=2",6.5));
204 vars.back().whichPlots =
"12";
205 vars.push_back(
hfeats(
"nbm",7,-0.5,6.5, ra4_sec11,
"Number of b-tags (CSVM)",
206 "(nmus+nels)==1&&ht>500&&met>200&&njets>="+
minjets,1.5));
207 vars.back().whichPlots =
"12";
208 cuts +=
"&&ht>500&&met>200&&njets>="+
minjets+
"&&nbm>=2";
209 vars.push_back(
hfeats(
"mt",25,0,500, ra4_sec11,
"m_{T} [GeV]",cuts,140));
210 vars.back().whichPlots =
"12";
212 vars.push_back(
hfeats(
"mj",16,0,1600, ra4_sec11,
"M_{J} [GeV]",cuts,
mjthresh.Atof()));
213 vars.back().whichPlots =
"12";
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_07_22")