keep the old ranges commented, since we need the new ranges to be consistent double tmp_maxEta = 3.;
keep the old eta bins commented, since we need the new binning to be consisten with the old int etaBins = int(30*binConfig.eta_NScale);
what is goping on here? the bins for the residuals should depend on the residual itself, not the x variable, how come these are all different?
66 {
67
69
71
72
73
75
81
82
83
84
85
86
87 double tmp_absResPt = 0.5;
88
90
91
92
95 double tmp_maxEta = 5.;
96 double tmp_absResEta = 0.04;
97
98
99 double tmp_maxPhi = 3.142;
100 double tmp_absResPhi = 0.02;
101
102
103
104
109
112
114 const double zMax = binConfig.
z0Max;
115
116 const int zresBins = 100;
117 const double zresMax = 10;
118
120 const double d0Max = binConfig.
d0Max;
121
122 const int d0resBins = 100;
123 const double d0resMax = 5;
124
125
127 const double a0Max = binConfig.
a0Max;
128
129 const int a0resBins = 100;
130 const double a0resMax = 5;
131
132
133
134
135
136 int Npt = 0;
137 double pt_a = 1;
138 double pt_b = 1;
139
140
141
143 pt_a = 4;
144 pt_b = 2;
145
146
147
148
149
150
151
152
153
154
155 const int ptnbins = Npt;
156 std::vector<double> ptbinlimsv(ptnbins+1);
157 double* ptbinlims = &ptbinlimsv[0];
158
159
160 for (
int i=0 ;
i<=ptnbins ;
i++ ) ptbinlims[i] = std::pow(10, pt_a*i/ptnbins+pt_b)/1000;
161
162
163
164
165 const int ptnbins2 = (2*ptnbins);
166
167 std::vector<double> ptbinlims2v(ptnbins2 + 1);
168 double* ptbinlims2 = &ptbinlims2v[0];
169
170 int ptnbin_counter = 0;
171 for (
int i=ptnbins;
i>0 ;
i-- ) {
172 ptbinlims2[ptnbin_counter] = std::pow(10, pt_a*i/ptnbins+pt_b)/(-2000);
173
174 ptnbin_counter++;
175 }
176
177 for (
int i=0 ;
i<ptnbins+1 ;
i++ ) {
178 ptbinlims2[ptnbin_counter] = std::pow(10, pt_a*i/ptnbins+pt_b)/2000;
179
180 ptnbin_counter++;
181 }
182
183
184 const int iptnbins = 20;
185 const double minmaxipt=0.5;
186 std::vector<double> iptbinlimsv(iptnbins+1);
187 double* iptbinlims = &iptbinlimsv[0];
188 for (
int i=0 ;
i<=iptnbins ;
i++ ) {
189 iptbinlims[
i] = -minmaxipt+
i*minmaxipt*2./iptnbins;
190 }
191
192
193
195
196
197
200
201
202
204
205 if (
name() !=
gDirectory->GetName() ) std::cerr <<
"ConfAnalysis::initialize() Directory: problem with directory " <<
gDirectory->GetName() <<
" " <<
name() << std::endl;
206
207
208
209
210
211
212
213 m_res.push_back(
m_rnpix_eta =
new Resplot(
"npix_eta", 2*etaBins, -tmp_maxEta, tmp_maxEta, 22, -0.5, 21.5 ) );
214 m_res.push_back(
m_rnsct_eta =
new Resplot(
"nsct_eta", 2*etaBins, -tmp_maxEta, tmp_maxEta, 22, -0.5, 21.5 ) );
215 m_res.push_back(
m_rntrt_eta =
new Resplot(
"ntrt_eta", 2*etaBins, -tmp_maxEta, tmp_maxEta, 100, -0.5, 99.5 ) );
216 m_res.push_back(
m_rnsihit_eta=
new Resplot(
"nsihit_eta",etaBins, -tmp_maxEta, tmp_maxEta, 22, -0.5, 21.5 ) );
217
218 m_res.push_back(
m_rnpix_lb =
new Resplot(
"npix_lb", 250, 0, 2500, 22, -0.5, 21.5 ) );
219
223
224 m_res.push_back(
m_rnpix_pt =
new Resplot(
"npix_pt", ptnbins, ptbinlims, 22, -0.5, 21.5 ) );
225 m_res.push_back(
m_rnsct_pt =
new Resplot(
"nsct_pt", ptnbins, ptbinlims, 22, -0.5, 21.5 ) );
226 m_res.push_back(
m_rntrt_pt =
new Resplot(
"ntrt_pt", ptnbins, ptbinlims, 100, -0.5, 99.5 ) );
227
228 m_res.push_back(
m_rnpixh_pt =
new Resplot(
"npixh_pt", ptnbins, ptbinlims, 22, -0.5, 21.5 ) );
229 m_res.push_back(
m_rnscth_pt =
new Resplot(
"nscth_pt", ptnbins, ptbinlims, 22, -0.5, 21.5 ) );
230
231
232 m_res.push_back(
m_rnpix_pt_bad =
new Resplot(
"npix_pt_bad", ptnbins, ptbinlims, 22, -0.5, 21.5 ) );
233 m_res.push_back(
m_rnsct_pt_bad =
new Resplot(
"nsct_pt_bad", ptnbins, ptbinlims, 22, -0.5, 21.5 ) );
234 m_res.push_back(
m_rntrt_pt_bad =
new Resplot(
"ntrt_pt_bad", ptnbins, ptbinlims, 100, -0.5, 99.5 ) );
235
236
237 m_res.push_back(
m_rnpix_eta_rec =
new Resplot(
"npix_eta_rec", 2*etaBins, -tmp_maxEta, tmp_maxEta, 22, -0.5, 21.5 ) );
238 m_res.push_back(
m_rnsct_eta_rec =
new Resplot(
"nsct_eta_rec", 2*etaBins, -tmp_maxEta, tmp_maxEta, 22, -0.5, 21.5 ) );
239 m_res.push_back(
m_rntrt_eta_rec =
new Resplot(
"ntrt_eta_rec", 2*etaBins, -tmp_maxEta, tmp_maxEta, 100, -0.5, 99.5 ) );
240 m_res.push_back(
m_rnsihit_eta_rec=
new Resplot(
"nsihit_eta_rec", etaBins, -tmp_maxEta, tmp_maxEta, 22, -0.5, 21.5 ) );
241
245
246 m_res.push_back(
m_rnpix_pt_rec =
new Resplot(
"npix_pt_rec", ptnbins, ptbinlims, 22, -0.5, 21.5 ) );
247 m_res.push_back(
m_rnsct_pt_rec =
new Resplot(
"nsct_pt_rec", ptnbins, ptbinlims, 22, -0.5, 21.5 ) );
248 m_res.push_back(
m_rntrt_pt_rec =
new Resplot(
"ntrt_pt_rec", ptnbins, ptbinlims, 100, -0.5, 99.5 ) );
249
250 m_res.push_back(
m_rnpixh_pt_rec =
new Resplot(
"npixh_pt_rec", ptnbins, ptbinlims, 22, -0.5, 21.5 ) );
251 m_res.push_back(
m_rnscth_pt_rec =
new Resplot(
"nscth_pt_rec", ptnbins, ptbinlims, 22, -0.5, 21.5 ) );
252
253
254 m_res.push_back(
m_rnsct_vs_npix =
new Resplot(
"nsct_vs_npix", 12, -0.5, 11.5, 22, -0.5, 21.5 ) );
256
257 m_res.push_back(
m_rChi2prob =
new Resplot(
"Chi2prob", ptnbins, ptbinlims, 20, 0, 1 ) );
258 m_res.push_back(
m_rChi2 =
new Resplot(
"Chi2", ptnbins, ptbinlims, 200, 0, 100 ) );
259 m_res.push_back(
m_rChi2dof =
new Resplot(
"Chi2dof", ptnbins, ptbinlims, 100, 0, 10 ) );
260
261 m_res.push_back(
m_rChi2prob_bad =
new Resplot(
"Chi2prob_bad", ptnbins, ptbinlims, 20, 0, 1 ) );
262 m_res.push_back(
m_rChi2_bad =
new Resplot(
"Chi2_bad", ptnbins, ptbinlims, 200, 0, 100 ) );
263 m_res.push_back(
m_rChi2dof_bad =
new Resplot(
"Chi2dof_bad", ptnbins, ptbinlims, 100, 0, 10 ) );
264
265 m_res.push_back(
m_rChi2prob_rec =
new Resplot(
"Chi2prob_rec", ptnbins, ptbinlims, 20, 0, 1 ) );
266 m_res.push_back(
m_rChi2_rec =
new Resplot(
"Chi2_rec", ptnbins, ptbinlims, 200, 0, 100 ) );
267 m_res.push_back(
m_rChi2dof_rec =
new Resplot(
"Chi2dof_rec", ptnbins, ptbinlims, 100, 0, 10 ) );
268
270
271 m_res.push_back(
m_rDChi2dof =
new Resplot(
"DChi2dof", 200, 0, 100, 200, -100, 100 ) );
272
274
275 double d0bins[40] = { -5.0, -4.0, -3.0, -2.5,
276 -2.0, -1.8, -1.6, -1.4, -1.2,
277 -1.05, -0.95, -0.85, -0.75, -0.65, -0.55, -0.45, -0.35, -0.25, -0.15, -0.05,
278 0.05, 0.15, 0.25, 0.35, 0.45, 0.55, 0.65, 0.75, 0.85, 0.95, 1.05,
279 1.2, 1.4, 1.6, 1.8, 2.0,
280 2.5, 3.0, 4.0, 5.0 };
281
282
283
284 m_res.push_back(
m_rnpix_d0 =
new Resplot(
"npix_d0", 39, d0bins, 22, -0.5, 21.5 ) );
285 m_res.push_back(
m_rnsct_d0 =
new Resplot(
"nsct_d0", 39, d0bins, 22, -0.5, 21.5 ) );
286 m_res.push_back(
m_rntrt_d0 =
new Resplot(
"ntrt_d0", 39, d0bins, 22, -0.5, 21.5 ) );
287
288 m_res.push_back(
m_rnpixh_d0 =
new Resplot(
"npixh_d0", 39, d0bins, 22, -0.5, 21.5 ) );
289 m_res.push_back(
m_rnscth_d0 =
new Resplot(
"nscth_d0", 39, d0bins, 22, -0.5, 21.5 ) );
290
291 m_res.push_back(
m_rnsi_pt =
new Resplot(
"nsi_pt", ptnbins, ptbinlims, 22, -0.5, 21.5 ) );
292 m_res.push_back(
m_rnsih_pt =
new Resplot(
"nsih_pt", ptnbins, ptbinlims, 22, -0.5, 21.5 ) );
293
294 m_res.push_back(
m_rnsi_d0 =
new Resplot(
"nsi_d0", 39, d0bins, 22, -0.5, 21.5 ) );
295 m_res.push_back(
m_rnsih_d0 =
new Resplot(
"nsih_d0", 39, d0bins, 22, -0.5, 21.5 ) );
296
297 m_res.push_back(
m_rnsi_eta =
new Resplot(
"nsi_eta", etaBins, -tmp_maxEta, tmp_maxEta, 22, -0.5, 21.5 ) );
298 m_res.push_back(
m_rnsih_eta =
new Resplot(
"nsih_eta", etaBins, -tmp_maxEta, tmp_maxEta, 22, -0.5, 21.5 ) );
299
300 m_res.push_back(
m_rnbl_d0 =
new Resplot(
"nbl_d0", 39, d0bins, 5, -0.5, 4.5 ) );
301 m_res.push_back(
m_rnblh_d0 =
new Resplot(
"nblh_d0", 39, d0bins, 5, -0.5, 4.5 ) );
302
303
304 m_res.push_back(
m_rnsct_lb =
new Resplot(
"nsct_lb", 250, 0, 2500, 22, -0.5, 21.5 ) );
305
306 m_res.push_back(
m_rnpix_lb_rec =
new Resplot(
"npix_lb_rec", 250, 0, 2500, 22, -0.5, 21.5 ) );
307 m_res.push_back(
m_rnsct_lb_rec =
new Resplot(
"nsct_lb_rec", 250, 0, 2500, 22, -0.5, 21.5 ) );
308
309 m_res.push_back(
m_rnpix_d0_rec =
new Resplot(
"npix_d0_rec", 39, d0bins, 22, -0.5, 21.5 ) );
310 m_res.push_back(
m_rnsct_d0_rec =
new Resplot(
"nsct_d0_rec", 39, d0bins, 22, -0.5, 21.5 ) );
311 m_res.push_back(
m_rntrt_d0_rec =
new Resplot(
"ntrt_d0_rec", 39, d0bins, 22, -0.5, 21.5 ) );
312
313
314
315
316
317
318
319
326
327
334
338
339
341 m_invmass =
new TH1F(
"invmass",
"invariant mass;mass [GeV]", 320, 0, 200 );
342 m_invmassObj =
new TH1F(
"invmassObj",
"invariant mass;mass [GeV]", 320, 0, 200 );
345 }
346
348 TH2F* heta_vs_pt =
new TH2F(
"eta_vs_pt",
"p_{T} [GeV],#eta", ptnbins, ptbinlims, 10, -3, 3 );
349 TH2F* hd0_vs_pt =
new TH2F(
"d0_vs_pt",
"p_{T} [GeV],d_{0} [mm]", ptnbins, ptbinlims, 30, -300, 300 );
350
351
354
355 delete heta_vs_pt;
356 delete hd0_vs_pt;
357
358
359
361 m_eff_pt->Hist()->GetXaxis()->SetTitle(
"P_{T} [GeV]");
362 m_eff_pt->Hist()->GetYaxis()->SetTitle(
"Efficiency [%]");
363
365 m_eff_eta->Hist()->GetXaxis()->SetTitle(
"#eta");
366 m_eff_eta->Hist()->GetYaxis()->SetTitle(
"Efficiency [%]");
367
369 m_eff_phi->Hist()->GetXaxis()->SetTitle(
"#phi");
370 m_eff_phi->Hist()->GetYaxis()->SetTitle(
"Efficiency [%]");
371
373 m_eff_z0->Hist()->GetXaxis()->SetTitle(
"z0");
374 m_eff_z0->Hist()->GetYaxis()->SetTitle(
"Efficiency [%]");
375
377 m_eff_d0->Hist()->GetXaxis()->SetTitle(
"d0");
378 m_eff_d0->Hist()->GetYaxis()->SetTitle(
"Efficiency [%]");
379
381 m_eff_a0->Hist()->GetXaxis()->SetTitle(
"a0");
382 m_eff_a0->Hist()->GetYaxis()->SetTitle(
"Efficiency [%]");
383
385 m_eff_ptm->Hist()->GetXaxis()->SetTitle(
"Negative P_{T} [GeV]");
386 m_eff_ptm->Hist()->GetYaxis()->SetTitle(
"Efficiency [%]");
387
389 m_eff_ptp->Hist()->GetXaxis()->SetTitle(
"Positive P_{T} [GeV]");
390 m_eff_ptp->Hist()->GetYaxis()->SetTitle(
"Efficiency [%]");
391
395
399
401 m_eff_roi_dR->Hist()->GetXaxis()->SetTitle(
"RoI #Delta R");
402 m_eff_roi_dR->Hist()->GetYaxis()->SetTitle(
"Efficiency [%]");
403
404
406
413
414
416 addHistogram(
new TH1F(
"eta_rec",
"eta_rec", etaBins, -tmp_maxEta, tmp_maxEta ) );
417 addHistogram(
new TH1F(
"phi_rec",
"phi_rec", phiBins, -tmp_maxPhi, tmp_maxPhi ) );
421
422 addHistogram2D(
new TH2F(
"eta_phi_rec",
"eta_phi_rec", (tmp_maxEta+1)*30 , -tmp_maxEta-1, tmp_maxEta+1, (tmp_maxPhi+1)*30, -tmp_maxPhi-1, tmp_maxPhi+1 ) );
423 addHistogram2D(
new TH2F(
"phi_d0_rec",
"phi_d0_rec", (2*tmp_maxPhi+2)*15, -tmp_maxPhi-1, tmp_maxPhi+1 ,d0Bins+20, -d0Max+7, d0Max-7 ));
424
425
432
433
434
435
442
443
445 addHistogram(
new TH1F(
"eta_pull_simple",
"eta_pull_simple", 100, -10, 10) );
446 addHistogram(
new TH1F(
"phi_pull_simple",
"phi_pull_simple", 100, -10, 10) );
450
451
452
453 TH1F* pT_res =
new TH1F(
"pT_res",
"pT_res", 4*pTResBins, -0.1, 0.1 );
454 pT_res->GetXaxis()->SetTitle("#Delta P_{T} [GeV]");
455 pT_res->GetYaxis()->SetTitle("Entries");
457
458
459 TH1F* spT_res =
new TH1F(
"spT_res",
"spT_res", 4*pTResBins, -0.1, 0.1 );
460 spT_res->GetXaxis()->SetTitle("#Delta sP_{T} [GeV]");
461 spT_res->GetYaxis()->SetTitle("Entries");
463
464
465 TH1F* ipT_res =
new TH1F(
"ipT_res",
"ipT_res", 4*pTResBins, -0.4, 0.4 );
466 ipT_res->GetXaxis()->SetTitle("#Delta 1/P_{T} [GeV^{-1}]");
467 ipT_res->GetYaxis()->SetTitle("Entries");
469
470 TH1F* eta_res =
new TH1F(
"eta_res",
"eta_res", etaResBins, -2*tmp_absResEta, 2*tmp_absResEta );
471 eta_res->GetXaxis()->SetTitle("#Delta #eta");
472 eta_res->GetYaxis()->SetTitle("Entries");
475
476
477
478
479
480
481 addHistogram(
new TH1F(
"phi_res",
"phi_res;#Delta #phi;Entries", 2*phiResBins, -2*tmp_absResPhi, 2*tmp_absResPhi ) );
482 addHistogram(
new TH1F(
"z0_res",
"z0_res;#Deltaz_{0};Entries", 16*zresBins, -8*zresMax, 8*zresMax ) );
483 addHistogram(
new TH1F(
"d0_res",
"d0_res;#Deltad_{0};Entries", 4*d0resBins, -0.2*d0resMax, 0.2*d0resMax ) );
484 addHistogram(
new TH1F(
"a0_res",
"a0_res;#Deltaa_{0};Entries", 4*a0resBins, -0.2*a0resMax, 0.2*a0resMax ) );
485
486
487 addHistogram(
new TH1F(
"dphi_res",
"dphi_res;#Delta #phi;Entries", 2*phiResBins, -0.2*tmp_absResPhi, 0.2*tmp_absResPhi ) );
488 addHistogram(
new TH1F(
"dz0_res",
"dz0_res;#Deltaz_{0};Entries", 8*zresBins, -0.8*zresMax, 0.8*zresMax ) );
489 addHistogram(
new TH1F(
"dd0_res",
"dd0_res;#Deltad_{0};Entries", 4*d0resBins, -0.05*d0resMax, 0.05*d0resMax ) );
490 addHistogram(
new TH1F(
"da0_res",
"da0_res;#Deltaa_{0};Entries", 4*a0resBins, -0.05*a0resMax, 0.05*a0resMax ) );
491
492
493
494
495 int factor = 10;
496
497 int wfactor = 2;
498 int zfactor = 16;
499
500
501 m_rDd0res.push_back(
new Resplot(
"rDd0_vs_pt", ptnbins, ptbinlims, 1200, -0.1, 0.1 ) );
502 m_rDd0res.push_back(
new Resplot(
"rDd0_vs_eta", 5*etaBins, -tmp_maxEta, tmp_maxEta, 1200, -0.1, 0.1 ) );
503 m_rDd0res.push_back(
new Resplot(
"rDd0_vs_zed", zBins, -zMax, zMax, 1200, -0.1, 0.1 ) );
504 m_rDd0res.push_back(
new Resplot(
"rDd0_vs_d0", 20, -1.5, 1.5, 1200, -0.1, 0.1 ) );
505
506 m_rDd0res.push_back(
new Resplot(
"rDd0_vs_phi", 128, -
M_PI,
M_PI, 1200, -0.1, 0.1 ) );
507
508
509 m_rDa0res.push_back(
new Resplot(
"rDa0_vs_pt", ptnbins, ptbinlims, 100, -0.1, 0.1 ) );
510 m_rDa0res.push_back(
new Resplot(
"rDa0_vs_eta", etaBins, -tmp_maxEta, tmp_maxEta, 100, -0.1, 0.1 ) );
511 m_rDa0res.push_back(
new Resplot(
"rDa0_vs_zed", 0.2*zBins, -zMax, zMax, 100, -0.1, 0.1 ) );
512 m_rDa0res.push_back(
new Resplot(
"rDa0_vs_da0", 20, -1.5, 1.5, 100, -0.1, 0.1 ) );
513 m_rDa0res.push_back(
new Resplot(
"rDa0_vs_phi",
int(2*
M_PI/0.02), -0.02*
int(
M_PI/0.02), 0.02*
int(
M_PI/0.02), 100, -0.1, 0.1 ) );
514 m_rDa0res.push_back(
new Resplot(
"rDa0_rec_vs_phi",
int(2*
M_PI/0.02), -0.02*
int(
M_PI/0.02), 0.02*
int(
M_PI/0.02), 100, -0.1, 0.1 ) );
515
516 m_rDa0res.push_back(
new Resplot(
"rda0_vs_phi",
int(2*
M_PI/0.02), -0.02*
int(
M_PI/0.02), 0.02*
int(
M_PI/0.02), 100, -0.1, 0.1 ) );
517 m_rDa0res.push_back(
new Resplot(
"rda0_rec_vs_phi",
int(2*
M_PI/0.02), -0.02*
int(
M_PI/0.02), 0.02*
int(
M_PI/0.02), 100, -0.1, 0.1 ) );
518
519
520
521
522
523 m_rDz0res.push_back(
new Resplot(
"rDz0_vs_pt", ptnbins, ptbinlims, 501, -1, 1 ) );
524 m_rDz0res.push_back(
new Resplot(
"rDz0_vs_eta", 5*etaBins, -tmp_maxEta, tmp_maxEta, 500, -1, 1 ) );
525 m_rDz0res.push_back(
new Resplot(
"rDz0_vs_zed", zBins, -zMax, zMax, 500, -1, 1 ) );
526 m_rDz0res.push_back(
new Resplot(
"rDz0_vs_phi", 128, -
M_PI,
M_PI, 500, -1, 1 ) );
527
528
529
532 m_retares.push_back(
new Resplot(
"reta_vs_ipt", iptnbins, iptbinlims, 2*etaResBins, -wfactor*tmp_absResEta, wfactor*tmp_absResEta ) );
533 m_rphires.push_back(
new Resplot(
"rphi_vs_ipt", iptnbins, iptbinlims, 8*phiResBins, -wfactor*tmp_absResPhi, wfactor*tmp_absResPhi ) );
534 m_rzedres.push_back(
new Resplot(
"rzed_vs_ipt", iptnbins, iptbinlims, 8*zfactor*zresBins, -2*zfactor*zresMax, 2*zfactor*zresMax ) );
535 m_rzedthetares.push_back(
new Resplot(
"rzedtheta_vs_ipt", iptnbins, iptbinlims, 24*zfactor*zresBins, -2*zfactor*zresMax, 2*zfactor*zresMax ) );
536 m_riptres.push_back(
new Resplot(
"ript_vs_ipt", iptnbins, iptbinlims, 16*pTResBins, -wfactor*tmp_absResPt, wfactor*tmp_absResPt ) );
537 m_rptres.push_back(
new Resplot(
"rpt_vs_ipt", iptnbins, iptbinlims, 8*pTResBins, -wfactor*tmp_absResPt, wfactor*tmp_absResPt ) );
538 m_rd0res.push_back(
new Resplot(
"rd0_vs_ipt", iptnbins, iptbinlims, factor*8*a0resBins, -wfactor*a0resMax, wfactor*a0resMax ) );
539
540
541 m_retares.push_back(
new Resplot(
"reta_vs_pt", ptnbins, ptbinlims, 8*etaResBins, -wfactor*tmp_absResEta, wfactor*tmp_absResEta ) );
542 m_rphires.push_back(
new Resplot(
"rphi_vs_pt", ptnbins, ptbinlims, 8*phiResBins, -wfactor*tmp_absResPhi, wfactor*tmp_absResPhi ) );
543 m_rzedres.push_back(
new Resplot(
"rzed_vs_pt", ptnbins, ptbinlims, 24*zfactor*zresBins, -2*zfactor*zresMax, 2*zfactor*zresMax ) );
544 m_rzedthetares.push_back(
new Resplot(
"rzedtheta_vs_pt", ptnbins, ptbinlims, 24*zfactor*zresBins, -2*zfactor*zresMax, 2*zfactor*zresMax ) );
545 m_riptres.push_back(
new Resplot(
"ript_vs_pt", ptnbins, ptbinlims, 16*pTResBins, -wfactor*tmp_absResPt, wfactor*tmp_absResPt ) );
546 m_rptres.push_back(
new Resplot(
"rpt_vs_pt", ptnbins, ptbinlims, 8*pTResBins, -wfactor*tmp_absResPt, wfactor*tmp_absResPt ) );
547 m_rd0res.push_back(
new Resplot(
"rd0_vs_pt", ptnbins, ptbinlims, factor*24*a0resBins, -wfactor*a0resMax, wfactor*a0resMax ) );
548
549 m_retares.push_back(
new Resplot(
"reta_vs_ET", ptnbins, ptbinlims, 8*etaResBins, -wfactor*tmp_absResEta, wfactor*tmp_absResEta ) );
550 m_rphires.push_back(
new Resplot(
"rphi_vs_ET", ptnbins, ptbinlims, 8*phiResBins, -wfactor*tmp_absResPhi, wfactor*tmp_absResPhi ) );
551 m_rzedres.push_back(
new Resplot(
"rzed_vs_ET", ptnbins, ptbinlims, 24*zfactor*zresBins, -2*zfactor*zresMax, 2*zfactor*zresMax ) );
552 m_rzedthetares.push_back(
new Resplot(
"rzedtheta_vs_ET", ptnbins, ptbinlims, 24*zfactor*zresBins, -2*zfactor*zresMax, 2*zfactor*zresMax ) );
553 m_riptres.push_back(
new Resplot(
"ript_vs_ET", ptnbins, ptbinlims, 16*pTResBins, -wfactor*tmp_absResPt, wfactor*tmp_absResPt ) );
554 m_rptres.push_back(
new Resplot(
"rpt_vs_ET", ptnbins, ptbinlims, 8*pTResBins, -wfactor*tmp_absResPt, wfactor*tmp_absResPt ) );
555 m_rd0res.push_back(
new Resplot(
"rd0_vs_ET", ptnbins, ptbinlims, factor*24*a0resBins, -wfactor*a0resMax, wfactor*a0resMax ) );
556
557
558
559 m_retares.push_back(
new Resplot(
"reta_vs_eta", etaBins, -tmp_maxEta, tmp_maxEta, 4*etaResBins, -wfactor*tmp_absResEta, wfactor*tmp_absResEta ) );
560 m_rphires.push_back(
new Resplot(
"rphi_vs_eta", etaBins, -tmp_maxEta, tmp_maxEta, 8*phiResBins, -wfactor*tmp_absResPhi, wfactor*tmp_absResPhi ) );
561 m_rzedres.push_back(
new Resplot(
"rzed_vs_eta", etaBins, -tmp_maxEta, tmp_maxEta, 12*zfactor*zresBins, -2*zfactor*zresMax, 2*zfactor*zresMax ) );
562
563 m_rzedthetares.push_back(
new Resplot(
"rzedtheta_vs_eta", etaBins, -tmp_maxEta, tmp_maxEta, 24*zfactor*zresBins, -zfactor*zresMax, zfactor*zresMax ) );
564
565 m_riptres.push_back(
new Resplot(
"ript_vs_eta", etaBins, -tmp_maxEta, tmp_maxEta, 16*pTResBins, -tmp_absResPt, tmp_absResPt ) );
566 m_rptres.push_back(
new Resplot(
"rpt_vs_eta", etaBins, -tmp_maxEta, tmp_maxEta, 8*pTResBins, -tmp_absResPt, tmp_absResPt ) );
567 m_rd0res.push_back(
new Resplot(
"rd0_vs_eta", etaBins, -tmp_maxEta, tmp_maxEta, factor*24*a0resBins, -wfactor*a0resMax, wfactor*a0resMax ) );
568
569
570
574
578
579
580 for ( unsigned ih=0 ; ih<3 ; ih++ ) {
583 }
584
585 m_retares.push_back(
new Resplot(
"reta_vs_zed", 0.2*zBins, -zMax, zMax, 2*etaResBins, -tmp_absResEta, tmp_absResEta ) );
586 m_rphires.push_back(
new Resplot(
"rphi_vs_zed", 0.2*zBins, -zMax, zMax, 8*phiResBins, -wfactor*tmp_absResPhi, wfactor*tmp_absResPhi ) );
587 m_rzedres.push_back(
new Resplot(
"rzed_vs_zed", 0.2*zBins, -zMax, zMax, 8*zfactor*zresBins, -2*zfactor*zresMax, 2*zfactor*zresMax ) );
588 m_rzedthetares.push_back(
new Resplot(
"rzedtheta_vs_zed", 0.2*zBins, -zMax, zMax, 24*zfactor*zresBins, -2*zfactor*zresMax, 2*zfactor*zresMax ) );
589
590
591 m_riptres.push_back(
new Resplot(
"ript_vs_zed", 0.2*zBins, -zMax, zMax, 2*pTResBins, -2*tmp_absResPt, 2*tmp_absResPt ) );
592 m_rptres.push_back(
new Resplot(
"rpt_vs_zed", 0.2*zBins, -zMax, zMax, 8*pTResBins, -tmp_absResPt, tmp_absResPt ) );
593 m_rd0res.push_back(
new Resplot(
"rd0_vs_zed", 0.2*zBins, -zMax, zMax, factor*8*a0resBins, -wfactor*a0resMax, wfactor*a0resMax ) );
594
595
596 m_retares.push_back(
new Resplot(
"reta_vs_nvtx", 24, 0, 72, 4*etaResBins, -tmp_absResEta, tmp_absResEta ) );
597 m_rphires.push_back(
new Resplot(
"rphi_vs_nvtx", 24, 0, 72, 8*phiResBins, -wfactor*tmp_absResPhi, wfactor*tmp_absResPhi ) );
598 m_rzedres.push_back(
new Resplot(
"rzed_vs_nvtx", 24, 0, 72, 4*zfactor*zresBins, -zfactor*zresMax, zfactor*zresMax ) );
599 m_rzedthetares.push_back(
new Resplot(
"rzedtheta_vs_nvtx", 24, 0, 72, 24*zfactor*zresBins, -zfactor*zresMax, zfactor*zresMax ) );
600 m_riptres.push_back(
new Resplot(
"ript_vs_nvtx", 24, 0, 72, 4*pTResBins, -tmp_absResPt, tmp_absResPt ) );
601 m_rptres.push_back(
new Resplot(
"rpt_vs_nvtx", 24, 0, 72, 8*pTResBins, -tmp_absResPt, tmp_absResPt ) );
602 m_rd0res.push_back(
new Resplot(
"rd0_vs_nvtx", 24, 0, 72, factor*8*a0resBins, -wfactor*a0resMax, wfactor*a0resMax ) );
603
604
605 m_retares.push_back(
new Resplot(
"reta_vs_ntracks", 60, 0, 600, 4*etaResBins, -tmp_absResEta, tmp_absResEta ) );
606 m_rphires.push_back(
new Resplot(
"rphi_vs_ntracks", 60, 0, 600, 8*phiResBins, -wfactor*tmp_absResPhi, wfactor*tmp_absResPhi ) );
607 m_rzedres.push_back(
new Resplot(
"rzed_vs_ntracks", 60, 0, 600, 4*zfactor*zresBins, -zfactor*zresMax, zfactor*zresMax ) );
608 m_rzedthetares.push_back(
new Resplot(
"rzedtheta_vs_ntracks", 60, 0, 600, 24*zfactor*zresBins, -zfactor*zresMax, zfactor*zresMax ) );
609
610 m_riptres.push_back(
new Resplot(
"ript_vs_ntracks", 60, 0, 600, 4*pTResBins, -tmp_absResPt, tmp_absResPt ) );
611 m_rptres.push_back(
new Resplot(
"rpt_vs_ntracks", 60, 0, 600, 8*pTResBins, -tmp_absResPt, tmp_absResPt ) );
612 m_rd0res.push_back(
new Resplot(
"rd0_vs_ntracks", 60, 0, 600, factor*8*a0resBins, -wfactor*a0resMax, wfactor*a0resMax ) );
613
614
615 m_retares.push_back(
new Resplot(
"reta_vs_phi", 128, -
M_PI,
M_PI, 2*etaResBins, -wfactor*tmp_absResEta, wfactor*tmp_absResEta ) );
616 m_rphires.push_back(
new Resplot(
"rphi_vs_phi", 128, -
M_PI,
M_PI, 8*phiResBins, -wfactor*tmp_absResPhi, wfactor*tmp_absResPhi ) );
617 m_rzedres.push_back(
new Resplot(
"rzed_vs_phi", 128, -
M_PI,
M_PI, 8*zfactor*zresBins, -2*zfactor*zresMax, 2*zfactor*zresMax ) );
618 m_rzedthetares.push_back(
new Resplot(
"rzedtheta_vs_phi", 128, -
M_PI,
M_PI, 24*zfactor*zresBins, -2*zfactor*zresMax, 2*zfactor*zresMax ) );
619 m_riptres.push_back(
new Resplot(
"ript_vs_phi", 128, -
M_PI,
M_PI, 16*pTResBins, -wfactor*tmp_absResPt, wfactor*tmp_absResPt ) );
620 m_rptres.push_back(
new Resplot(
"rpt_vs_phi", 128, -
M_PI,
M_PI, 8*pTResBins, -wfactor*tmp_absResPt, wfactor*tmp_absResPt ) );
621 m_rd0res.push_back(
new Resplot(
"rd0_vs_phi", 128, -
M_PI,
M_PI, factor*8*a0resBins, -wfactor*a0resMax, wfactor*a0resMax ) );
622
623
624
625 m_retares.push_back(
new Resplot(
"reta_vs_mu", 24, 0, 72, 4*etaResBins, -tmp_absResEta, tmp_absResEta ) );
626 m_rphires.push_back(
new Resplot(
"rphi_vs_mu", 24, 0, 72, 8*phiResBins, -wfactor*tmp_absResPhi, wfactor*tmp_absResPhi ) );
627 m_rzedres.push_back(
new Resplot(
"rzed_vs_mu", 24, 0, 72, 4*zfactor*zresBins, -zfactor*zresMax, zfactor*zresMax ) );
628 m_rzedthetares.push_back(
new Resplot(
"rzedtheta_vs_mu", 24, 0, 72, 24*zfactor*zresBins, -zfactor*zresMax, zfactor*zresMax ) );
629 m_riptres.push_back(
new Resplot(
"ript_vs_mu", 24, 0, 72, 4*pTResBins, -tmp_absResPt, tmp_absResPt ) );
630 m_rptres.push_back(
new Resplot(
"rpt_vs_mu", 24, 0, 72, 8*pTResBins, -tmp_absResPt, tmp_absResPt ) );
631 m_rd0res.push_back(
new Resplot(
"rd0_vs_mu", 24, 0, 72, factor*8*a0resBins, -wfactor*a0resMax, wfactor*a0resMax ) );
632
633
634
635
636 m_rzedres.push_back(
new Resplot(
"rzed_vs_signed_pt", ptnbins2, ptbinlims2, 4*zfactor*zresBins, -zfactor*zresMax, zfactor*zresMax ) );
637 m_rzedres.push_back(
new Resplot(
"rzed_vs_ABS_pt", ptnbins, ptbinlims, 4*zfactor*zresBins, -2*zfactor*zresMax, 2*zfactor*zresMax ) );
638 m_rzedthetares.push_back(
new Resplot(
"rzedtheta_vs_signed_pt", ptnbins2, ptbinlims2, 24*zfactor*zresBins, -zfactor*zresMax, zfactor*zresMax ) );
639 m_rzedthetares.push_back(
new Resplot(
"rzedtheta_vs_ABS_pt", ptnbins, ptbinlims, 24*zfactor*zresBins, -2*zfactor*zresMax, 2*zfactor*zresMax ) );
640
641
642 m_rd0res.push_back(
new Resplot(
"rd0_vs_signed_pt", ptnbins2, ptbinlims2, factor*8*a0resBins, -wfactor*a0resMax, wfactor*a0resMax ) );
643 m_rd0res.push_back(
new Resplot(
"rd0_vs_ABS_pt", ptnbins, ptbinlims, factor*8*a0resBins, -wfactor*a0resMax, wfactor*a0resMax ) );
644
645
646
647
648
649 m_retaresPull.push_back(
new Resplot(
"retaPull_vs_ipt", iptnbins, iptbinlims, 2*etaResBins, -5,5));
650 m_rphiresPull.push_back(
new Resplot(
"rphiPull_vs_ipt", iptnbins, iptbinlims, 8*phiResBins, -5,5));
651 m_rzedresPull.push_back(
new Resplot(
"rzedPull_vs_ipt", iptnbins, iptbinlims, 4*zfactor*zresBins, -5,5));
652
653 m_rptresPull.push_back(
new Resplot(
"rptPull_vs_ipt", iptnbins, iptbinlims, 8*pTResBins, -5,5));
654 m_rd0resPull.push_back(
new Resplot(
"rd0Pull_vs_ipt", iptnbins, iptbinlims, factor*8*a0resBins, -5,5));
655
656 m_retaresPull.push_back(
new Resplot(
"retaPull_vs_pt", ptnbins, ptbinlims, 2*etaResBins, -5,5));
657 m_rphiresPull.push_back(
new Resplot(
"rphiPull_vs_pt", ptnbins, ptbinlims, 8*phiResBins, -5,5));
658 m_rzedresPull.push_back(
new Resplot(
"rzedPull_vs_pt", ptnbins, ptbinlims, 4*zfactor*zresBins, -5,5));
659
660
661 m_rptresPull.push_back(
new Resplot(
"rptPull_vs_pt", ptnbins, ptbinlims, 8*pTResBins, -5,5));
662 m_rd0resPull.push_back(
new Resplot(
"rd0Pull_vs_pt", ptnbins, ptbinlims, factor*8*a0resBins, -5,5));
663
664 m_retaresPull.push_back(
new Resplot(
"retaPull_vs_eta", etaBins, -tmp_maxEta, tmp_maxEta, 4*etaResBins, -5,5));
665 m_rphiresPull.push_back(
new Resplot(
"rphiPull_vs_eta", etaBins, -tmp_maxEta, tmp_maxEta, 8*phiResBins, -5,5));
666 m_rzedresPull.push_back(
new Resplot(
"rzedPull_vs_eta", etaBins, -tmp_maxEta, tmp_maxEta, 4*zfactor*zresBins, -5,5));
667
668
669 m_rptresPull.push_back(
new Resplot(
"rptPull_vs_eta", etaBins, -tmp_maxEta, tmp_maxEta, 8*pTResBins, -5,5));
670 m_rd0resPull.push_back(
new Resplot(
"rd0Pull_vs_eta", etaBins, -tmp_maxEta, tmp_maxEta, factor*8*a0resBins, -5,5));
671 m_retaresPull.push_back(
new Resplot(
"retaPull_vs_zed", 0.2*zBins, -zMax, zMax, 2*etaResBins, -5,5));
672 m_rphiresPull.push_back(
new Resplot(
"rphiPull_vs_zed", 0.2*zBins, -zMax, zMax, 8*phiResBins, -5,5));
673 m_rzedresPull.push_back(
new Resplot(
"rzedPull_vs_zed", 0.2*zBins, -zMax, zMax, 4*zfactor*zresBins, -5,5));
674
675
676
677 m_rptresPull.push_back(
new Resplot(
"rptPull_vs_zed", 0.2*zBins, -zMax, zMax, 8*pTResBins, -5,5));
678 m_rd0resPull.push_back(
new Resplot(
"rd0Pull_vs_zed", 0.2*zBins, -zMax, zMax, factor*8*a0resBins, -5,5));
679
680 m_retaresPull.push_back(
new Resplot(
"retaPull_vs_nvtx", 12, 0, 36, 4*etaResBins, -5,5));
681 m_rphiresPull.push_back(
new Resplot(
"rphiPull_vs_nvtx", 12, 0, 36, 8*phiResBins, -5,5));
682 m_rzedresPull.push_back(
new Resplot(
"rzedPull_vs_nvtx", 12, 0, 36, 4*zfactor*zresBins, -5,5));
683
684
685
686 m_rptresPull.push_back(
new Resplot(
"rptPull_vs_nvtx", 12, 0, 36, 8*pTResBins, -5,5));
687 m_rd0resPull.push_back(
new Resplot(
"rd0Pull_vs_nvtx", 12, 0, 36, factor*8*a0resBins, -5,5));
688
689 m_retaresPull.push_back(
new Resplot(
"retaPull_vs_ntracks", 60, 0, 600, 4*etaResBins, -5,5));
690 m_rphiresPull.push_back(
new Resplot(
"rphiPull_vs_ntracks", 60, 0, 600, 8*phiResBins, -5,5));
691 m_rzedresPull.push_back(
new Resplot(
"rzedPull_vs_ntracks", 60, 0, 600, 4*zfactor*zresBins, -5,5));
692
693
694 m_rptresPull.push_back(
new Resplot(
"rptPull_vs_ntracks", 60, 0, 600, 8*pTResBins, -5,5));
695 m_rd0resPull.push_back(
new Resplot(
"rd0Pull_vs_ntracks", 60, 0, 600, factor*8*a0resBins, -5,5));
696
697 m_rzedresPull.push_back(
new Resplot(
"rzedPull_vs_signed_pt", ptnbins2, ptbinlims2, 4*zfactor*zresBins, -5,5));
698 m_rzedresPull.push_back(
new Resplot(
"rzedPull_vs_ABS_pt", ptnbins, ptbinlims, 4*zfactor*zresBins, -5,5));
699
700
701 m_rd0resPull.push_back(
new Resplot(
"rd0Pull_vs_signed_pt", ptnbins2, ptbinlims2, factor*8*a0resBins, -5,5));
702 m_rd0resPull.push_back(
new Resplot(
"rd0Pull_vs_ABS_pt", ptnbins, ptbinlims, factor*8*a0resBins, -5,5));
703
704 m_rzedreslb =
new Resplot(
"rzed_vs_lb", 301, -0.5, 3009.5, 8*zfactor*zresBins, -2*zfactor*zresMax, 2*zfactor*zresMax );
705
706 m_rzedlb =
new Resplot(
"zed_vs_lb", 301, -0.5, 3009.5, 100, -300, 300 );
707 m_rzedlb_rec =
new Resplot(
"zed_vs_lb_rec", 301, -0.5, 3009.5, 100, -300, 300 );
708
709
712
713
715
716 m_rRoi_deta_vs_eta =
new Resplot(
"rRoi_deta_vs_eta", 20, -2.5, 2.5, 101, -0.5, 0.5 );
717 m_rRoi_dphi_vs_eta =
new Resplot(
"rRoi_dphi_vs_eta", 20, -2.5, 2.5, 101, -0.5, 0.5 );
718 m_rRoi_dzed_vs_eta =
new Resplot(
"rRoi_dzed_vs_eta", 20, -2.5, 2.5, 401, -30.0, 30.0 );
719
720
721
722
723
724
725 int NHits = 40;
726 int Ntracks = 10000;
727
729 addHistogram(
new TH1F(
"nsct_rec",
"nsct_rec", NHits, -0.5,
float(NHits-0.5) ) );
730
732 addHistogram(
new TH1F(
"npix_rec",
"npix_rec", NHits, -0.5,
float(NHits-0.5) ) );
733
735 addHistogram(
new TH1F(
"nsi_rec",
"nsi_rec", NHits, -0.5,
float(NHits-0.5) ) );
736 addHistogram(
new TH1F(
"nsi_matched",
"nsi_matched", NHits, -0.5,
float(NHits-0.5) ) );
737
738
740 addHistogram(
new TH1F(
"ntrt_rec",
"ntrt_rec", NHits, -0.5,
float(NHits-0.5) ) );
741
742 addHistogram(
new TH1F(
"nstraw",
"nstraw", NHits*4, -0.5,
float(4*NHits-0.5) ) );
743 addHistogram(
new TH1F(
"nstraw_rec",
"nstraw_rec", NHits*4, -0.5,
float(4*NHits-0.5) ) );
744
745 addHistogram(
new TH1F(
"ntracks",
"ntracks", Ntracks+1, -0.5,
float(Ntracks+0.5) ) );
746 addHistogram(
new TH1F(
"ntracks_rec",
"ntracks_rec", Ntracks+1, -0.5,
float(Ntracks+0.5) ) );
747
748
749
750 m_h2 =
new Resplot(
"d0vphi", phiBins, -3.142, 3.142, d0Bins, -d0Max, d0Max );
751 m_h2r =
new Resplot(
"d0vphi_rec", phiBins, -3.142, 3.142, d0Bins, -d0Max, d0Max );
752 m_h2m =
new Resplot(
"d0vphi_match", phiBins, -3.142, 3.142, d0Bins, -d0Max, d0Max );
753
754 m_h2a0 =
new Resplot(
"a0vphi", phiBins, -3.142, 3.142, d0Bins, -d0Max, d0Max );
755 m_h2a0r =
new Resplot(
"a0vphi_rec", phiBins, -3.142, 3.142, d0Bins, -d0Max, d0Max );
756
758
759
760 TH1F heffvlb(
"eff vs lb",
"eff vs lb", 301, -0.5, 3009.5 );
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
779
780
781 m_z_vs_lb =
new Resplot(
"z vs lb", 301, -0.5, 3009.5, 100, -250, 250);
782
783
784
785
786
787
788
789
790
791 m_deltaR_v_eta =
new Resplot(
"R v eta", 10, -2.5, 2.5, 100, 0, 0.1 );
792 m_deltaR_v_pt =
new Resplot(
"R v pt", ptnbins, ptbinlims, 100, 0, 0.1 );
793
794
795 TH1F* eff_vs_mult =
new TH1F(
"eff_vs_mult",
"eff_vs_mult", 25, 0, 25 );
796
798
799
802
803
804
805
806
807
808
809
810
811
812
813
814
815 double nbins[23] = { 0, 29.5, 39.5, 48.5, 56.5, 63.5, 70.5, 77.5,
816 83.5, 91.5, 97.5, 106.5, 114.5, 121.5, 129.5, 140.5,
817 151.5, 164.5, 200.5, 250.5, 300.5, 400.5, 600 };
818
819 TH1F* n_vtx_tracks2 =
new TH1F(
"nvtxtracks2",
"nvtxtracks2", 22, nbins);
821 delete n_vtx_tracks2;
822
823 m_n_vtx =
new TH1F(
"nvtx",
"nvtx", 81, -0.5, 80.5);
825
826 m_mu =
new TH1F(
"mu",
"mu", 90, 0, 90);
828
829
831
832 double etovpt_bins[39] = {
833 0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9,
834 1, 1.08571, 1.17877, 1.2798, 1.3895, 1.50859, 1.63789, 1.77828, 1.9307, 2.09618,
835 2.27585, 2.47091, 2.6827, 2.91263, 3.16228, 3.43332, 3.72759, 4.04709, 4.39397, 4.77058,
836 5.17947, 5.62341, 6.1054, 6.6287, 7.19686, 7.81371, 8.48343, 9.21055, 10
837 };
838
840
841 m_etovpt =
new TH1F(
"etovpt",
"ET / pT", 38, etovpt_bins );
843
844
845 m_et =
new TH1F(
"ET",
"ET; E_{T} [GeV]", ptnbins, ptbinlims );
847
848
849
850
851 ConfVtxAnalysis* vtxanal = 0;
854
855
856
857
859
861
862
863
864}
BinConfig cosmicBinConfig("cosmic")
BinConfig electronBinConfig("electron")
BinConfig muonBinConfig("muon")
BinConfig g_binConfig("standard")
BinConfig bjetBinConfig("bjet")
BinConfig tauBinConfig("tau")
void addHistogram(TH1F *h)
void addHistogram2D(TH2F *h)
TH2F(name, title, nxbins, bins_par2, bins_par3, bins_par4, bins_par5=None, bins_par6=None, path='', **kwargs)
TH1F(name, title, nxbins, bins_par2, bins_par3=None, path='', **kwargs)
double ptres_NScale
scales for the residuals