10 #include "TDirectory.h" 19 float data,
float qcd,
float ttbar,
float wjets,
float other,
20 float sig1000,
float sig1100,
float sig1200,
float sig1300,
float sig1400,
21 float data_err,
float qcd_err,
float ttbar_err,
float wjets_err,
float other_err,
22 float sig1000_err,
float sig1100_err,
float sig1200_err,
float sig1300_err,
float sig1400_err,
float doLatex);
24 float qcd,
float ttbar,
float wjets,
float other,
float sig,
25 float qcd_err,
float ttbar_err,
float wjets_err,
float other_err,
26 float dataovermc,
bool doNorm);
34 cout <<
" ........................... "<< endl;
35 cout <<
" .. I am making yield table " << endl;
36 cout <<
" ........................... "<< endl;
40 "0-lepton,HT>1500,4#leq N_{jets}#leq5,500<MJ<800",
41 "0-lepton,HT>1500,6#leq N_{jets}#leq7,500<MJ<800",
42 "1-lepton,HT>1200,4#leq N_{jets}#leq5,500<MJ<800",
43 "0-lepton,HT>1500,4#leq N_{jets}#leq5,MJ>800",
44 "0-lepton,HT>1500,6#leq N_{jets}#leq7,MJ>800",
45 "1-lepton,HT>1200,4#leq N_{jets}#leq5,MJ>800",
47 "0-lepton,HT>1500,4#leq N_{jets}#leq5,300<MJ<500",
48 "0-lepton,HT>1500,6#leq N_{jets}#leq7,300<MJ<500",
49 "0-lepton,HT>1500,8#leq N_{jets}#leq9,300<MJ<500",
50 "0-lepton,HT>1500,N_{jets}#geq10,300<MJ<500",
52 "0-lepton,HT>1500,N_{jets}#geq10,500<MJ<800",
53 "1-lepton,HT>1200,6#leq N_{jets}#leq7,500<MJ<800",
54 "1-lepton,HT>1200,N_{jets}#geq8,500<MJ<800",
56 "0-lepton,HT>1500,N_{jets}#geq10,MJ>800",
57 "1-lepton,HT>1200,6#leq N_{jets}#leq7,MJ>800",
58 "1-lepton,HT>1200,N_{jets}#geq8,MJ>800",
60 "0-lepton,HT>1500,8#leq N_{jets}#leq9,500<MJ<800",
61 "0-lepton,HT>1500,8#leq N_{jets}#leq9,MJ>800" 64 TString binLatex[18] = {
66 "N_{leps}=0,H_{T}>1500~\\GeV,4\\leq N_{jets}\\leq5, 500<M_{J}<800~\\GeV",
67 "N_{leps}=0,H_{T}>1500~\\GeV,6\\leq N_{jets}\\leq7, 500<M_{J}<800~\\GeV",
68 "N_{leps}=1,H_{T}>1200~\\GeV,4\\leq N_{jets}\\leq5, 500<M_{J}<800~\\GeV",
69 "N_{leps}=0,H_{T}>1500~\\GeV,4\\leq N_{jets}\\leq5, M_{J}>800~\\GeV",
70 "N_{leps}=0,H_{T}>1500~\\GeV,6\\leq N_{jets}\\leq7, M_{J}>800~\\GeV",
71 "N_{leps}=1,H_{T}>1200~\\GeV,4\\leq N_{jets}\\leq5, M_{J}>800~\\GeV",
73 "N_{leps}=0,H_{T}>1500~\\GeV,4\\leq N_{jets}\\leq5,300<M_{J}<500~\\GeV",
74 "N_{leps}=0,H_{T}>1500~\\GeV,6\\leq N_{jets}\\leq7,300<M_{J}<500~\\GeV",
75 "N_{leps}=0,H_{T}>1500~\\GeV,8\\leq N_{jets}\\leq9,300<M_{J}<500~\\GeV",
76 "N_{leps}=0,H_{T}>1500~\\GeV,N_{jets}\\geq10,300<M_{J}<500~\\GeV",
78 "N_{leps}=0,H_{T}>1500~\\GeV,N_{jets}\\geq10,500<M_{J}<800~\\GeV",
79 "N_{leps}=1,H_{T}>1200~\\GeV,6\\leq N_{jets}\\leq7,500<M_{J}<800~\\GeV",
80 "N_{leps}=1,H_{T}>1200~\\GeV,N_{jets}\\geq8,500<M_{J}<800~\\GeV",
82 "N_{leps}=0,H_{T}>1500~\\GeV,N_{jets}\\geq10,M_{J}>800~\\GeV",
83 "N_{leps}=1,H_{T}>1200~\\GeV,6\\leq N_{jets}\\leq7,M_{J}>800~\\GeV",
84 "N_{leps}=1,H_{T}>1200~\\GeV,N_{jets}\\geq8,M_{J}>800~\\GeV",
86 "N_{leps}=0,H_{T}>1500~\\GeV,8\\leq N_{jets}\\leq9,500<M_{J}<800~\\GeV",
87 "N_{leps}=0,H_{T}>1500~\\GeV,8\\leq N_{jets}\\leq9,M_{J}>800~\\GeV" 90 TFile*
infile = TFile::Open(
"variations/sum_rescaled.root",
"READ");
92 float data[18][5], qcd[18][5], ttbar[18][5], wjets[18][5], other[18][5],
93 sig1000[18][5], sig1100[18][5], sig1200[18][5], sig1300[18][5], sig1400[18][5];
94 float data_err[18][5], qcd_err[18][5], ttbar_err[18][5], wjets_err[18][5], other_err[18][5],
95 sig1000_err[18][5], sig1100_err[18][5], sig1200_err[18][5], sig1300_err[18][5], sig1400_err[18][5];
96 for(
int ibin=0; ibin<18; ibin++)
98 if(ibin>=6 && ibin<=9)
continue;
99 for(
int inb=0; inb<5; inb++)
103 ttbar[ibin][inb] = 0;
104 wjets[ibin][inb] = 0;
105 other[ibin][inb] = 0;
106 sig1000[ibin][inb] = 0;
107 sig1100[ibin][inb] = 0;
108 sig1200[ibin][inb] = 0;
109 sig1300[ibin][inb] = 0;
110 sig1400[ibin][inb] = 0;
112 data_err[ibin][inb] = 0;
113 qcd_err[ibin][inb] = 0;
114 ttbar_err[ibin][inb] = 0;
115 wjets_err[ibin][inb] = 0;
116 other_err[ibin][inb] = 0;
117 sig1000_err[ibin][inb] = 0;
118 sig1100_err[ibin][inb] = 0;
119 sig1200_err[ibin][inb] = 0;
120 sig1300_err[ibin][inb] = 0;
121 sig1400_err[ibin][inb] = 0;
125 for(
int ibin=0; ibin<18; ibin++)
127 if(ibin>=6 && ibin<=9)
continue;
130 for(
int inb=1; inb<5; inb++)
132 data[ibin][inb-1]=
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/data_obs", ibin)))->GetBinContent(inb+1);
133 qcd[ibin][inb-1]=
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/qcd", ibin)))->GetBinContent(inb+1);
134 ttbar[ibin][inb-1]=
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/ttbar", ibin)))->GetBinContent(inb+1);
135 wjets[ibin][inb-1]=
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/wjets", ibin)))->GetBinContent(inb+1);
136 other[ibin][inb-1]=
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/other", ibin)))->GetBinContent(inb+1);
137 sig1000[ibin][inb-1]=
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/signal_M1000", ibin)))->GetBinContent(inb+1);
138 sig1100[ibin][inb-1]=
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/signal_M1100", ibin)))->GetBinContent(inb+1);
139 sig1200[ibin][inb-1]=
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/signal_M1200", ibin)))->GetBinContent(inb+1);
140 sig1300[ibin][inb-1]=
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/signal_M1300", ibin)))->GetBinContent(inb+1);
141 sig1400[ibin][inb-1]=
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/signal_M1400", ibin)))->GetBinContent(inb+1);
143 data_err[ibin][inb-1]=
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/data_obs", ibin)))->GetBinError(inb+1);
144 qcd_err[ibin][inb-1]=
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/qcd", ibin)))->GetBinError(inb+1);
145 ttbar_err[ibin][inb-1]=
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/ttbar", ibin)))->GetBinError(inb+1);
146 wjets_err[ibin][inb-1]=
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/wjets", ibin)))->GetBinError(inb+1);
147 other_err[ibin][inb-1]=
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/other", ibin)))->GetBinError(inb+1);
148 sig1000_err[ibin][inb-1]=
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/signal_M1000", ibin)))->GetBinError(inb+1);
149 sig1100_err[ibin][inb-1]=
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/signal_M1100", ibin)))->GetBinError(inb+1);
150 sig1200_err[ibin][inb-1]=
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/signal_M1200", ibin)))->GetBinError(inb+1);
151 sig1300_err[ibin][inb-1]=
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/signal_M1300", ibin)))->GetBinError(inb+1);
152 sig1400_err[ibin][inb-1]=
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/signal_M1400", ibin)))->GetBinError(inb+1);
156 float sig1000sum(0), sig1100sum(0), sig1200sum(0), sig1300sum(0), sig1400sum(0);
157 for(
int ibin=0; ibin<18; ibin++)
159 if(ibin>5 && ibin<10)
continue;
160 for(
int inb=1; inb<5; inb++)
162 sig1000sum = sig1000sum + sig1000[ibin][inb-1];
163 sig1100sum = sig1100sum + sig1100[ibin][inb-1];
164 sig1200sum = sig1200sum + sig1200[ibin][inb-1];
165 sig1300sum = sig1300sum + sig1300[ibin][inb-1];
166 sig1400sum = sig1400sum + sig1400[ibin][inb-1];
173 for(
int ibin=0; ibin<18; ibin++)
176 if(ibin>5 && ibin<10)
continue;
181 cout <<
"\\begin{table}" << endl;
182 cout <<
"\\centering" << endl;
183 cout <<
"\\caption{Yields for $" << binLatex[ibin].Data()<<
"$. Uncertainties are statistical only.}" << endl;
184 cout <<
"\\begin{tabular}[tbp!]{ l | c c c c | c c c }" << endl;
185 cout <<
"\\hline" << endl;
186 cout <<
"$N_{b}$ & QCD & $t\\bar{t}$ & W+jets & Other & $m_{\\tilde{g}}=1000$ & $m_{\\tilde{g}}=1200$ & $m_{\\tilde{g}}=1400$ \\\\" << endl;
187 cout <<
"\\hline\\hline" << endl;
192 left << setw(142) << Form(
"Bin %i: %s",ibin, (bin[ibin].ReplaceAll(
"#leq",
"<=").ReplaceAll(
"#geq",
">=")).Data()) <<
" |" << endl;
194 setw(4) << Form(
"Nb") <<
" |" <<
196 setw(16) <<
"qcd" <<
" |" <<
197 setw(16) <<
"ttbar" <<
" |" <<
198 setw(16) <<
"wjets" <<
" |" <<
199 setw(16) <<
"other" <<
" |" <<
200 setw(20) <<
"M=1000(S/B)"<<
" |" <<
201 setw(20) <<
"M=1200(S/B)" <<
" |" <<
202 setw(20) <<
"M=1400(S/B)" <<
" |" << endl;
207 for(
int inb=1; inb<5; inb++)
210 data[ibin][inb-1], qcd[ibin][inb-1], ttbar[ibin][inb-1], wjets[ibin][inb-1], other[ibin][inb-1],
212 sig1000[ibin][inb-1]/sig1000sum, sig1100[ibin][inb-1]/sig1100sum, sig1200[ibin][inb-1]/sig1200sum,
213 sig1300[ibin][inb-1]/sig1300sum, sig1400[ibin][inb-1]/sig1400sum,
214 data_err[ibin][inb-1], qcd_err[ibin][inb-1], ttbar_err[ibin][inb-1], wjets_err[ibin][inb-1], other_err[ibin][inb-1],
215 sig1000_err[ibin][inb-1], sig1100_err[ibin][inb-1], sig1200_err[ibin][inb-1], sig1300_err[ibin][inb-1], sig1400_err[ibin][inb-1],
221 cout<<
"\\hline" << endl;
222 cout <<
"\\end{tabular}"<<endl;
223 cout <<
"\\end{table}\n";
239 for(
int ibin=0; ibin<18; ibin++)
241 for(
int inb=0; inb<4; inb++)
243 err[0][ibin][inb] = 0;
244 err[1][ibin][inb] = 0;
245 err[2][ibin][inb] = 0;
246 err[3][ibin][inb] = 0;
250 for(
int ibin=0; ibin<18; ibin++) {
252 if(ibin>=6 && ibin<=9)
continue;
254 for(
int iproc=0; iproc<4; iproc++)
257 if(iproc==0) process =
"qcd";
258 if(iproc==1) process =
"ttbar";
259 if(iproc==2) process =
"wjets";
260 if(iproc==3) process =
"other";
263 for(
int inb=1; inb<5; inb++)
265 cout <<
"... " << process << endl;
269 if(infile->Get(Form(
"bin%i/%s", ibin, process.c_str()))==0x0)
continue;
270 central =
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/%s", ibin, process.c_str())))->GetBinContent(inb+1);
275 up =
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/%s_btag_bcUp", ibin, process.c_str())))->GetBinContent(inb+1);
276 err[iproc][ibin][inb-1] = TMath::Abs(up-central)/central;
279 up =
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/%s_btag_udsgUp", ibin, process.c_str())))->GetBinContent(inb+1);
280 err[iproc][ibin][inb-1] =
AddInQuad(err[iproc][ibin][inb-1],TMath::Abs(up-central)/central);
283 up =
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/%s_pileupUp", ibin, process.c_str())))->GetBinContent(inb+1);
284 err[iproc][ibin][inb-1] =
AddInQuad(err[iproc][ibin][inb-1],TMath::Abs(up-central)/central);
289 up =
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/%s_qcd_flavorUp", ibin, process.c_str())))->GetBinContent(inb+1);
290 err[iproc][ibin][inb-1] =
AddInQuad(err[iproc][ibin][inb-1],TMath::Abs(up-central)/central);
294 up =
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/%s_%s_murUp", ibin, process.c_str(), process.c_str())))->GetBinContent(inb+1);
295 err[iproc][ibin][inb-1] =
AddInQuad(err[iproc][ibin][inb-1],TMath::Abs(up-central)/central);
296 up =
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/%s_%s_mufUp", ibin, process.c_str(), process.c_str())))->GetBinContent(inb+1);
297 err[iproc][ibin][inb-1] =
AddInQuad(err[iproc][ibin][inb-1],TMath::Abs(up-central)/central);
298 up =
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/%s_%s_murfUp", ibin, process.c_str(), process.c_str())))->GetBinContent(inb+1);
299 err[iproc][ibin][inb-1] =
AddInQuad(err[iproc][ibin][inb-1],TMath::Abs(up-central)/central);
302 up =
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/%s_jerUp", ibin, process.c_str())))->GetBinContent(inb+1);
303 err[iproc][ibin][inb-1] =
AddInQuad(err[iproc][ibin][inb-1],TMath::Abs(up-central)/central);
304 up =
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/%s_jesUp", ibin, process.c_str())))->GetBinContent(inb+1);
305 err[iproc][ibin][inb-1] =
AddInQuad(err[iproc][ibin][inb-1],TMath::Abs(up-central)/central);
308 for(
int ipdf=0; ipdf<100; ipdf++)
310 up =
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/%s_w_pdf%iUp", ibin, process.c_str(), ipdf)))->GetBinContent(inb+1);
311 pdferr =
AddInQuad(pdferr,TMath::Abs(up-central)/central);
313 err[iproc][ibin][inb-1] =
AddInQuad(err[iproc][ibin][inb-1],pdferr/10);
314 cout <<
"pdf: " << ibin <<
" " << inb <<
" " << pdferr << endl;
317 if(infile->Get(Form(
"bin%i/%s_mcstat_%s_bin%i_nb%iUp", ibin, process.c_str(), process.c_str(),ibin,inb))!=0x0)
319 up =
static_cast<TH1F*
>(infile->Get(Form(
"bin%i/%s_mcstat_%s_bin%i_nb%iUp", ibin, process.c_str(), process.c_str(),ibin,inb)))->GetBinContent(inb+1);
320 err[iproc][ibin][inb-1] =
AddInQuad(err[iproc][ibin][inb-1],TMath::Abs(up-central)/central);
323 cout <<
"both: " << ibin <<
" " << inb <<
" " << err[iproc][ibin][inb-1]<< endl;
331 int tablebin_0lep[4]={16,17,10,13};
332 cout <<
"\\begin{table}" << endl;
333 cout <<
"\\centering" << endl;
334 cout <<
"\\begin{tabular}[tbp!]{ l | c c c c | c | c | c }" << endl;
335 cout <<
"\\hline" << endl;
336 cout <<
"$N_{b}$ & QCD & $t\\bar{t}$ & W+jets & Other & All bkg. & Data & $m_{\\tilde{g}}=1200\\GeV$\\\\" << endl;
337 cout <<
"\\hline\\hline" << endl;
339 for(
int ibin=0; ibin<4; ibin++)
341 int tablebin=tablebin_0lep[ibin];
343 float databin(0), mcbin(0);
344 for(
int inb=1; inb<5; inb++)
346 databin = databin + data[tablebin][inb-1];
347 mcbin = mcbin + qcd[tablebin][inb-1] + ttbar[tablebin][inb-1] + wjets[tablebin][inb-1] + other[tablebin][inb-1];
350 cout <<
"\\multicolumn{8}{c}{$" << binLatex[tablebin].Data() <<
"$} \\\\" << endl;
351 cout <<
"\\hline" << endl;
352 for(
int inb=1; inb<5; inb++)
354 data[tablebin][inb-1],
355 qcd[tablebin][inb-1],
356 ttbar[tablebin][inb-1],
357 wjets[tablebin][inb-1],
358 other[tablebin][inb-1],
359 sig1200[tablebin][inb-1],
360 err[0][tablebin][inb-1]*qcd[tablebin][inb-1],
361 err[1][tablebin][inb-1]*ttbar[tablebin][inb-1],
362 err[2][tablebin][inb-1]*wjets[tablebin][inb-1],
363 err[3][tablebin][inb-1]*other[tablebin][inb-1],
364 databin/mcbin,
true );
365 cout <<
"\\hline" << endl;
367 cout<<
"\\hline" << endl;
368 cout <<
"\\end{tabular}"<<endl;
369 cout <<
"\\end{table}\n"<< endl;
378 int tablebin_1lep[4]={11,14,12,15};
379 cout <<
"\\begin{table}" << endl;
380 cout <<
"\\centering" << endl;
381 cout <<
"\\begin{tabular}[tbp!]{ l | c c c c | c | c | c }" << endl;
382 cout <<
"\\hline" << endl;
383 cout <<
"$N_{b}$ & QCD & $t\\bar{t}$ & W+jets & Other & All bkg. & Data & $m_{\\tilde{g}}=1200\\GeV$\\\\" << endl;
384 cout <<
"\\hline\\hline" << endl;
386 for(
int ibin=0; ibin<4; ibin++)
388 int tablebin=tablebin_1lep[ibin];
390 float databin(0), mcbin(0);
391 for(
int inb=1; inb<5; inb++)
393 databin = databin + data[tablebin][inb-1];
394 mcbin = mcbin + qcd[tablebin][inb-1] + ttbar[tablebin][inb-1] + wjets[tablebin][inb-1] + other[tablebin][inb-1];
397 cout <<
"\\multicolumn{8}{c}{$" << binLatex[tablebin].Data() <<
"$} \\\\" << endl;
398 cout <<
"\\hline" << endl;
399 for(
int inb=1; inb<5; inb++)
401 data[tablebin][inb-1],
402 qcd[tablebin][inb-1],
403 ttbar[tablebin][inb-1],
404 wjets[tablebin][inb-1],
405 other[tablebin][inb-1],
406 sig1200[tablebin][inb-1],
407 err[0][tablebin][inb-1]*qcd[tablebin][inb-1],
408 err[1][tablebin][inb-1]*ttbar[tablebin][inb-1],
409 err[2][tablebin][inb-1]*wjets[tablebin][inb-1],
410 err[3][tablebin][inb-1]*other[tablebin][inb-1],
411 databin/mcbin,
true );
412 cout <<
"\\hline" << endl;
414 cout<<
"\\hline" << endl;
415 cout <<
"\\end{tabular}"<<endl;
416 cout <<
"\\end{table}\n"<< endl;
425 float data,
float qcd,
float ttbar,
float wjets,
float other,
426 float sig1000,
float sig1100,
float sig1200,
float sig1300,
float sig1400,
427 float data_err,
float qcd_err,
float ttbar_err,
float wjets_err,
float other_err,
428 float sig1000_err,
float sig1100_err,
float sig1200_err,
float sig1300_err,
float sig1400_err,
float formatLatex)
431 float how_to_deal_with_unused_vars;
432 how_to_deal_with_unused_vars=
data;
433 how_to_deal_with_unused_vars=data_err;
434 how_to_deal_with_unused_vars=sig1100;
435 how_to_deal_with_unused_vars=sig1100_err;
436 how_to_deal_with_unused_vars=sig1300;
437 how_to_deal_with_unused_vars=sig1300_err;
438 how_to_deal_with_unused_vars=4;
440 float totbkg=qcd+ttbar+wjets+other;
444 cout << Form(
"%i", nb) <<
" & " 445 << Form(
"$%.2f\\pm%.2f$",qcd,qcd_err) <<
" & " 446 << Form(
"$%.2f\\pm%.2f$",ttbar,ttbar_err) <<
" & " 447 << Form(
"$%.2f\\pm%.2f$",wjets,wjets_err) <<
" & " 448 << Form(
"$%.2f\\pm%.2f$",other,other_err) <<
" & " 450 << Form(
"$%.2f\\pm%.2f$",sig1000,sig1000_err) <<
" & " 451 << Form(
"$%.2f\\pm%.2f$",sig1200,sig1200_err) <<
" & " 452 << Form(
"$%.2f\\pm%.2f$",sig1400,sig1400_err) <<
" \\\\" << endl;
457 setw(how_to_deal_with_unused_vars) << nb <<
" |" <<
458 setw(16) << Form(
"%.2f+-%.2f",qcd,qcd_err) <<
" |" <<
459 setw(16) << Form(
"%.2f+-%.2f",ttbar,ttbar_err) <<
" |" <<
460 setw(16) << Form(
"%.2f+-%.2f",wjets,wjets_err) <<
" |" <<
461 setw(16) << Form(
"%.2f+-%.2f",other,other_err) <<
" |" <<
463 setw(20) << Form(
"%.2f+-%.2f(%.2f)",sig1000,sig1000_err,sig1000/totbkg ) <<
" |" <<
464 setw(20) << Form(
"%.2f+-%.2f(%.2f)",sig1200,sig1200_err,sig1200/totbkg) <<
" |" <<
465 setw(20) << Form(
"%.2f+-%.2f(%.2f)",sig1400,sig1400_err,sig1400/totbkg) <<
" |" << endl;
470 float qcd,
float ttbar,
float wjets,
float other,
float sig,
471 float qcd_err,
float ttbar_err,
float wjets_err,
float other_err,
472 float dataovermc,
bool doNorm)
474 if(qcd==0) qcd_err=0;
475 if(ttbar==0) ttbar_err=0;
476 if(wjets==0) wjets_err=0;
477 if(other==0) other_err=0;
480 if(nb==1) nbbin=
"$1$";
481 if(nb==2) nbbin=
"$2$";
482 if(nb==3) nbbin=
"$3$";
483 if(nb==4) nbbin=
"$\\geq 4$";
487 qcd = qcd * dataovermc; qcd_err = qcd_err * dataovermc;
488 ttbar = ttbar * dataovermc; ttbar_err = ttbar_err * dataovermc;
489 wjets = wjets * dataovermc; wjets_err = wjets_err * dataovermc;
490 other = other * dataovermc; other_err = other_err * dataovermc;
493 float tot_err = TMath::Sqrt(qcd_err*qcd_err+ttbar_err*ttbar_err+wjets_err*wjets_err+other_err*other_err);
495 cout << nbbin <<
" & " 496 << Form(
"$%.1f \\pm %.1f$",qcd,qcd_err) <<
" & " 497 << Form(
"$%.1f \\pm %.1f$",ttbar,ttbar_err) <<
" & " 498 << Form(
"$%.1f \\pm %.1f$",wjets,wjets_err) <<
" & " 499 << Form(
"$%.1f \\pm %.1f$",other,other_err) <<
" & " 500 << Form(
"$%.1f \\pm %.1f$",qcd+ttbar+wjets+other,tot_err) <<
" & " 501 << Form(
"$%.0f$",data) <<
" & " 502 << Form(
"$%.1f$",sig) <<
" \\\\ " << endl;
507 return TMath::Sqrt(a*a+b*b);
void printYieldBin(int nb, float data, float qcd, float ttbar, float wjets, float other, float sig, float qcd_err, float ttbar_err, float wjets_err, float other_err, float dataovermc, bool doNorm)
float AddInQuad(float a, float b)
void printOneLine(int nb, float data, float qcd, float ttbar, float wjets, float other, float sig1000, float sig1100, float sig1200, float sig1300, float sig1400, float data_err, float qcd_err, float ttbar_err, float wjets_err, float other_err, float sig1000_err, float sig1100_err, float sig1200_err, float sig1300_err, float sig1400_err, float doLatex)