80 std::cout <<
"Parameters read from config file \n"
81 <<
"myverbose_ " << myverbose_ <<
"\n"
82 <<
"useJetTrigger_ " << useJetTrigger_ <<
"\n"
83 <<
"drLeadJetVeto_ " << drLeadJetVeto_ <<
"\n"
84 <<
"minTrackP_ " << minTrackP_ <<
"\n"
98 unsigned int irun = (
unsigned int)iEvent.
id().
run();
100 unsigned int ievt = (
unsigned int)iEvent.
id().
event();
114 l1extra::L1JetParticleCollection::const_iterator itr;
115 for(itr = l1TauHandle->begin(); itr != l1TauHandle->end(); ++itr )
125 for( itr = l1CenJetHandle->begin(); itr != l1CenJetHandle->end(); ++itr )
135 for( itr = l1FwdJetHandle->begin(); itr != l1FwdJetHandle->end(); ++itr )
203 reco::TrackCollection::const_iterator trkItr;
205 std::cout <<
"Track Collection: " << std::endl;
206 std::cout <<
"Number of Tracks " << trkCollection->size() << std::endl;
215 edm::SimTrackContainer::const_iterator simTrkItr;
241 std::vector<int> v_hlTriggers;
244 int hltL1Jet15 (-99);
251 int hltL1SingleEG5 (-99);
252 int hltZeroBias (-99);
253 int hltMinBiasHcal (-99);
254 int hltMinBiasEcal (-99);
255 int hltMinBiasPixel (-99);
256 int hltSingleIsoTau30_Trk5 (-99);
257 int hltDoubleLooseIsoTau15_Trk5(-99);
259 if (triggerResults.
isValid()) {
265 for (
unsigned int i=0;
i<triggerResults->size();
i++){
267 if (triggerNames.
triggerName(
i) ==
"HLT_IsoTrackHE_1E31") hltHE = triggerResults->accept(
i);
268 if (triggerNames.
triggerName(
i) ==
"HLT_IsoTrackHB_1E31") hltHB = triggerResults->accept(
i);
269 if (triggerNames.
triggerName(
i) ==
"HLT_L1Jet15" ) hltL1Jet15 = triggerResults->accept(
i);
270 if (triggerNames.
triggerName(
i) ==
"HLT_Jet30" ) hltJet30 = triggerResults->accept(
i);
271 if (triggerNames.
triggerName(
i) ==
"HLT_Jet50" ) hltJet50 = triggerResults->accept(
i);
272 if (triggerNames.
triggerName(
i) ==
"HLT_Jet80" ) hltJet80 = triggerResults->accept(
i);
273 if (triggerNames.
triggerName(
i) ==
"HLT_Jet110" ) hltJet110 = triggerResults->accept(
i);
274 if (triggerNames.
triggerName(
i) ==
"HLT_Jet140" ) hltJet140 = triggerResults->accept(
i);
275 if (triggerNames.
triggerName(
i) ==
"HLT_Jet180" ) hltJet180 = triggerResults->accept(
i);
276 if (triggerNames.
triggerName(
i) ==
"HLT_L1SingleEG5" ) hltL1SingleEG5 = triggerResults->accept(
i);
277 if (triggerNames.
triggerName(
i) ==
"HLT_ZeroBias" ) hltZeroBias = triggerResults->accept(
i);
278 if (triggerNames.
triggerName(
i) ==
"HLT_MinBiasHcal" ) hltMinBiasHcal = triggerResults->accept(
i);
279 if (triggerNames.
triggerName(
i) ==
"HLT_MinBiasEcal" ) hltMinBiasEcal = triggerResults->accept(
i);
280 if (triggerNames.
triggerName(
i) ==
"HLT_MinBiasPixel" ) hltMinBiasPixel = triggerResults->accept(
i);
281 if (triggerNames.
triggerName(
i) ==
"HLT_SingleIsoTau30_Trk5" ) hltSingleIsoTau30_Trk5 = triggerResults->accept(
i);
282 if (triggerNames.
triggerName(
i) ==
"HLT_DoubleLooseIsoTau15_Trk5" ) hltDoubleLooseIsoTau15_Trk5 = triggerResults->accept(
i);
304 for( trkItr = trkCollection->begin();
305 trkItr != trkCollection->end(); ++trkItr)
316 bool trkQual = pTrack->
quality(trackQuality_);
320 double eta1 = pTrack->
momentum().eta();
321 double phi1 = pTrack->
momentum().phi();
322 double pt1 = pTrack->
pt();
323 double p1 = pTrack->
p();
341 if( !goodEta || !goodPt || !trkQual )
continue;
381 int nOuterHits = hitp.stripTOBLayersWithMeasurement()
382 +hitp.stripTECLayersWithMeasurement() ;
387 edm::SimTrackContainer::const_iterator matchedSimTrk =
389 simP = matchedSimTrk->momentum().P();
406 std::cout <<
"Track doesn't reach Ecal." << std::endl;
420 double drFromLeadJet = 999.0;
424 drFromLeadJet =
sqrt(dphi*dphi + deta*deta);
433 const int a_size = 7;
434 double a_coneR[a_size];
435 double a_charIsoR[a_size];
436 double a_neutIsoR[a_size];
446 for (
int i=0;
i<a_size;
i++){
447 a_charIsoR[
i] = a_coneR[
i]+28.9;
448 a_neutIsoR[
i] = a_charIsoR[
i]*0.726;
457 double trkEcalEne =-999.0;
463 e3x3 =
spr::eECALmatrix(isoCell,barrelRecHitsHandle,endcapRecHitsHandle, *theEcalChStatus, geo, caloTopology, sevlv.
product(),1,1).
first;
464 trkEcalEne =
spr::eCaloSimInfo(iEvent, geo, pcaloeb, pcaloee, SimTk, SimVtx, pTrack, *associate);
467 e3x3 =
spr::eECALmatrix(isoCell,barrelRecHitsHandle,endcapRecHitsHandle, *theEcalChStatus, geo, caloTopology, sevlv.
product(),1,1).
first;
468 trkEcalEne =
spr::eCaloSimInfo(iEvent, geo, pcaloeb, pcaloee, SimTk, SimVtx, pTrack, *associate);
474 const int a_mip_size = 5;
475 double a_mipR[a_mip_size];
482 std::vector<double> v_eDR;
483 for (
int i = 0 ;
i < a_size ;
i++){
492 trackMomAtEcal, nRH_eDR);
493 v_eDR.push_back(eDR);
497 std::vector<double> v_eMipDR;
498 for (
int i = 0 ;
i < a_mip_size ;
i++){
503 a_mipR[
i], trackMomAtEcal, nRH_eMipDR);
505 v_eMipDR.push_back(eMipDR);
514 std::vector<double> v_hmaxNearP_goodTrk;
515 std::vector<double> v_hmaxNearP ;
516 std::vector<int> v_hnNearTRKs ;
517 std::vector<int> v_hnLayers_maxNearP;
518 std::vector<int> v_htrkQual_maxNearP;
520 std::vector<double> v_cone_hmaxNearP_goodTrk;
521 std::vector<double> v_cone_hmaxNearP ;
522 std::vector<int> v_cone_hnNearTRKs ;
523 std::vector<int> v_cone_hnLayers_maxNearP;
524 std::vector<int> v_cone_htrkQual_maxNearP;
526 for (
int i = 0 ;
i < a_size ;
i++){
528 double hmaxNearP = -999.0;
530 int hnLayers_maxNearP = 0;
531 int htrkQual_maxNearP = -1;
532 double hmaxNearP_goodTrk = -999.0;
534 double conehmaxNearP = -999.0;
535 int conehnNearTRKs = 0;
536 int conehnLayers_maxNearP = 0;
537 int conehtrkQual_maxNearP = -1;
538 double conehmaxNearP_goodTrk = -999.0;
541 trkItr, trkCollection,
543 theTrackQuality, conehnNearTRKs,
544 conehnLayers_maxNearP,
545 conehtrkQual_maxNearP,
546 conehmaxNearP_goodTrk,
547 hpoint1, trackMomAtHcal,
550 v_hmaxNearP_goodTrk.push_back(hmaxNearP_goodTrk);
551 v_hmaxNearP .push_back(hmaxNearP );
552 v_hnNearTRKs .push_back(hnNearTRKs );
553 v_hnLayers_maxNearP.push_back(hnLayers_maxNearP);
554 v_htrkQual_maxNearP.push_back(htrkQual_maxNearP);
556 v_cone_hmaxNearP_goodTrk.push_back(conehmaxNearP_goodTrk);
557 v_cone_hmaxNearP .push_back(conehmaxNearP );
558 v_cone_hnNearTRKs .push_back(conehnNearTRKs );
559 v_cone_hnLayers_maxNearP.push_back(conehnLayers_maxNearP);
560 v_cone_htrkQual_maxNearP.push_back(conehtrkQual_maxNearP);
564 double h3x3=-999.0, h5x5=-999.0;
565 double hsim3x3=-999.0, hsim5x5=-999.0, trkHcalEne=-999.0;
566 std::map<std::string, double> hsimInfo3x3, hsimInfo5x5;
567 double distFromHotCell_h3x3 = -99.;
568 int ietaFromHotCell_h3x3 = -99;
569 int iphiFromHotCell_h3x3 = -99;
570 double distFromHotCell_h5x5 = -99.;
571 int ietaFromHotCell_h5x5 = -99;
572 int iphiFromHotCell_h5x5 = -99;
577 int nRH_h3x3(0), nRH_h5x5(0);
592 std::vector<int> v_RH_h3x3_ieta;
593 std::vector<int> v_RH_h3x3_iphi;
594 std::vector<double> v_RH_h3x3_ene;
595 std::vector<int> v_RH_h5x5_ieta;
596 std::vector<int> v_RH_h5x5_iphi;
597 std::vector<double> v_RH_h5x5_ene;
601 nRH_h3x3, v_RH_h3x3_ieta, v_RH_h3x3_iphi, v_RH_h3x3_ene,
606 nRH_h5x5, v_RH_h5x5_ieta, v_RH_h5x5_iphi, v_RH_h5x5_ene,
613 std::vector<int> multiplicity3x3;
614 std::vector<int> multiplicity5x5;
621 hsimInfo3x3 =
spr::eHCALSimInfo(iEvent, theHBHETopology, ClosestCell, pcalohh, SimTk, SimVtx, pTrack, *associate, 1,1, multiplicity3x3);
622 hsimInfo5x5 =
spr::eHCALSimInfo(iEvent, theHBHETopology, ClosestCell, pcalohh, SimTk, SimVtx, pTrack, *associate, 2,2, multiplicity5x5);
625 trkHcalEne =
spr::eCaloSimInfo(iEvent, geo, pcalohh, SimTk, SimVtx, pTrack, *associate);
629 std::vector<double> v_hsimInfoConeMatched;
630 std::vector<double> v_hsimInfoConeRest ;
631 std::vector<double> v_hsimInfoConePhoton ;
632 std::vector<double> v_hsimInfoConeNeutHad;
633 std::vector<double> v_hsimInfoConeCharHad;
634 std::vector<double> v_hsimInfoConePdgMatched;
635 std::vector<double> v_hsimInfoConeTotal ;
637 std::vector<int> v_hsimInfoConeNMatched;
638 std::vector<int> v_hsimInfoConeNTotal ;
639 std::vector<int> v_hsimInfoConeNNeutHad;
640 std::vector<int> v_hsimInfoConeNCharHad;
641 std::vector<int> v_hsimInfoConeNPhoton ;
642 std::vector<int> v_hsimInfoConeNRest ;
644 std::vector<double> v_hsimCone ;
645 std::vector<double> v_hCone ;
647 std::vector<int> v_nRecHitsCone ;
648 std::vector<int> v_nSimHitsCone ;
650 std::vector<double> v_distFromHotCell;
651 std::vector<int> v_ietaFromHotCell;
652 std::vector<int> v_iphiFromHotCell;
656 std::vector<int> v_RH_r26_ieta;
657 std::vector<int> v_RH_r26_iphi;
658 std::vector<double> v_RH_r26_ene;
659 std::vector<int> v_RH_r44_ieta;
660 std::vector<int> v_RH_r44_iphi;
661 std::vector<double> v_RH_r44_ene;
665 for (
int i = 0 ;
i < a_size ;
i++){
668 std::map<std::string, double> hsimInfoCone;
669 double hsimCone = -999.0, hCone = -999.0;
670 double distFromHotCell = -99.0;
671 int ietaFromHotCell = -99;
672 int iphiFromHotCell = -99;
673 int ietaHotCell = -99;
674 int iphiHotCell = -99;
675 int nRecHitsCone = -999;
676 int nSimHitsCone = -999;
678 std::vector<int> multiplicityCone;
679 std::vector<DetId> coneRecHitDetIds;
682 a_coneR[
i], trackMomAtHcal, nSimHitsCone);
686 bool makeHitmaps =
false;
687 if (a_coneR[i] == 26.23 && makeHitmaps)
691 a_coneR[i], trackMomAtHcal,nRecHitsCone,
692 v_RH_r26_ieta, v_RH_r26_iphi, v_RH_r26_ene,
693 coneRecHitDetIds, distFromHotCell,
694 ietaHotCell, iphiHotCell, gposHotCell);
696 else if (a_coneR[i] == 43.72 && makeHitmaps)
700 a_coneR[i], trackMomAtHcal,nRecHitsCone,
701 v_RH_r44_ieta, v_RH_r44_iphi, v_RH_r44_ene,
702 coneRecHitDetIds, distFromHotCell,
703 ietaHotCell, iphiHotCell, gposHotCell);
709 a_coneR[i], trackMomAtHcal, nRecHitsCone,
710 coneRecHitDetIds, distFromHotCell,
711 ietaHotCell, iphiHotCell, gposHotCell);
716 if (ietaHotCell != 99){
717 ietaFromHotCell = ietaHotCell-ClosestCell_HcalDetId.ieta();
718 iphiFromHotCell = iphiHotCell-ClosestCell_HcalDetId.iphi();
723 hsimInfoCone = spr::eHCALSimInfoCone(iEvent,pcalohh, SimTk, SimVtx, pTrack, *associate, geo, hpoint1, point1, a_coneR[i], trackMomAtHcal, multiplicityCone);
735 v_hsimInfoConeMatched .push_back(hsimInfoCone[
"eMatched" ]);
736 v_hsimInfoConeRest .push_back(hsimInfoCone[
"eRest" ]);
737 v_hsimInfoConePhoton .push_back(hsimInfoCone[
"eGamma" ]);
738 v_hsimInfoConeNeutHad .push_back(hsimInfoCone[
"eNeutralHad"]);
739 v_hsimInfoConeCharHad .push_back(hsimInfoCone[
"eChargedHad"]);
740 v_hsimInfoConePdgMatched.push_back(hsimInfoCone[
"pdgMatched" ]);
741 v_hsimInfoConeTotal .push_back(hsimInfoCone[
"eTotal" ]);
743 v_hsimInfoConeNMatched .push_back(multiplicityCone.at(0));
745 v_hsimInfoConeNTotal .push_back(multiplicityCone.at(1));
746 v_hsimInfoConeNNeutHad .push_back(multiplicityCone.at(2));
747 v_hsimInfoConeNCharHad .push_back(multiplicityCone.at(3));
748 v_hsimInfoConeNPhoton .push_back(multiplicityCone.at(4));
749 v_hsimInfoConeNRest .push_back(multiplicityCone.at(5));
751 v_hsimCone .push_back(hsimCone );
752 v_nSimHitsCone .push_back(nSimHitsCone );
754 v_hCone .push_back(hCone );
755 v_nRecHitsCone .push_back(nRecHitsCone );
757 v_distFromHotCell .push_back(distFromHotCell );
758 v_ietaFromHotCell .push_back(ietaFromHotCell );
759 v_iphiFromHotCell .push_back(iphiFromHotCell );
790 t_e3x3 ->push_back(e3x3 );
794 t_h3x3 ->push_back(h3x3 );
795 t_h5x5 ->push_back(h5x5 );
807 t_simP ->push_back(simP );
933 double tempgen_TH[22] = { 0.0, 1.0, 2.0, 3.0, 4.0,
934 5.0, 6.0, 7.0, 8.0, 9.0,
935 10.0, 12.0, 15.0, 20.0, 25.0,
936 30.0, 40.0, 50.0, 60.0, 70.0, 80.0, 100};
940 double tempgen_Eta[5] = {0.0, 0.5, 1.1, 1.7, 2.0};
959 t_trkP =
new std::vector<double>();
960 t_trkPt =
new std::vector<double>();
961 t_trkEta =
new std::vector<double>();
962 t_trkPhi =
new std::vector<double>();
964 t_e3x3 =
new std::vector<double>();
965 t_v_eDR =
new std::vector<std::vector<double> >();
966 t_v_eMipDR =
new std::vector<std::vector<double> >();
968 t_h3x3 =
new std::vector<double>();
969 t_h5x5 =
new std::vector<double>();
975 t_simP =
new std::vector<double>();
1035 t_v_hsimCone =
new std::vector<std::vector<double> >();
1038 t_v_hCone =
new std::vector<std::vector<double> >();
1062 t_hltHE =
new std::vector<int>();
1063 t_hltHB =
new std::vector<int>();
1080 t_irun =
new std::vector<unsigned int>();
1081 t_ievt =
new std::vector<unsigned int>();
1082 t_ilum =
new std::vector<unsigned int>();
1230 std::cout <<
"Number of Events Processed " <<
nEVT <<
" failed L1 "
1239 hRawPt =
fs->
make<TH1F>(
"hRawPt ",
"hRawPt ", 100, 0.0, 100.0);
1240 hRawP =
fs->
make<TH1F>(
"hRawP ",
"hRawP ", 100, 0.0, 100.0);
1241 hRawEta =
fs->
make<TH1F>(
"hRawEta",
"hRawEta", 15, 0.0, 3.0);
1242 hRawPhi =
fs->
make<TH1F>(
"hRawPhi",
"hRawPhi", 100, -3.2, 3.2);
1248 ntp->Branch(
"nEVT" , &
nEVT ,
"nEVT/I" );
1252 ntp->Branch(
"nTRK", &
nTRK,
"nTRK/I");
1253 ntp->Branch(
"nRawTRK" , &
nRawTRK ,
"nRawTRK/I" );
1255 ntp->Branch(
"nFailPt" , &
nFailPt ,
"nFailPt/I" );
1256 ntp->Branch(
"nFailEta" , &
nFailEta ,
"nFailEta/I" );
1276 ntp->Branch(
"trkP" ,
"vector<double>", &
t_trkP );
1277 ntp->Branch(
"trkPt" ,
"vector<double>", &
t_trkPt );
1278 ntp->Branch(
"trkEta" ,
"vector<double>", &
t_trkEta );
1279 ntp->Branch(
"trkPhi" ,
"vector<double>", &
t_trkPhi );
1280 ntp->Branch(
"e3x3" ,
"vector<double>", &
t_e3x3 );
1282 ntp->Branch(
"e3x3" ,
"vector<double>" , &
t_e3x3 );
1283 ntp->Branch(
"v_eDR" ,
"vector<vector<double> >", &
t_v_eDR);
1284 ntp->Branch(
"v_eMipDR" ,
"vector<vector<double> >", &
t_v_eMipDR);
1286 ntp->Branch(
"h3x3" ,
"vector<double>", &
t_h3x3 );
1287 ntp->Branch(
"h5x5" ,
"vector<double>", &
t_h5x5 );
1292 ntp->Branch(
"simP" ,
"vector<double>", &
t_simP );
1293 ntp->Branch(
"hsim3x3" ,
"vector<double>", &
t_hsim3x3 );
1294 ntp->Branch(
"hsim5x5" ,
"vector<double>", &
t_hsim5x5 );
1355 ntp->Branch(
"v_hCone" ,
"vector<vector<double> >",&
t_v_hCone );
1377 ntp->Branch(
"v_hltHB" ,
"vector<int>",&
t_hltHB);
1378 ntp->Branch(
"v_hltHE" ,
"vector<int>",&
t_hltHE);
1394 ntp->Branch(
"irun" ,
"vector<unsigned int>", &
t_irun);
1395 ntp->Branch(
"ievt" ,
"vector<unsigned int>", &
t_ievt);
1396 ntp->Branch(
"ilum" ,
"vector<unsigned int>", &
t_ilum);
1407 <<
" TrackMmentum " << pTrack->
momentum()
1408 <<
" (pt,eta,phi)(" << pTrack->
pt()<<
","<<pTrack->
eta()<<
","<<pTrack->
phi()<<
")"
1409 <<
" p " << pTrack->
p() <<
"\n"
1412 <<
" d0 " << pTrack->
d0() <<
"\n"
1414 <<
" TrackQuality " << pTrack->
qualityName(trackQuality_) <<
" " << pTrack->
quality(trackQuality_)
1431 double pi = 3.141592654;
1432 double twopi = 6.283185307;
1436 if (diff < pi){
return diff;}
else {
return corr;}
1441 double eta2,
double phi2) {
1442 double deta = eta1 - eta2;
1443 double dphi =
DeltaPhi(phi1, phi2);
1444 return std::sqrt(deta*deta + dphi*dphi);
std::vector< int > * t_hsim5x5NTotal
edm::EDGetTokenT< l1extra::L1JetParticleCollection > tok_L1extFwdJet_
std::vector< std::vector< double > > * t_v_distFromHotCell
double qoverp() const
q / p
std::vector< double > * t_hsim5x5CharHad
double p() const
momentum vector magnitude
T getParameter(std::string const &) const
const CaloSubdetectorGeometry * getSubdetectorGeometry(const DetId &id) const
access the subdetector geometry for the given subdetector directly
EventNumber_t event() const
std::vector< std::vector< double > > * t_v_hmaxNearP_goodTrk
T getUntrackedParameter(std::string const &, T const &) const
std::vector< std::vector< int > > * t_v_hlTriggers
const Point & referencePoint() const
Reference point on the track.
std::vector< double > * t_trkEcalEne
virtual edm::TriggerNames const & triggerNames(edm::TriggerResults const &triggerResults) const
std::vector< std::vector< double > > * t_v_hsimCone
TrackAssociatorParameters parameters_
static std::string qualityName(TrackQuality)
std::vector< int > * t_hltJet30
edm::EDGetTokenT< edm::SimTrackContainer > tok_simTk_
double getDistInPlaneTrackDir(const GlobalPoint &caloPoint, const GlobalVector &caloVector, const GlobalPoint &rechitPoint, bool debug=false)
std::vector< double > * t_trkPt
std::vector< int > * t_ietaFromHotCell_h5x5
void eCaloSimInfo(std::vector< DetId > vdets, const CaloGeometry *geo, edm::Handle< T > &hitsEB, edm::Handle< T > &hitsEE, edm::Handle< edm::SimTrackContainer > &SimTk, edm::Handle< edm::SimVertexContainer > &SimVtx, edm::SimTrackContainer::const_iterator trkInfo, caloSimInfo &info, double timeCut=150, bool debug=false)
std::vector< double > * t_nRH_h3x3
std::vector< double > * t_distFromHotCell_h3x3
edm::EDGetTokenT< HBHERecHitCollection > tok_hbhe_
std::vector< std::vector< int > > * t_v_hsimInfoConeNCharHad
std::vector< int > * t_hsim5x5NNeutHad
edm::EDGetTokenT< EcalRecHitCollection > tok_EE_
std::vector< double > * t_hsim5x5Photon
double d0() const
dxy parameter in perigee convention (d0 = -dxy)
std::vector< int > * t_hltMinBiasHcal
std::vector< std::vector< double > > * t_v_cone_hmaxNearP_goodTrk
std::vector< double > * t_hsim3x3CharHad
std::vector< int > * t_hsim5x5NPhoton
std::vector< std::vector< double > > * t_v_RH_r44_ene
std::map< std::string, double > eHCALSimInfo(const edm::Event &, const HcalTopology *topology, const DetId &det, const CaloGeometry *geo, edm::Handle< T > &hits, edm::Handle< edm::SimTrackContainer > &SimTk, edm::Handle< edm::SimVertexContainer > &SimVtx, const reco::Track *pTrack, TrackerHitAssociator &associate, int ieta, int iphi, double timeCut=150, bool includeHO=false, bool debug=false)
std::vector< int > * t_iphiFromHotCell_h3x3
double normalizedChi2() const
chi-squared divided by n.d.o.f. (or chi-squared * 1e6 if n.d.o.f. is zero)
std::vector< std::vector< int > > * t_v_cone_hnLayers_maxNearP
std::vector< double > * t_hsim5x5PdgMatched
bool getByToken(EDGetToken token, Handle< PROD > &result) const
std::vector< double > * t_hsim3x3NeutHad
std::vector< double > * t_nRH_h5x5
TrackQuality
track quality
#define DEFINE_FWK_MODULE(type)
static FreeTrajectoryState getFreeTrajectoryState(const edm::EventSetup &, const reco::Track &)
get FreeTrajectoryState from different track representations
std::vector< std::vector< int > > * t_v_hnLayers_maxNearP
std::vector< int > * t_hltHB
edm::EDGetTokenT< edm::TriggerResults > tok_trigger_
std::vector< std::vector< double > > * t_v_hmaxNearP
std::vector< std::vector< double > > * t_v_RH_h3x3_ene
void useDefaultPropagator()
use the default propagator
edm::EDGetTokenT< reco::TrackCollection > tok_genTrack_
std::vector< int > * t_hsim5x5NCharHad
void loadParameters(const edm::ParameterSet &, edm::ConsumesCollector &)
std::vector< std::vector< int > > * t_v_hsimInfoConeNNeutHad
std::vector< std::vector< int > > * t_v_nRecHitsCone
double phi() const
azimuthal angle of momentum vector
std::vector< std::vector< int > > * t_v_hsimInfoConeNMatched
unsigned short numberOfLostHits() const
number of cases where track crossed a layer without getting a hit.
T * make(const Args &...args) const
make new ROOT object
std::vector< double > * t_trkP
std::vector< int > * t_hltL1SingleEG5
std::vector< int > * t_hsim5x5NRest
std::vector< double > * t_hsim5x5NeutHad
std::vector< int > * t_hltJet50
const Vector & momentum() const
track momentum vector
std::vector< std::vector< double > > * t_v_cone_hmaxNearP
std::vector< double > * t_simP
int trackerLayersWithMeasurement() const
std::vector< int > * t_hsim3x3NCharHad
std::vector< std::vector< int > > * t_v_iphiFromHotCell
std::vector< std::vector< int > > * t_v_hnNearTRKs
std::vector< std::vector< int > > * t_v_cone_htrkQual_maxNearP
math::XYZPoint trkGlobPosAtHcal
std::vector< std::vector< double > > * t_v_RH_r26_ene
LuminosityBlockNumber_t luminosityBlock() const
uint32_t rawId() const
get the raw id
std::vector< int > * t_hltDoubleLooseIsoTau15_Trk5
double eHCALmatrix(const HcalTopology *topology, const DetId &det, edm::Handle< T > &hits, int ieta, int iphi, bool includeHO=false, bool algoNew=true, double hbThr=-100, double heThr=-100, double hfThr=-100, double hoThr=-100, double tMin=-500, double tMax=500, bool debug=false)
void printHitPattern(HitCategory category, int position, std::ostream &stream) const
edm::EDGetTokenT< l1extra::L1JetParticleCollection > tok_L1extTauJet_
std::vector< int > * t_hltJet140
double eta() const
pseudorapidity of momentum vector
std::vector< int > * t_hltMinBiasPixel
std::vector< double > * t_trkPhi
std::vector< double > * t_hsim3x3Total
edm::EDGetTokenT< edm::PCaloHitContainer > tok_caloEB_
std::vector< int > * t_hltHE
ConsumesCollector consumesCollector()
Use a ConsumesCollector to gather consumes information from helper functions.
std::vector< std::vector< int > > * t_v_RH_h3x3_iphi
std::vector< int > * t_iphiFromHotCell_h5x5
std::vector< std::vector< double > > * t_v_hsimInfoConePdgMatched
double pt() const
track transverse momentum
std::vector< std::vector< int > > * t_v_htrkQual_maxNearP
std::vector< int > * t_hltMinBiasEcal
std::vector< std::vector< int > > * t_v_RH_r44_iphi
std::vector< double > * t_hsim5x5Matched
std::vector< std::vector< double > > * t_v_hsimInfoConeTotal
Abs< T >::type abs(const T &t)
edm::EDGetTokenT< EcalRecHitCollection > tok_EB_
std::vector< std::vector< double > > * t_v_RH_h5x5_ene
double eCone_ecal(const CaloGeometry *geo, edm::Handle< T > &barrelhits, edm::Handle< T > &endcaphits, const GlobalPoint &hpoint1, const GlobalPoint &point1, double dR, const GlobalVector &trackMom, int &nRecHits, double ebThr=-100, double eeThr=-100, double tMin=-500, double tMax=500, bool debug=false)
double DeltaPhi(double v1, double v2)
std::vector< std::vector< int > > * t_v_hsimInfoConeNRest
LuminosityBlock const & getLuminosityBlock() const
edm::SimTrackContainer::const_iterator matchedSimTrack(const edm::Event &iEvent, edm::Handle< edm::SimTrackContainer > &SimTk, edm::Handle< edm::SimVertexContainer > &SimVtx, const reco::Track *pTrack, TrackerHitAssociator &associate, bool debug=false)
unsigned short numberOfValidHits() const
number of valid hits found
std::vector< std::vector< double > > * t_v_hsimInfoConeCharHad
static std::string const triggerResults
std::vector< double > * t_hsim5x5Total
std::vector< double > * t_hsim3x3Photon
std::vector< double > * t_hsim3x3PdgMatched
std::vector< std::vector< int > > * t_v_ietaFromHotCell
std::vector< double > * t_hsim5x5Rest
std::vector< int > * t_hltJet110
std::vector< std::vector< double > > * t_v_eMipDR
std::vector< int > * t_hltL1Jet15
double qoverpError() const
error on signed transverse curvature
virtual DetId getClosestCell(const GlobalPoint &r) const
std::vector< int > * t_hsim3x3NRest
std::vector< std::vector< double > > * t_v_hsimInfoConeRest
std::vector< std::vector< int > > * t_v_hsimInfoConeNPhoton
std::vector< std::vector< int > > * t_v_RH_r26_ieta
std::vector< double > * t_dtFromLeadJet
std::vector< std::vector< int > > * t_v_RH_h5x5_ieta
std::vector< std::vector< int > > * t_v_RH_h3x3_ieta
std::vector< unsigned int > * t_ievt
std::vector< double > * t_trkNLayersCrossed
edm::EDGetTokenT< l1extra::L1JetParticleCollection > tok_L1extCenJet_
static TrackQuality qualityByName(const std::string &name)
std::vector< std::vector< double > > * t_v_hsimInfoConeNeutHad
std::vector< std::vector< int > > * t_v_nSimHitsCone
std::vector< int > * t_hltSingleIsoTau30_Trk5
std::vector< double > * t_hsim5x5
T const * product() const
GlobalVector trkMomAtEcal
double eCone_hcal(const CaloGeometry *geo, edm::Handle< T > &hits, const GlobalPoint &hpoint1, const GlobalPoint &point1, double dR, const GlobalVector &trackMom, int &nRecHits, double hbThr=-100, double heThr=-100, double hfThr=-100, double hoThr=-100, double tMin=-500, double tMax=500, int detOnly=-1, bool debug=false)
const HitPattern & hitPattern() const
Access the hit pattern, indicating in which Tracker layers the track has hits.
std::string const & triggerName(unsigned int index) const
std::vector< std::vector< int > > * t_v_RH_h5x5_iphi
T const * product() const
IsolatedTracksCone(const edm::ParameterSet &)
std::vector< std::vector< int > > * t_v_hsimInfoConeNTotal
std::vector< double > * t_hsim3x3Matched
bool quality(const TrackQuality) const
Track quality.
std::vector< int > * t_hsim3x3NNeutHad
virtual void analyze(const edm::Event &, const edm::EventSetup &)
edm::Service< TFileService > fs
GlobalVector trkMomAtHcal
edm::EDGetTokenT< edm::SimVertexContainer > tok_simVtx_
std::vector< int > * t_hltZeroBias
std::vector< double > * t_h5x5
std::vector< double > * t_trkNOuterHits
std::vector< std::vector< double > > * t_v_hCone
std::vector< int > * t_hsim3x3NPhoton
std::vector< double > * t_hsim3x3Rest
std::vector< double > * t_hsim3x3
std::vector< int > * t_hsim3x3NMatched
std::vector< std::vector< int > > * t_v_RH_r44_ieta
std::vector< double > * t_trkHcalEne
std::vector< unsigned int > * t_irun
std::vector< int > * t_hltJet180
std::vector< int > * t_hsim3x3NTotal
TrackDetMatchInfo associate(const edm::Event &, const edm::EventSetup &, const FreeTrajectoryState &, const AssociatorParameters &)
void printTrack(const reco::Track *pTrack)
std::vector< int > * t_ietaFromHotCell_h3x3
math::XYZPoint trkGlobPosAtEcal
Track position at different parts of the calorimeter.
int charge() const
track electric charge
std::vector< double > * t_distFromHotCell_h5x5
edm::EDGetTokenT< edm::PCaloHitContainer > tok_caloHH_
std::vector< double > * t_e3x3
double DeltaR(double eta1, double phi1, double eta2, double phi2)
std::vector< double > * t_trkEta
std::vector< double > * t_h3x3
double coneChargeIsolation(const edm::Event &iEvent, const edm::EventSetup &iSetup, reco::TrackCollection::const_iterator trkItr, edm::Handle< reco::TrackCollection > trkCollection, TrackDetectorAssociator &associator, TrackAssociatorParameters ¶meters_, std::string theTrackQuality, int &nNearTRKs, int &nLayers_maxNearP, int &trkQual_maxNearP, double &maxNearP_goodTrk, const GlobalPoint &hpoint1, const GlobalVector &trackMom, double dR)
std::vector< std::vector< double > > * t_v_hsimInfoConePhoton
std::vector< unsigned int > * t_ilum
edm::EDGetTokenT< edm::PCaloHitContainer > tok_caloEE_
TrackDetectorAssociator * trackAssociator_
std::vector< int > * t_hltJet80
std::vector< std::vector< double > > * t_v_eDR
std::vector< std::vector< double > > * t_v_hsimInfoConeMatched
std::vector< std::vector< int > > * t_v_RH_r26_iphi
int numberOfHits(HitCategory category) const
std::vector< int > * t_hsim5x5NMatched
std::vector< std::vector< int > > * t_v_cone_hnNearTRKs
double eECALmatrix(const DetId &detId, edm::Handle< T > &hitsEB, edm::Handle< T > &hitsEE, const CaloGeometry *geo, const CaloTopology *caloTopology, int ieta, int iphi, double ebThr=-100, double eeThr=-100, double tMin=-500, double tMax=500, bool debug=false)