ra4_macros  bede988c286599a3a84b77a4d788ac0a971e89f9
plot_MJslice.cxx
Go to the documentation of this file.
1 // plot_1d: Macro that plots variables both lumi weighted and normalized to the same area.
2 
3 #include <iostream>
4 #include <vector>
5 
6 #include "TString.h"
7 
8 #include "utilities_macros.hpp"
9 
10 using namespace std;
11 
12 int main(){
13 
14  TString folder="/cms5r0/ald77/archive/2015_05_21/skim/";
15  TString folder_noskim="/cms5r0/ald77/archive/2015_05_21/";
16  vector<TString> s_t1t;
17  s_t1t.push_back(folder+"*T1tttt*1500_*PU20*");
18  vector<TString> s_t1tc;
19  s_t1tc.push_back(folder+"*T1tttt*1200_*PU20*");
20  vector<TString> s_tt;
21  s_tt.push_back(folder+"*_TTJet*");
22  vector<TString> s_tt_noskim;
23  s_tt_noskim.push_back(folder_noskim+"*_TTJet*12.root");
24  vector<TString> s_wjets;
25  s_wjets.push_back(folder+"*WJetsToLNu_HT*");
26  vector<TString> s_singlet;
27  s_singlet.push_back(folder+"*_T*channel*");
28  vector<TString> s_ttv;
29  s_ttv.push_back(folder+"*TTW*");
30  s_ttv.push_back(folder+"*TTZ*");
31  vector<TString> s_other;
32  s_other.push_back(folder+"*QCD_HT*");
33  s_other.push_back(folder+"*_ZJet*");
34  s_other.push_back(folder+"*DY*");
35  s_other.push_back(folder+"*WH_HToBB*");
36 
37  // Reading ntuples
38  vector<sfeats> Samples;
39  Samples.push_back(sfeats(s_t1t, "T1tttt(1500,100)", ra4::c_t1tttt));//0
40  Samples.push_back(sfeats(s_t1tc, "T1tttt(1200,800)", ra4::c_t1tttt,2));//1
41  Samples.push_back(sfeats(s_tt, "semileptonic t#bar{t}", 38, 1,
42  "(nmus+nels)==1&&njets>=6&&(ntruleps<=1)"));//2
43  Samples.push_back(sfeats(s_tt, "fully-leptonic t#bar{t}", kRed-9,1,
44  "(nmus+nels)==1&&njets>=6&&(ntruleps>=2)"));//3
45  Samples.push_back(sfeats(s_wjets, "W+jets", ra4::c_wjets));//4
46  Samples.push_back(sfeats(s_singlet, "Single t", ra4::c_singlet));//5
47  Samples.push_back(sfeats(s_ttv, "ttV", ra4::c_ttv));//6
48  Samples.push_back(sfeats(s_other, "Other", ra4::c_other));//7
49  Samples.push_back(sfeats(s_tt_noskim, "t#bar{t}", ra4::c_tt_1l,1));//8
50 
51 
52  Samples.push_back(sfeats(s_tt, "t#bar{t} n_{j}=4", 2, 1,
53  "njets==4"));//9
54  Samples.push_back(sfeats(s_tt, "t#bar{t} n_{j}=5", 4, 1,
55  "njets==5"));//10
56  Samples.push_back(sfeats(s_tt, "t#bar{t} n_{j}=6", 8, 1,
57  "njets==6"));//11
58  Samples.push_back(sfeats(s_tt, "t#bar{t} n_{j}=7", 6, 1,
59  "njets==7"));//12
60  Samples.push_back(sfeats(s_tt, "t#bar{t} n_{j}=8+",kCyan+1, 1,
61  "njets>=8"));//13
62 
63  Samples.push_back(sfeats(s_tt, "t#bar{t} m_{T} > 140", 4, 1,
64  "mt>140&&njets>=6&&(nmus+nels)==1"));//14
65  Samples.push_back(sfeats(s_tt, "t#bar{t} m_{T} < 140", 2, 1,
66  "mt<=140&&njets>=6&&(nmus+nels)==1"));//15
67  Samples.push_back(sfeats(s_tt, "t#bar{t} dilepton reco", 8, 1,
68  "mt<=140&&njets>=5&&(nmus+nels)==2"));//16
69 
70 
71  Samples.push_back(sfeats(s_tt, "t#bar{t} 1 l, M_{J} > 500", 4, 1,
72  "mj>500&&(ntruleps<=1)"));//17
73  Samples.push_back(sfeats(s_tt, "t#bar{t} 2 l, M_{J} > 500", kRed,1,
74  "mj>500&&(ntruleps>=2)"));//18
75 
76  Samples.push_back(sfeats(s_tt, "t#bar{t} 1 l, M_{J} < 500", 38, 1,
77  "mj<=500&&(ntruleps<=1)"));//19
78  Samples.push_back(sfeats(s_tt, "t#bar{t} 2 l, M_{J} < 500", kRed-9,1,
79  "mj<=500&&(ntruleps>=2)"));//20
80 
81 
82  Samples.push_back(sfeats(s_tt, "t#bar{t} 1 l, 1 B", 4, 1,
83  "nbm==1&&(ntruleps<=1)"));//21
84  Samples.push_back(sfeats(s_tt, "t#bar{t} 1 l, 2 B", 38, 1,
85  "nbm==2&&(ntruleps<=1)"));//22
86  Samples.push_back(sfeats(s_tt, "t#bar{t} 1 l, 3+ B", 8, 1,
87  "nbm>=3&&(ntruleps<=1)"));//23
88 
89  Samples.push_back(sfeats(s_tt, "t#bar{t} 2 l, 1 B", kRed,1,
90  "nbm==1&&(ntruleps>=2)"));//24
91  Samples.push_back(sfeats(s_tt, "t#bar{t} 2 l, 2 B", 46,1,
92  "nbm==2&&(ntruleps>=2)"));//25
93  Samples.push_back(sfeats(s_tt, "t#bar{t} 2 l, 3+ B", kOrange,1,
94  "nbm>=3&&(ntruleps>=2)"));//26
95 
96 
97 
98  vector<int> ra4_sam;
99  ra4_sam.push_back(0);
100  ra4_sam.push_back(1);
101  ra4_sam.push_back(2);
102  ra4_sam.push_back(3);
103  ra4_sam.push_back(4);
104  ra4_sam.push_back(5);
105  ra4_sam.push_back(6);
106  ra4_sam.push_back(7);
107 
108  vector<int> ra4_tt_t1;
109  ra4_tt_t1.push_back(0);
110  ra4_tt_t1.push_back(1);
111  ra4_tt_t1.push_back(2);
112 
113 
114  vector<int> ra4_tt_nj_slices;
115  ra4_tt_nj_slices.push_back(9);
116  ra4_tt_nj_slices.push_back(10);
117  ra4_tt_nj_slices.push_back(11);
118  ra4_tt_nj_slices.push_back(12);
119  ra4_tt_nj_slices.push_back(13);
120 
121  vector<int> ra4_tt_mt_slices;
122  ra4_tt_mt_slices.push_back(15);
123  ra4_tt_mt_slices.push_back(3);
124  ra4_tt_mt_slices.push_back(16);
125  ra4_tt_mt_slices.push_back(14);
126  ra4_tt_mt_slices.push_back(2);
127 
128 
129  vector<int> ra4_tt_mt_slices2;
130  //dilep, single lep high MJ low MJ
131  ra4_tt_mt_slices2.push_back(17);
132  ra4_tt_mt_slices2.push_back(18);
133  ra4_tt_mt_slices2.push_back(19);
134  ra4_tt_mt_slices2.push_back(20);
135 
136 
137  vector<int> ra4_tt_mt_slices3;
138  //dilep, single lep x 1 2 3+ B
139  ra4_tt_mt_slices3.push_back(21);
140  ra4_tt_mt_slices3.push_back(22);
141  ra4_tt_mt_slices3.push_back(23);
142  ra4_tt_mt_slices3.push_back(24);
143  ra4_tt_mt_slices3.push_back(25);
144  ra4_tt_mt_slices3.push_back(26);
145 
146  vector<hfeats> vars;
147 
148 
150  // // Run without skim
151  // vars.push_back(hfeats("met",20,0,800, ra4_sam, "MET (GeV)","ht>500&&nbm>=2&&njets>=6&&(nmus+nels)==1",200));
152  // vars.push_back(hfeats("ht",35,0,3500, ra4_sam, "H_{T} (GeV)","met>200&&nbm>=2&&njets>=6&&(nmus+nels)==1",500));
153  // // Run without skim
154 
155 
156  vars.push_back(hfeats("mt",20,0,280, ra4_tt_nj_slices, "combined semi and fully leptonic ttbar m_{T} (GeV)",
157  "ht>500&&met>200&&nbm>=2&&(nmus+nels)==1",140));
158 
159  vars.push_back(hfeats("mt",20,0,280, ra4_tt_nj_slices, "semileptonic ttbar m_{T} (GeV)",
160  "ht>500&&met>200&&nbm>=2&&(nmus+nels)==1&&ntruleps<=1",140));
161 
162  vars.push_back(hfeats("mt",20,0,280, ra4_tt_nj_slices, "fully leptonic ttbar m_{T} (GeV)",
163  "ht>500&&met>200&&nbm>=2&&(nmus+nels)==1&&ntruleps>=2",140));
164 
165 
166  vars.push_back(hfeats("mt",20,0,280, ra4_tt_mt_slices2, "m_{T} (GeV)",
167  "ht>500&&njets>=6&&met>200&&(nmus+nels)==1&&nbm>=2",140));
168 
169  vars.push_back(hfeats("mt",20,0,280, ra4_tt_mt_slices3, "m_{T} (GeV)",
170  "ht>500&&njets>=6&&met>200&&(nmus+nels)==1&&nbm>=1",140));
171 
172  vars.push_back(hfeats("mt",20,0,280, ra4_tt_mt_slices3, "m_{T} (GeV)",
173  "mj>500&&ht>500&&njets>=6&&met>200&&(nmus+nels)==1&&nbm>=1",140));
174 
175  vars.push_back(hfeats("mt",20,0,280, ra4_tt_mt_slices3, "m_{T} (GeV)",
176  "mj<=500&&ht>500&&njets>=6&&met>200&&(nmus+nels)==1&&nbm>=1",140));
177 
178  vars.push_back(hfeats("mt",20,0,280, ra4_tt_mt_slices3, "m_{T} (GeV)",
179  "mj>500&&ht>500&&njets>=6&&met>200&&(nmus+nels)==1&&nbm>=1",140));
180 
181  vars.push_back(hfeats("mt",20,0,280, ra4_tt_mt_slices3, "m_{T} (GeV)",
182  "mj<=500&&ht>500&&njets>=6&&met>200&&(nmus+nels)==1&&nbm>=1",140));
183 
184 
185 
186  vars.push_back(hfeats("mj",15,0,1000, ra4_tt_nj_slices, "M_{J} (GeV)",
187  "ht>500&&met>200&&nbm>=2&&mt>140&&(nmus+nels)==1"));
188 
189  vars.push_back(hfeats("mj",20,0,1000, ra4_tt_nj_slices, "M_{J} (GeV)",
190  "ht>500&&met>200&&nbm>=2&&mt<=140&&(nmus+nels)==1"));
191 
192 
193  vars.push_back(hfeats("mj",20,0,1000, ra4_tt_mt_slices, "M_{J} (GeV)",
194  "ht>500&&met>200&&nbm>=2"));
195 
196 
197 
198  /* vars.push_back(hfeats("mt",60,0,600, ra4_sam, "m_{T} (GeV)",
199  "ht>500&&met>400&&nbm>=2&&njets>=6&&(nmus+nels)==1",140));
200  vars.push_back(hfeats("met",20,200,1200, ra4_sam, "MET (GeV)",
201  "ht>500&&nbm>=2&&njets>=6&&mt>140&&(nmus+nels)==1",400));
202  vars.push_back(hfeats("njets",18,-0.5,17.5, ra4_sam, "Number of 40 GeV jets",
203  "ht>500&&met>400&&nbm>=2&&mt>140&&(nmus+nels)==1",5.5));
204  vars.push_back(hfeats("nbm",7,-0.5,6.5, ra4_sam, "Number of b-tags (CSVM)",
205  "ht>500&&met>400&&njets>=6&&mt>140&&(nmus+nels)==1",1.5));
206  vars.push_back(hfeats("mj",32,0,1600, ra4_sam, "M_{J} (GeV)",
207  "ht>500&&met>400&&nbm>=2&&njets>=6&&mt>140&&(nmus+nels)==1",500));
208 
209  vars.push_back(hfeats("mt",60,0,600, ra4_sam, "m_{T} (GeV)",
210  "ht>500&&met>400&&nbm>=2&&njets>=8&&(nmus+nels)==1",140));
211  vars.push_back(hfeats("met",20,200,1200, ra4_sam, "MET (GeV)",
212  "ht>500&&nbm>=2&&njets>=8&&mt>140&&(nmus+nels)==1",400));
213  vars.push_back(hfeats("nbm",7,-0.5,6.5, ra4_sam, "Number of b-tags (CSVM)",
214  "ht>500&&met>400&&njets>=8&&mt>140&&(nmus+nels)==1",1.5));
215  vars.push_back(hfeats("mj",32,0,1600, ra4_sam, "M_{J} (GeV)",
216  "ht>500&&met>400&&nbm>=2&&njets>=8&&mt>140&&(nmus+nels)==1",500));*/
217 
218  plot_distributions(Samples, vars, "10", ".eps", "RA4");
219 
220 }
221 
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)
STL namespace.
int main()