Limit the bins - to only the first 77 bins - so a range up to ~ 1000 leave the previous selection commented for the time being
the error estimates are always positive ...
Limit the bins - to only the first 77 bins - so a range up to ~ 1000 leave the previous selection commented for the time being
if ( cnams.extra().find("probe")!=std::string::npos ) { m_h_invmass = new TH1F( "invmass", "invariant mass;mass [GeV]", 320, 0, 200 ); addHistogram( m_h_invmass ); }
vertex analyses if required ...
113 {
114
116
117
118
119#if 0
120 std::cout <<
"\nAnalysis_Tier0:: chain specification: " <<
cname <<
"\t" <<
cname.raw() << std::endl;
121 std::cout <<
"\tchain: " <<
cname.head() << std::endl;
122 std::cout <<
"\tkey: " <<
cname.tail() << std::endl;
123 std::cout <<
"\troi: " <<
cname.roi() << std::endl;
124 std::cout <<
"\tvtx: " <<
cname.vtx() << std::endl;
125 std::cout <<
"\tte: " <<
cname.element() << std::endl;
126#endif
127
129
131 m_h_chain->GetXaxis()->SetBinLabel(1,
"Nrois" );
132 m_h_chain->GetXaxis()->SetBinLabel(2,
"Nevents" );
133 m_h_chain->GetXaxis()->SetBinLabel(3,
"N ref tracks" );
134 m_h_chain->GetXaxis()->SetBinLabel(4,
"N matched tracks" );
135 m_h_chain->GetXaxis()->SetBinLabel(5,
"N total test tracks" );
136
137
139
141
143
144#if 0
145
146 double vnbins[81] = {
147 -0.5,
148 0.5, 1.5, 2.5, 3.5, 4.5, 5.5, 6.5, 7.5, 8.5, 9.5,
149 10.5, 11.5, 12.5, 13.5, 14.5, 15.5, 16.5, 17.5, 18.5, 19.5,
150 20.5, 21.5, 22.5, 23.5, 24.5, 25.5, 26.5, 27.5, 28.5, 29.5,
151 31.5, 32.5, 33.5, 34.5, 36.5, 37.5, 39.5,
152 40.5, 42.5, 43.5, 45.5, 47.5, 49.5,
153 50.5, 52.5, 54.5, 57.5, 59.5,
154 61.5, 63.5, 66.5, 69.5,
155 71.5, 74.5, 77.5,
156 80.5, 83.5, 86.5,
157 90.5, 93.5, 97.5,
158 100.5, 104.5, 108.5,
159 113.5, 117.5,
160 122.5, 126.5,
161 131.5, 136.5,
162 142.5, 147.5,
163 153.5, 159.5,
164 165.5,
165 171.5, 178.5,
166 185.5,
167 192.5,
168 200.5 };
169#endif
170
171 double vnbins[101] = {
172 -0.5,
173 0.5, 1.5, 2.5, 3.5, 4.5, 5.5, 6.5, 7.5, 8.5, 9.5, 10.5, 11.5, 12.5, 13.5, 14.5, 15.5, 17.5, 18.5, 19.5, 21.5,
174 23.5, 24.5, 26.5, 28.5, 30.5, 32.5, 35.5, 37.5, 40.5, 43.5, 46.5, 50.5, 53.5, 57.5, 61.5, 66.5, 71.5, 76.5, 81.5, 87.5,
175 93.5, 100.5, 107.5, 114.5, 123.5, 131.5, 141.5, 150.5, 161.5, 172.5, 185.5, 198.5, 211.5, 226.5, 242.5, 259.5, 277.5, 297.5, 317.5, 340.5,
176 363.5, 389.5, 416.5, 445.5, 476.5, 509.5,
177 544.5, 582.5, 623.5, 666.5, 713.5, 762.5, 815.5, 872.5, 933.5, 998.5, 1067.5,
178 1141.5, 1221.5, 1305.5, 1396.5, 1493.5, 1597.5,
179 1708.5, 1827.5, 1953.5, 2089.5,
180 2234.5, 2389.5, 2555.5,
181 2733.5, 2923.5, 3125.5,
182 3342.5, 3574.5,
183 3823.5, 4088.5,
184 4372.5, 4675.5,
185 5000.5
186 };
187
188
191
192 m_h_ntrk =
new TH1F(
"reftrk_N",
"Reference tracks", 77, vnbins );
193
195
197
198
199
200 std::vector<double> ptbins;
201
202 for (
int i=0 ;
i<=25 ;
i++ ) {
203
204 double y = std::log10(1) +
i*( std::log10(100)-std::log10(1) )/25;
205
206 double x = std::pow(10,
y);
208
209 }
210
211
212 m_h_trkpT =
new TH1F(
"reftrk_pT" ,
"Reference track pT", 25, &ptbins[0] );
214 m_h_trketa =
new TH1F(
"reftrk_eta",
"Reference track Eta", 25, -2.5, 2.5) ;
215 if (
name().
find(
"LRT")!=std::string::npos ||
name().
find(
"lrt")!=std::string::npos) {
216 m_h_trkd0 =
new TH1F(
"reftrk_d0" ,
"Reference track d0", 201, -100.0, 100.0 );
217 } else {
218 m_h_trkd0 =
new TH1F(
"reftrk_d0" ,
"Reference track d0", 101, -5.0, 5.0 );
219 }
220 m_h_trkz0 =
new TH1F(
"reftrk_z0" ,
"Reference track z0", 50, -225., 225.);
221
223 m_h_trkdd0 =
new TH1F(
"reftrk_dd0" ,
"Reference track sigma(d0)", 50, 0, 0.5);
224 m_h_trkdz0 =
new TH1F(
"reftrk_dz0" ,
"Reference track sigma(z0)", 50, 0, 2.5);
225
226 m_h_trkd0sig =
new TH1F(
"reftrk_d0sig" ,
"Reference track d0 significance", 101, -5., 5.);
227
233
234
237
239
241
244
246
248
249
253 if (
name().
find(
"LRT")!=std::string::npos ||
name().
find(
"lrt")!=std::string::npos) {
255 } else {
257 }
259
262
264
265
271
274
276
278
279 double d0bins_LRT[124] = { -100.5,
280 -97.5, -93.5, -90.5,
281 -86.5, -83.5, -80.5,
282 -77.5, -74.5, -71.5,
283 -69.5, -66.5, -63.5, -61.5,
284 -59.5, -57.5, -54.5, -52.5, -50.5,
285 -49.5, -47.5, -45.5, -43.5, -42.5, -40.5,
286 -39.5, -37.5, -36.5, -34.5, -33.5, -32.5, -31.5,
287 -29.5, -28.5, -27.5, -26.5, -25.5, -24.5, -23.5, -22.5, -21.5, -20.5,
288 -19.5, -18.5, -17.5, -16.5, -15.5, -14.5, -13.5, -12.5, -11.5, -10.5,
289 -9.5, -8.5, -7.5, -6.5, -5.5, -4.5, -3.5, -2.5, -1.5, -0.5,
290 0.5, 1.5, 2.5, 3.5, 4.5, 5.5, 6.5, 7.5, 8.5, 9.5,
291 10.5, 11.5, 12.5, 13.5, 14.5, 15.5, 16.5, 17.5, 18.5, 19.5,
292 20.5, 21.5, 22.5, 23.5, 24.5, 25.5, 26.5, 27.5, 28.5, 29.5,
293 31.5, 32.5, 33.5, 34.5, 36.5, 37.5, 39.5,
294 40.5, 42.5, 43.5, 45.5, 47.5, 49.5,
295 50.5, 52.5, 54.5, 57.5, 59.5,
296 61.5, 63.5, 66.5, 69.5,
297 71.5, 74.5, 77.5,
298 80.5, 83.5, 86.5,
299 90.5, 93.5, 97.5,
300 100.5 };
301
302 double d0bins[40] = { -5.0, -4.0, -3.0, -2.5,
303 -2.0, -1.8, -1.6, -1.4, -1.2,
304 -1.05, -0.95, -0.85, -0.75, -0.65, -0.55, -0.45, -0.35, -0.25, -0.15, -0.05,
305 0.05, 0.15, 0.25, 0.35, 0.45, 0.55, 0.65, 0.75, 0.85, 0.95, 1.05,
306 1.2, 1.4, 1.6, 1.8, 2.0,
307 2.5, 3.0, 4.0, 5.0 };
308
309
310
312
313
317 if (
name().
find(
"LRT")!=std::string::npos ||
name().
find(
"lrt")!=std::string::npos) {
319 } else {
321 }
324
325
326 m_h_lbeff =
new TProfile(
"Eff_lb",
"efficinecy vs lumiblock", 301, -0.5, 3009.5 );
327
329
333
337
339 m_h_npixvseta =
new TProfile(
"npix_vs_eta",
"offline npix vs eta;offline #eta;# mean number of offline pixel hits", 30, -2.5, 2.5);
340 m_h_npixvseta_rec =
new TProfile(
"npix_vs_eta_rec",
"trigger npix vs eta;offline #eta;# mean number of trigger pixel hits", 30, -2.5, 2.5);
341
342 m_h_nsctvseta =
new TProfile(
"nsct_vs_eta",
"offline nsct vs eta;offline #eta;# mean number of offline sct hits", 30, -2.5, 2.5);
343 m_h_nsctvseta_rec =
new TProfile(
"nsct_vs_eta_rec",
"trigger nsct vs eta;offline #eta;# mean number of trigger sct hits", 30, -2.5, 2.5);
344
345 m_h_ntrtvseta =
new TProfile(
"ntrt_vs_eta",
"offline ntrt vs eta;offline #eta;# mean number of offline trt hits", 30, -2.5, 2.5 );
346 m_h_ntrtvseta_rec =
new TProfile(
"ntrt_vs_eta_rec",
"trigger ntrt vs eta;offline #eta;# mean number of trigger trt hits", 30, -2.5, 2.5 );
347
350
353
356
357 if (
name().
find(
"LRT")!=std::string::npos ||
name().
find(
"lrt")!=std::string::npos) {
358 m_h_npixvsd0 =
new TProfile(
"npix_vs_d0",
"offline npix vs d0;offline #d0;# mean number of offline pixel hits", 123, d0bins_LRT );
359 m_h_npixvsd0_rec =
new TProfile(
"npix_vs_d0_rec",
"trigger npix vs d0;offline #d0;# mean number of trigger pixel hits", 123, d0bins_LRT );
360
361 m_h_nsctvsd0 =
new TProfile(
"nsct_vs_d0",
"offline nsct vs d0;offline #d0;# mean number of offline sct hits", 123, d0bins_LRT );
362 m_h_nsctvsd0_rec =
new TProfile(
"nsct_vs_d0_rec",
"trigger nsct vs d0;offline #d0;# mean number of trigger sct hits", 123, d0bins_LRT );
363 } else {
364 m_h_npixvsd0 =
new TProfile(
"npix_vs_d0",
"offline npix vs d0;offline #d0;# mean number of offline pixel hits", 39, d0bins );
365 m_h_npixvsd0_rec =
new TProfile(
"npix_vs_d0_rec",
"trigger npix vs d0;offline #d0;# mean number of trigger pixel hits", 39, d0bins );
366
367 m_h_nsctvsd0 =
new TProfile(
"nsct_vs_d0",
"offline nsct vs d0;offline #d0;# mean number of offline sct hits", 39, d0bins );
368 m_h_nsctvsd0_rec =
new TProfile(
"nsct_vs_d0_rec",
"trigger nsct vs d0;offline #d0;# mean number of trigger sct hits", 39, d0bins );
369 }
370
371 m_h_npixvspT =
new TProfile(
"npix_vs_pT",
"offline npix vs pT;offline #p_{T};# mean number of offline pixel hits", 25, &ptbins[0] );
372 m_h_npixvspT_rec =
new TProfile(
"npix_vs_pT_rec",
"trigger npix vs pT;offline #p_{T};# mean number of trigger pixel hits", 25, &ptbins[0] );
373
374 m_h_nsctvspT =
new TProfile(
"nsct_vs_pT",
"offline nsct vs pT;offline #p_{T} [GeV];# mean number of offline pixel hits", 25, &ptbins[0] );
375 m_h_nsctvspT_rec =
new TProfile(
"nsct_vs_pT_rec",
"trigger nsct vs pT;offline #p_{T} [GeV];# mean number of trigger pixel hits", 25, &ptbins[0] );
376
377
380
383
385 m_h_layer =
new TH1F(
"layer",
"hit layers", 32, -0.5, 31.5 );
386
389
390
391
399
402
405
408
411
414
417
420
423
426
429
431
433
434
435
436
437
438
439
440
441
442 m_h_pTres =
new TProfile(
"Res_pT",
"pT residual;#eta_{ref};#Delta pT [Gev]", 25, -2.5, 2.5 );
443 m_h_ipTres =
new TProfile(
"Res_ipT",
"ipT residual;#eta_{ref};#Delta pT^{-1} [Gev^{-1}]", 25, -2.5, 2.5);
444 m_h_etares =
new TProfile(
"Res_eta",
"Eta residual;#eta_{ref};#Delta #eta", 25, -2.5, 2.5);
445 m_h_phires =
new TProfile(
"Res_phi",
"Phi residual;#eta_{ref};#Delta #phi", 25, -2.5, 2.5);
446 m_h_d0res =
new TProfile(
"Res_d0",
"d0 residual;#eta_{ref};#Delta d0 [mm]", 25, -2.5, 2.5);
447 m_h_z0res =
new TProfile(
"Res_z0",
"z0 residual;#eta_{ref};#Delta z0 [mm]", 25, -2.5, 2.5);
448
455
457
464
467
474
477
480
483
486
489
494
499
501
504
507
512
513
514
515
516
517
518
520
521#if 1
522
523
524
526 if (
name().
find(
"vtx")!=std::string::npos ||
name().
find(
"Vtx")!=std::string::npos ||
527 name().
find(
"vx")!=std::string::npos ||
name().
find(
"Vx")!=std::string::npos ) {
528
529
530
532
535
538
539
540
541
545 }
546#endif
547
548}
void addHistogram(TH1 *h)
void insert(T *t, const std::string &key)
TIDA::FeatureStore & store()
std::string find(const std::string &s)
return a remapped string
TProfile(*args, **kwargs)
TH1F(name, title, nxbins, bins_par2, bins_par3=None, path='', **kwargs)