419 |
|
ntracks++; |
420 |
|
} |
421 |
|
} |
422 |
< |
} |
423 |
< |
|
424 |
< |
// == end of getting the ntracks |
422 |
> |
} // == end of getting the ntracks |
423 |
> |
|
424 |
> |
// == Fill Efficiency Histogram |
425 |
|
if(ntracks>1) { |
426 |
< |
h_summary->Fill1d(TString("denom_ntrack"+suffix), ntracks); |
426 |
> |
h_summary->Fill1d(TString("eff_denom_ntrack"+suffix), ntracks); |
427 |
|
if(!vertexColl->begin()->isFake()) |
428 |
|
h_summary->Fill1d(TString("deltazSign"+suffix), vsim.z - vertexColl->begin()->z()); |
429 |
|
if ( isAssoVertex(vsim, *vertexColl->begin(), zsigncut_) ) |
430 |
< |
h_summary->Fill1d(TString("numer_ntrack"+suffix), ntracks); |
430 |
> |
h_summary->Fill1d(TString("eff_numer_ntrack"+suffix), ntracks); |
431 |
|
} |
432 |
< |
} |
433 |
< |
} // End of Analyzing MC Efficiency |
432 |
> |
|
433 |
> |
// == Fill FakeRate Histogram |
434 |
> |
if(!vertexColl->begin()->isFake ()) { |
435 |
> |
h_summary->Fill1d(TString("fakerate_denom_ntrack"+suffix), int(vertexColl->begin()->tracksSize())); |
436 |
> |
if (!isAssoVertex(vsim, *vertexColl->begin(), zsigncut_) ) |
437 |
> |
h_summary->Fill1d(TString("fakerate_numer_ntrack"+suffix), int(vertexColl->begin()->tracksSize())); |
438 |
> |
} |
439 |
> |
} // end of MC analyzing |
440 |
> |
} // end of MC access |
441 |
|
|
442 |
|
// == Start of Split-Method |
443 |
|
// Event selections |
446 |
|
t!=vertexColl->begin()->tracks_end(); t++) { |
447 |
|
h_summary->Fill1d("trackweight",vertexColl->begin()->trackWeight(*t)); |
448 |
|
} |
449 |
+ |
|
450 |
+ |
// == Start of FakeRate Analyzing |
451 |
+ |
|
452 |
+ |
if(!splitVertexColl1->begin()->isFake()) { |
453 |
+ |
h_summary->Fill1d("fakerate_denom_ntrack", int(splitVertexColl1->begin()->tracksSize())); |
454 |
+ |
if ( !isGoodProbeVertex( *splitVertexColl1->begin(), *vertexColl->begin(), zsigncut_) ) |
455 |
+ |
h_summary->Fill1d("fakerate_numer_ntrack", int(splitVertexColl1->begin()->tracksSize())); |
456 |
+ |
} |
457 |
+ |
|
458 |
+ |
// == End of FakeRate Analyzing |
459 |
+ |
// == Start of Efficiency Analyzing |
460 |
|
std::vector< std::vector<reco::TransientTrack> > clusters1; |
461 |
|
std::vector< std::vector<reco::TransientTrack> > clusters2; |
462 |
|
if(splitTrackCollection1Handle.isValid()) |
480 |
|
nGoodTracks++; |
481 |
|
} |
482 |
|
|
483 |
< |
h_summary->Fill1d("denom_ntrack", nGoodTracks); |
483 |
> |
h_summary->Fill1d("eff_denom_ntrack", nGoodTracks); |
484 |
|
// ProbeVertex Requirement |
485 |
|
if ( isGoodProbeVertex( *splitVertexColl1->begin(), *vertexColl->begin(), zsigncut_) ) { |
486 |
< |
h_summary->Fill1d("numer_ntrack", nGoodTracks); |
486 |
> |
h_summary->Fill1d("eff_numer_ntrack", nGoodTracks); |
487 |
|
h_summary->Fill1d("avgWeight_orgvtx_eff",avgWeight(*vertexColl->begin()) ); |
488 |
|
h_summary->Fill1d("avgWeight_tagvtx_eff",avgWeight(*splitVertexColl2->begin()) ); |
489 |
|
h_summary->Fill1d("avgWeight_probevtx_eff",avgWeight(*splitVertexColl1->begin()) ); |
513 |
|
} |
514 |
|
} |
515 |
|
} |
516 |
+ |
// == End of Efficiency Analyzing |
517 |
+ |
|
518 |
|
} |
519 |
|
|
520 |
|
|
538 |
|
case 1: suffix = "_mct"; |
539 |
|
break; |
540 |
|
} |
541 |
< |
if (analyze_) |
542 |
< |
MakeEff(h_summary->ReadHisto1D(TString("numer_ntrack"+suffix)), h_summary->ReadHisto1D(TString("denom_ntrack"+suffix)), h_summary->ReadHisto1D(TString("eff_ntrack"+suffix)), false, 1); |
541 |
> |
if (analyze_) { |
542 |
> |
MakeEff(h_summary->ReadHisto1D(TString("eff_numer_ntrack"+suffix)), h_summary->ReadHisto1D(TString("eff_denom_ntrack"+suffix)), h_summary->ReadHisto1D(TString("eff_ntrack"+suffix)), false, 1); |
543 |
> |
MakeEff(h_summary->ReadHisto1D(TString("fakerate_numer_ntrack"+suffix)), h_summary->ReadHisto1D(TString("fakerate_denom_ntrack"+suffix)), h_summary->ReadHisto1D(TString("fakerate_ntrack"+suffix)), false, 1); |
544 |
> |
|
545 |
> |
} |
546 |
|
} |
547 |
|
} |
548 |
|
|