264 const std::vector<TIDA::Track*>& testTracks,
272 std::vector<TIDA::Track*>::const_iterator
reference = referenceTracks.begin();
273 std::vector<TIDA::Track*>::const_iterator referenceEnd = referenceTracks.end();
293 m_hntrk->Fill( referenceTracks.size() );
297 m_hchain->Fill(4.5, testTracks.size() );
302 double referenceEta = (*reference)->eta();
303 double referencePhi =
phi((*reference)->phi());
304 double referenceZ0 = (*reference)->z0();
305 double referenceD0 = (*reference)->a0();
306 double referencePT = (*reference)->pT();
308 double referenceDZ0 = (*reference)->dz0();
309 double referenceDD0 = (*reference)->da0();
314 float eff_weight = 0;
315 if (test) eff_weight = 1;
319 m_hpTeff->Fill( std::fabs(referencePT)*0.001, eff_weight );
320 m_hz0eff->Fill( referenceZ0, eff_weight );
321 m_hd0eff->Fill( referenceD0, eff_weight );
322 m_hetaeff->Fill( referenceEta, eff_weight );
323 m_hphieff->Fill( referencePhi, eff_weight );
325 if (beamline)
m_hnVtxeff->Fill( beamline[3], eff_weight );
329 m_hntraxeff->Fill( referenceTracks.size(), eff_weight );
331 m_htrkpT->Fill( std::fabs(referencePT)*0.001 );
340 if ( referenceDD0!=0 )
m_htrkd0sig->Fill( referenceD0/referenceDD0 );
342 m_hnpixvseta->Fill( referenceEta,
int(((*reference)->pixelHits()+0.5)*0.5) );
343 m_hnsctvseta->Fill( referenceEta, (*reference)->sctHits() );
344 m_hntrtvseta->Fill( referenceEta, (*reference)->strawHits() );
346 if ( (*reference)->dof()!=0 )
m_chi2dof->Fill( (*reference)->chi2()/(*reference)->dof() );
348 m_hnpixvsphi->Fill( referencePhi,
int(((*reference)->pixelHits()+0.5)*0.5) );
349 m_hnsctvsphi->Fill( referencePhi, (*reference)->sctHits() );
350 m_hntrtvsphi->Fill( referencePhi, (*reference)->strawHits() );
352 m_hnpixvsd0->Fill( referenceD0,
int(((*reference)->pixelHits()+0.5)*0.5) );
353 m_hnsctvsd0->Fill( referenceD0, (*reference)->sctHits() );
355 m_hnpixvspT->Fill( std::fabs(referencePT)*0.001,
int(((*reference)->pixelHits()+0.5)*0.5) );
356 m_hnsctvspT->Fill( std::fabs(referencePT)*0.001, (*reference)->sctHits() );
359 m_hnpix->Fill(
int(((*reference)->pixelHits()+0.5)*0.5) );
360 m_hnsct->Fill( (*reference)->sctHits() );
362 m_hntrt->Fill( (*reference)->strawHits() );
374 for (
size_t ilayer=0 ; ilayer<32 ; ilayer++ ) {
375 if ( (*reference)->hitPattern()&(1U<<ilayer) )
m_hlayer->Fill( ilayer );
394 m_hpTres->Fill( referenceEta, (test->pT() - referencePT)*0.001 );
395 m_hipTres->Fill( referenceEta, (1000/test->pT() - 1000/referencePT) );
396 m_hetares->Fill( referenceEta, test->eta() - referenceEta );
397 m_hphires->Fill( referenceEta,
phi(test->phi() - referencePhi) );
398 m_hd0res->Fill( referenceEta, test->a0() - referenceD0 );
399 m_hz0res->Fill( referenceEta, test->z0() - referenceZ0 );
405 if (tevt && beamline) {
411 for (
size_t ilayer=0 ; ilayer<32 ; ilayer++ ) {
412 if ( test->hitPattern()&(1U<<ilayer) )
m_hlayer_rec->Fill( ilayer );
458 m_hnpixvsd0_rec->Fill( referenceD0,
int((test->pixelHits()+0.5)*0.5) );
461 m_hnpixvspT_rec->Fill( std::fabs(referencePT)*0.001,
int((test->pixelHits()+0.5)*0.5) );
462 m_hnsctvspT_rec->Fill( std::fabs(referencePT)*0.001, test->sctHits() );
464 m_hnpix_rec->Fill(
int((test->pixelHits()+0.5)*0.5) );
478 if ( test->dof()!=0 )
m_chi2dof_rec->Fill( test->chi2()/test->dof() );