CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Member Functions | Private Attributes
TrackBuildingAnalyzer Class Reference

#include <TrackBuildingAnalyzer.h>

Public Types

typedef dqm::legacy::DQMStore DQMStore
 
typedef dqm::legacy::MonitorElement MonitorElement
 
using MVACollection = std::vector< float >
 
using QualityMaskCollection = std::vector< unsigned char >
 

Public Member Functions

void analyze (const edm::Event &iEvent, const edm::EventSetup &iSetup, const TrackCandidate &candidate, const reco::BeamSpot &bs, const MagneticField &theMF, const TransientTrackingRecHitBuilder &theTTRHBuilder)
 
void analyze (const edm::Event &iEvent, const edm::EventSetup &iSetup, const TrajectorySeed &seed, const SeedStopInfo &stopInfo, const reco::BeamSpot &bs, const MagneticField &theMF, const TransientTrackingRecHitBuilder &theTTRHBuilder)
 
void analyze (const edm::OwnVector< TrackingRegion > &regions)
 
void analyze (const edm::View< reco::Track > &trackCollection, const std::vector< const MVACollection * > &mvaCollections, const std::vector< const QualityMaskCollection * > &qualityMaskCollections)
 
void analyze (const reco::CandidateView &regionCandidates)
 
void analyze (const TrackingRegionsSeedingLayerSets &regions)
 
void initHisto (DQMStore::IBooker &ibooker, const edm::ParameterSet &)
 
 TrackBuildingAnalyzer (const edm::ParameterSet &)
 
 ~TrackBuildingAnalyzer ()=default
 

Private Member Functions

template<typename T >
void analyzeRegions (const T &regions)
 
void bookHistos (std::string sname, DQMStore::IBooker &ibooker)
 
void fillHistos (const edm::EventSetup &iSetup, const reco::Track &track, std::string sname)
 

Private Attributes

const bool doAllPlots
 
const bool doAllSeedPlots
 
const bool doAllTCPlots
 
const bool doDxy
 
const bool doDz
 
const bool doETA
 
const bool doMVAPlots
 
const bool doNRecHits
 
const bool doPHI
 
const bool doPHIVsETA
 
const bool doProfETA
 
const bool doProfPHI
 
const bool doPT
 
const bool doQ
 
const bool doRegionCandidatePlots
 
const bool doRegionPlots
 
const bool doStopSource
 
const bool doTCPlots
 
const bool doTheta
 
double etaBinWidth = 0.
 
std::string histname
 
MonitorElementNumberOfRecHitsPerSeed = nullptr
 
MonitorElementNumberOfRecHitsPerSeedVsEtaProfile = nullptr
 
MonitorElementNumberOfRecHitsPerSeedVsPhiProfile = nullptr
 
MonitorElementNumberOfRecHitsPerTrackCand = nullptr
 
MonitorElementNumberOfRecHitsPerTrackCandVsEtaProfile = nullptr
 
MonitorElementNumberOfRecHitsPerTrackCandVsPhiProfile = nullptr
 
MonitorElementnumberOfTrajCandsPerSeed = nullptr
 
MonitorElementnumberOfTrajCandsPerSeedVsEta = nullptr
 
MonitorElementnumberOfTrajCandsPerSeedVsPhi = nullptr
 
double phiBinWidth = 0.
 
MonitorElementSeedDxy = nullptr
 
MonitorElementSeedDz = nullptr
 
MonitorElementSeedEta = nullptr
 
MonitorElementSeedPhi = nullptr
 
MonitorElementSeedPhiVsEta = nullptr
 
MonitorElementSeedPt = nullptr
 
MonitorElementSeedQ = nullptr
 
MonitorElementseedStoppingSource = nullptr
 
MonitorElementseedStoppingSourceVsEta = nullptr
 
MonitorElementseedStoppingSourceVsNumberOfTrajCandsPerSeed = nullptr
 
MonitorElementseedStoppingSourceVsPhi = nullptr
 
MonitorElementSeedTheta = nullptr
 
MonitorElementstoppingSource = nullptr
 
MonitorElementstoppingSourceVSeta = nullptr
 
MonitorElementstoppingSourceVSphi = nullptr
 
MonitorElementTrackCandDxy = nullptr
 
MonitorElementTrackCandDz = nullptr
 
MonitorElementTrackCandEta = nullptr
 
MonitorElementTrackCandPhi = nullptr
 
MonitorElementTrackCandPhiVsEta = nullptr
 
MonitorElementTrackCandPt = nullptr
 
MonitorElementTrackCandQ = nullptr
 
MonitorElementTrackCandTheta = nullptr
 
MonitorElementTrackingRegionCandidateEta = nullptr
 
MonitorElementTrackingRegionCandidatePhi = nullptr
 
MonitorElementTrackingRegionCandidatePhiVsEta = nullptr
 
MonitorElementTrackingRegionCandidatePt = nullptr
 
MonitorElementTrackingRegionEta = nullptr
 
MonitorElementTrackingRegionPhi = nullptr
 
MonitorElementTrackingRegionPhiVsEta = nullptr
 
std::vector< MonitorElement * > trackMVAs
 
std::vector< MonitorElement * > trackMVAsHP
 
std::vector< MonitorElement * > trackMVAsHPVsEtaProfile
 
std::vector< MonitorElement * > trackMVAsHPVsPtProfile
 
std::vector< MonitorElement * > trackMVAsVsEtaProfile
 
std::vector< MonitorElement * > trackMVAsVsPtProfile
 

Detailed Description

Monitoring source for general quantities related to tracks.

Definition at line 36 of file TrackBuildingAnalyzer.h.

Member Typedef Documentation

◆ DQMStore

Definition at line 38 of file TrackBuildingAnalyzer.h.

◆ MonitorElement

Definition at line 39 of file TrackBuildingAnalyzer.h.

◆ MVACollection

using TrackBuildingAnalyzer::MVACollection = std::vector<float>

Definition at line 40 of file TrackBuildingAnalyzer.h.

◆ QualityMaskCollection

using TrackBuildingAnalyzer::QualityMaskCollection = std::vector<unsigned char>

Definition at line 41 of file TrackBuildingAnalyzer.h.

Constructor & Destructor Documentation

◆ TrackBuildingAnalyzer()

TrackBuildingAnalyzer::TrackBuildingAnalyzer ( const edm::ParameterSet iConfig)

Definition at line 25 of file TrackBuildingAnalyzer.cc.

26  : doAllPlots(iConfig.getParameter<bool>("doAllPlots")),
27  doAllSeedPlots(iConfig.getParameter<bool>("doSeedParameterHistos")),
28  doTCPlots(iConfig.getParameter<bool>("doTrackCandHistos")),
29  doAllTCPlots(iConfig.getParameter<bool>("doAllTrackCandHistos")),
30  doPT(iConfig.getParameter<bool>("doSeedPTHisto")),
31  doETA(iConfig.getParameter<bool>("doSeedETAHisto")),
32  doPHI(iConfig.getParameter<bool>("doSeedPHIHisto")),
33  doPHIVsETA(iConfig.getParameter<bool>("doSeedPHIVsETAHisto")),
34  doTheta(iConfig.getParameter<bool>("doSeedThetaHisto")),
35  doQ(iConfig.getParameter<bool>("doSeedQHisto")),
36  doDxy(iConfig.getParameter<bool>("doSeedDxyHisto")),
37  doDz(iConfig.getParameter<bool>("doSeedDzHisto")),
38  doNRecHits(iConfig.getParameter<bool>("doSeedNRecHitsHisto")),
39  doProfPHI(iConfig.getParameter<bool>("doSeedNVsPhiProf")),
40  doProfETA(iConfig.getParameter<bool>("doSeedNVsEtaProf")),
41  doStopSource(iConfig.getParameter<bool>("doStopSource")),
42  doMVAPlots(iConfig.getParameter<bool>("doMVAPlots")),
43  doRegionPlots(iConfig.getParameter<bool>("doRegionPlots")),
44  doRegionCandidatePlots(iConfig.getParameter<bool>("doRegionCandidatePlots")) {}

◆ ~TrackBuildingAnalyzer()

TrackBuildingAnalyzer::~TrackBuildingAnalyzer ( )
default

Member Function Documentation

◆ analyze() [1/6]

void TrackBuildingAnalyzer::analyze ( const edm::Event iEvent,
const edm::EventSetup iSetup,
const TrackCandidate candidate,
const reco::BeamSpot bs,
const MagneticField theMF,
const TransientTrackingRecHitBuilder theTTRHBuilder 
)

Definition at line 572 of file TrackBuildingAnalyzer.cc.

577  {
578  TSCBLBuilderNoMaterial tscblBuilder;
579 
580  //get parameters and errors from the candidate state
581  auto const& theG = ((TkTransientTrackingRecHitBuilder const*)(&theTTRHBuilder))->geometry();
582  auto const& candSS = candidate.trajectoryStateOnDet();
584  trajectoryStateTransform::transientState(candSS, &(theG->idToDet(candSS.detId())->surface()), &theMF);
585  TrajectoryStateClosestToBeamLine tsAtClosestApproachTrackCand =
586  tscblBuilder(*state.freeState(), bs); //as in TrackProducerAlgorithm
587  if (!(tsAtClosestApproachTrackCand.isValid())) {
588  edm::LogVerbatim("TrackBuilding") << "TrajectoryStateClosestToBeamLine not valid";
589  return;
590  }
591  GlobalPoint v0 = tsAtClosestApproachTrackCand.trackStateAtPCA().position();
592  GlobalVector p = tsAtClosestApproachTrackCand.trackStateAtPCA().momentum();
593  GlobalPoint v(v0.x() - bs.x0(), v0.y() - bs.y0(), v0.z() - bs.z0());
594 
595  double pt = sqrt(state.globalMomentum().perp2());
596  double eta = state.globalPosition().eta();
597  double phi = state.globalPosition().phi();
598  double theta = state.globalPosition().theta();
599  //double pm = sqrt(state.globalMomentum().mag2());
600  //double pz = state.globalMomentum().z();
601  //double qoverp = tsAtClosestApproachTrackCand.trackStateAtPCA().charge()/p.mag();
602  //double theta = p.theta();
603  //double lambda = M_PI/2-p.theta();
604  double numberOfHits = candidate.recHits().second - candidate.recHits().first;
605  double dxy = (-v.x() * sin(p.phi()) + v.y() * cos(p.phi()));
606 
607  double dz = v.z() - (v.x() * p.x() + v.y() * p.y()) / p.perp() * p.z() / p.perp();
608 
609  if (doAllTCPlots || doStopSource) {
610  // stopping source
611  int max = stoppingSource->getNbinsX();
612  double stop = candidate.stopReason() > max ? double(max - 1) : static_cast<double>(candidate.stopReason());
613  double stopped = int(StopReason::NOT_STOPPED) == candidate.stopReason() ? 0. : 1.;
614  stoppingSource->Fill(stop);
615  stoppingSourceVSeta->Fill(eta, stopped);
616  stoppingSourceVSphi->Fill(phi, stopped);
617  }
618 
619  if (doTCPlots) {
620  // fill the ME's
621  if (doAllTCPlots)
622  TrackCandQ->Fill(state.charge());
623  TrackCandPt->Fill(pt);
627  if (doTheta)
629  if (doAllTCPlots)
631  if (doAllTCPlots)
632  TrackCandDz->Fill(dz);
633  if (doAllTCPlots)
634  NumberOfRecHitsPerTrackCand->Fill(numberOfHits);
635  if (doAllTCPlots)
637  if (doAllTCPlots)
639  }
640 }

References cms::cuda::bs, TrajectoryStateOnSurface::charge(), funct::cos(), doAllTCPlots, doStopSource, doTCPlots, doTheta, PVValHelper::dxy, PVValHelper::dz, PVValHelper::eta, PV3DBase< T, PVType, FrameType >::eta(), dqm::impl::MonitorElement::Fill(), TrajectoryStateOnSurface::freeState(), geometry, dqm::impl::MonitorElement::getNbinsX(), TrajectoryStateOnSurface::globalMomentum(), TrajectoryStateOnSurface::globalPosition(), createfilelist::int, TrajectoryStateClosestToBeamLine::isValid(), SiStripPI::max, FreeTrajectoryState::momentum(), NOT_STOPPED, NumberOfRecHitsPerTrackCand, NumberOfRecHitsPerTrackCandVsEtaProfile, NumberOfRecHitsPerTrackCandVsPhiProfile, AlCaHLTBitMon_ParallelJobs::p, PV3DBase< T, PVType, FrameType >::perp2(), phi, PV3DBase< T, PVType, FrameType >::phi(), FreeTrajectoryState::position(), DiDispStaMuonMonitor_cfi::pt, TrackCandidate::recHits(), funct::sin(), mathSSE::sqrt(), stoppingSource, stoppingSourceVSeta, stoppingSourceVSphi, TrackCandidate::stopReason(), PV3DBase< T, PVType, FrameType >::theta(), theta(), TrackCandDxy, TrackCandDz, TrackCandEta, TrackCandPhi, TrackCandPhiVsEta, TrackCandPt, TrackCandQ, TrackCandTheta, TrajectoryStateClosestToBeamLine::trackStateAtPCA(), TrackCandidate::trajectoryStateOnDet(), trajectoryStateTransform::transientState(), findQualityFiles::v, and V0Monitor_cff::v0.

◆ analyze() [2/6]

void TrackBuildingAnalyzer::analyze ( const edm::Event iEvent,
const edm::EventSetup iSetup,
const TrajectorySeed seed,
const SeedStopInfo stopInfo,
const reco::BeamSpot bs,
const MagneticField theMF,
const TransientTrackingRecHitBuilder theTTRHBuilder 
)

Definition at line 495 of file TrackBuildingAnalyzer.cc.

501  {
502  TSCBLBuilderNoMaterial tscblBuilder;
503 
504  //get parameters and errors from the candidate state
505  auto const& theG = ((TkTransientTrackingRecHitBuilder const*)(&theTTRHBuilder))->geometry();
506  auto const& candSS = candidate.startingState();
508  trajectoryStateTransform::transientState(candSS, &(theG->idToDet(candSS.detId())->surface()), &theMF);
509  TrajectoryStateClosestToBeamLine tsAtClosestApproachSeed =
510  tscblBuilder(*state.freeState(), bs); //as in TrackProducerAlgorithm
511  if (!(tsAtClosestApproachSeed.isValid())) {
512  edm::LogVerbatim("TrackBuilding") << "TrajectoryStateClosestToBeamLine not valid";
513  return;
514  }
515  GlobalPoint v0 = tsAtClosestApproachSeed.trackStateAtPCA().position();
516  GlobalVector p = tsAtClosestApproachSeed.trackStateAtPCA().momentum();
517  GlobalPoint v(v0.x() - bs.x0(), v0.y() - bs.y0(), v0.z() - bs.z0());
518 
519  double pt = sqrt(state.globalMomentum().perp2());
520  double eta = state.globalPosition().eta();
521  double phi = state.globalPosition().phi();
522  double theta = state.globalPosition().theta();
523  //double pm = sqrt(state.globalMomentum().mag2());
524  //double pz = state.globalMomentum().z();
525  //double qoverp = tsAtClosestApproachSeed.trackStateAtPCA().charge()/p.mag();
526  //double theta = p.theta();
527  //double lambda = M_PI/2-p.theta();
528  double numberOfHits = candidate.recHits().second - candidate.recHits().first;
529  double dxy = (-v.x() * sin(p.phi()) + v.y() * cos(p.phi()));
530  double dz = v.z() - (v.x() * p.x() + v.y() * p.y()) / p.perp() * p.z() / p.perp();
531 
532  // fill the ME's
533  if (doAllSeedPlots || doQ)
534  SeedQ->Fill(state.charge());
535  if (doAllSeedPlots || doPT)
536  SeedPt->Fill(pt);
537  if (doAllSeedPlots || doETA)
538  SeedEta->Fill(eta);
539  if (doAllSeedPlots || doPHI)
540  SeedPhi->Fill(phi);
541  if (doAllSeedPlots || doPHIVsETA)
543  if (doAllSeedPlots || doTheta)
544  SeedTheta->Fill(theta);
545  if (doAllSeedPlots || doDxy)
546  SeedDxy->Fill(dxy);
547  if (doAllSeedPlots || doDz)
548  SeedDz->Fill(dz);
549  if (doAllSeedPlots || doNRecHits)
550  NumberOfRecHitsPerSeed->Fill(numberOfHits);
551  if (doAllSeedPlots || doProfETA)
553  if (doAllSeedPlots || doProfPHI)
555  if (doAllSeedPlots || doStopSource) {
556  const double stopped = stopInfo.stopReason() == SeedStopReason::NOT_STOPPED ? 0. : 1.;
557  seedStoppingSource->Fill(stopInfo.stopReasonUC());
558  seedStoppingSourceVsPhi->Fill(phi, stopped);
559  seedStoppingSourceVsEta->Fill(eta, stopped);
560 
561  const auto ncands = stopInfo.candidatesPerSeed();
565 
567  }
568 }

References cms::cuda::bs, SeedStopInfo::candidatesPerSeed(), TrajectoryStateOnSurface::charge(), funct::cos(), doAllSeedPlots, doDxy, doDz, doETA, doNRecHits, doPHI, doPHIVsETA, doProfETA, doProfPHI, doPT, doQ, doStopSource, doTheta, PVValHelper::dxy, PVValHelper::dz, PVValHelper::eta, PV3DBase< T, PVType, FrameType >::eta(), dqm::impl::MonitorElement::Fill(), TrajectoryStateOnSurface::freeState(), geometry, TrajectoryStateOnSurface::globalMomentum(), TrajectoryStateOnSurface::globalPosition(), TrajectoryStateClosestToBeamLine::isValid(), FreeTrajectoryState::momentum(), NOT_STOPPED, NumberOfRecHitsPerSeed, NumberOfRecHitsPerSeedVsEtaProfile, NumberOfRecHitsPerSeedVsPhiProfile, numberOfTrajCandsPerSeed, numberOfTrajCandsPerSeedVsEta, numberOfTrajCandsPerSeedVsPhi, AlCaHLTBitMon_ParallelJobs::p, PV3DBase< T, PVType, FrameType >::perp2(), phi, PV3DBase< T, PVType, FrameType >::phi(), FreeTrajectoryState::position(), DiDispStaMuonMonitor_cfi::pt, TrajectorySeed::recHits(), SeedDxy, SeedDz, SeedEta, SeedPhi, SeedPhiVsEta, SeedPt, SeedQ, seedStoppingSource, seedStoppingSourceVsEta, seedStoppingSourceVsNumberOfTrajCandsPerSeed, seedStoppingSourceVsPhi, SeedTheta, funct::sin(), mathSSE::sqrt(), TrajectorySeed::startingState(), SeedStopInfo::stopReason(), SeedStopInfo::stopReasonUC(), PV3DBase< T, PVType, FrameType >::theta(), theta(), TrajectoryStateClosestToBeamLine::trackStateAtPCA(), trajectoryStateTransform::transientState(), findQualityFiles::v, and V0Monitor_cff::v0.

Referenced by TrackingMonitor::analyze().

◆ analyze() [3/6]

void TrackBuildingAnalyzer::analyze ( const edm::OwnVector< TrackingRegion > &  regions)

Definition at line 720 of file TrackBuildingAnalyzer.cc.

References analyzeRegions().

◆ analyze() [4/6]

void TrackBuildingAnalyzer::analyze ( const edm::View< reco::Track > &  trackCollection,
const std::vector< const MVACollection * > &  mvaCollections,
const std::vector< const QualityMaskCollection * > &  qualityMaskCollections 
)

Definition at line 645 of file TrackBuildingAnalyzer.cc.

647  {
648  if (!(doAllTCPlots || doMVAPlots))
649  return;
650  if (trackCollection.empty())
651  return;
652 
653  const auto ntracks = trackCollection.size();
654  const auto nmva = mvaCollections.size();
655  for (const auto mva : mvaCollections) {
656  if (mva->size() != ntracks) {
657  edm::LogError("LogicError") << "TrackBuildingAnalyzer: Incompatible size of MVACollection, " << mva->size()
658  << " differs from the size of the track collection " << ntracks;
659  return;
660  }
661  }
662  for (const auto qual : qualityMaskCollections) {
663  if (qual->size() != ntracks) {
664  edm::LogError("LogicError") << "TrackBuildingAnalyzer: Incompatible size of QualityMaskCollection, "
665  << qual->size() << " differs from the size of the track collection " << ntracks;
666  return;
667  }
668  }
669 
670  for (size_t iTrack = 0; iTrack < ntracks; ++iTrack) {
671  // Fill MVA1 histos with all tracks, MVA2 histos only with tracks
672  // not selected by MVA1 etc
673  bool selectedLoose = false;
674  bool selectedHP = false;
675 
676  const auto pt = trackCollection[iTrack].pt();
677  const auto eta = trackCollection[iTrack].eta();
678 
679  for (size_t iMVA = 0; iMVA < nmva; ++iMVA) {
680  const auto mva = (*(mvaCollections[iMVA]))[iTrack];
681  if (!selectedLoose) {
682  trackMVAs[iMVA]->Fill(mva);
683  trackMVAsVsPtProfile[iMVA]->Fill(pt, mva);
684  trackMVAsVsEtaProfile[iMVA]->Fill(eta, mva);
685  }
686  if (iMVA >= 1 && !selectedHP) {
687  trackMVAsHP[iMVA]->Fill(mva);
688  trackMVAsHPVsPtProfile[iMVA]->Fill(pt, mva);
689  trackMVAsHPVsEtaProfile[iMVA]->Fill(eta, mva);
690  }
691 
692  const auto qual = (*(qualityMaskCollections)[iMVA])[iTrack];
693  selectedLoose |= trackSelected(qual, reco::TrackBase::loose);
694  selectedHP |= trackSelected(qual, reco::TrackBase::highPurity);
695 
696  if (selectedLoose && selectedHP)
697  break;
698  }
699  }
700 }

References doAllTCPlots, doMVAPlots, PVValHelper::eta, reco::TrackBase::highPurity, reco::TrackBase::loose, beam_dqm_sourceclient-live_cfg::mva, DiDispStaMuonMonitor_cfi::pt, duplicaterechits_cfi::trackCollection, trackMVAs, trackMVAsHP, trackMVAsHPVsEtaProfile, trackMVAsHPVsPtProfile, trackMVAsVsEtaProfile, and trackMVAsVsPtProfile.

◆ analyze() [5/6]

void TrackBuildingAnalyzer::analyze ( const reco::CandidateView regionCandidates)

Definition at line 702 of file TrackBuildingAnalyzer.cc.

702  {
704  return;
705 
706  for (const auto& candidate : regionCandidates) {
707  const auto eta = candidate.eta();
708  const auto phi = candidate.phi();
709  if (doAllSeedPlots || doPT)
710  TrackingRegionCandidatePt->Fill(candidate.pt());
711  if (doAllSeedPlots || doETA)
713  if (doAllSeedPlots || doPHI)
715  if (doAllSeedPlots || doPHIVsETA)
717  }
718 }

References doAllSeedPlots, doETA, doPHI, doPHIVsETA, doPT, doRegionCandidatePlots, doRegionPlots, PVValHelper::eta, dqm::impl::MonitorElement::Fill(), phi, TrackingRegionCandidateEta, TrackingRegionCandidatePhi, TrackingRegionCandidatePhiVsEta, and TrackingRegionCandidatePt.

◆ analyze() [6/6]

void TrackBuildingAnalyzer::analyze ( const TrackingRegionsSeedingLayerSets regions)

Definition at line 721 of file TrackBuildingAnalyzer.cc.

References analyzeRegions().

◆ analyzeRegions()

template<typename T >
void TrackBuildingAnalyzer::analyzeRegions ( const T regions)
private

Definition at line 731 of file TrackBuildingAnalyzer.cc.

731  {
732  if (!doRegionPlots && etaBinWidth <= 0. && phiBinWidth <= 0.)
733  return;
734 
735  for (const auto& tmp : regions) {
736  if (const auto* etaPhiRegion = dynamic_cast<const RectangularEtaPhiTrackingRegion*>(regionPtr(tmp))) {
737  const auto& etaRange = etaPhiRegion->etaRange();
738  const auto& phiMargin = etaPhiRegion->phiMargin();
739 
740  const auto etaMin = etaRange.min();
741  const auto etaMax = etaRange.max();
742 
743  const auto phiMin = etaPhiRegion->phiDirection() - phiMargin.left();
744  const auto phiMax = etaPhiRegion->phiDirection() + phiMargin.right();
745 
746  if (doAllSeedPlots || doETA) {
747  for (auto eta = etaMin; eta < etaMax; eta += etaBinWidth) {
749  }
750  }
751  if (doAllSeedPlots || doPHI) {
752  for (auto phi = phiMin; phi < phiMax; phi += phiBinWidth) {
754  }
755  }
756  if (doAllSeedPlots || doPHIVsETA) {
757  for (auto phi = phiMin; phi < phiMax; phi += phiBinWidth) {
758  const auto reducedPhi = reco::reduceRange(phi);
759  for (auto eta = etaMin; eta < etaMax; eta += etaBinWidth) {
760  TrackingRegionPhiVsEta->Fill(eta, reducedPhi);
761  }
762  }
763  }
764  }
765  }
766 }

References doAllSeedPlots, doETA, doPHI, doPHIVsETA, doRegionPlots, PVValHelper::eta, etaBinWidth, ALCARECOTkAlBeamHalo_cff::etaMax, ALCARECOTkAlBeamHalo_cff::etaMin, generateTowerEtThresholdLUT::etaRange, dqm::impl::MonitorElement::Fill(), phi, phiBinWidth, AlignmentTrackSelector_cfi::phiMax, AlignmentTrackSelector_cfi::phiMin, reco::reduceRange(), createJobs::tmp, TrackingRegionEta, TrackingRegionPhi, and TrackingRegionPhiVsEta.

Referenced by analyze().

◆ bookHistos()

void TrackBuildingAnalyzer::bookHistos ( std::string  sname,
DQMStore::IBooker ibooker 
)
private

◆ fillHistos()

void TrackBuildingAnalyzer::fillHistos ( const edm::EventSetup iSetup,
const reco::Track track,
std::string  sname 
)
private

◆ initHisto()

void TrackBuildingAnalyzer::initHisto ( DQMStore::IBooker ibooker,
const edm::ParameterSet iConfig 
)

Definition at line 46 of file TrackBuildingAnalyzer.cc.

46  {
47  // parameters from the configuration
48  std::string AlgoName = iConfig.getParameter<std::string>("AlgoName");
49  std::string MEFolderName = iConfig.getParameter<std::string>("FolderName");
50 
51  // std::cout << "[TrackBuildingAnalyzer::beginRun] AlgoName: " << AlgoName << std::endl;
52 
53  // use the AlgoName and Quality Name
54  const std::string& CatagoryName = AlgoName;
55 
56  // get binning from the configuration
57  int TrackPtBin = iConfig.getParameter<int>("TrackPtBin");
58  double TrackPtMin = iConfig.getParameter<double>("TrackPtMin");
59  double TrackPtMax = iConfig.getParameter<double>("TrackPtMax");
60 
61  int PhiBin = iConfig.getParameter<int>("PhiBin");
62  double PhiMin = iConfig.getParameter<double>("PhiMin");
63  double PhiMax = iConfig.getParameter<double>("PhiMax");
64  phiBinWidth = PhiBin > 0 ? (PhiMax - PhiMin) / PhiBin : 0.;
65 
66  int EtaBin = iConfig.getParameter<int>("EtaBin");
67  double EtaMin = iConfig.getParameter<double>("EtaMin");
68  double EtaMax = iConfig.getParameter<double>("EtaMax");
69  etaBinWidth = EtaBin > 0 ? (EtaMax - EtaMin) / EtaBin : 0.;
70 
71  int ThetaBin = iConfig.getParameter<int>("ThetaBin");
72  double ThetaMin = iConfig.getParameter<double>("ThetaMin");
73  double ThetaMax = iConfig.getParameter<double>("ThetaMax");
74 
75  int TrackQBin = iConfig.getParameter<int>("TrackQBin");
76  double TrackQMin = iConfig.getParameter<double>("TrackQMin");
77  double TrackQMax = iConfig.getParameter<double>("TrackQMax");
78 
79  int SeedDxyBin = iConfig.getParameter<int>("SeedDxyBin");
80  double SeedDxyMin = iConfig.getParameter<double>("SeedDxyMin");
81  double SeedDxyMax = iConfig.getParameter<double>("SeedDxyMax");
82 
83  int SeedDzBin = iConfig.getParameter<int>("SeedDzBin");
84  double SeedDzMin = iConfig.getParameter<double>("SeedDzMin");
85  double SeedDzMax = iConfig.getParameter<double>("SeedDzMax");
86 
87  int SeedHitBin = iConfig.getParameter<int>("SeedHitBin");
88  double SeedHitMin = iConfig.getParameter<double>("SeedHitMin");
89  double SeedHitMax = iConfig.getParameter<double>("SeedHitMax");
90 
91  int TCDxyBin = iConfig.getParameter<int>("TCDxyBin");
92  double TCDxyMin = iConfig.getParameter<double>("TCDxyMin");
93  double TCDxyMax = iConfig.getParameter<double>("TCDxyMax");
94 
95  int TCDzBin = iConfig.getParameter<int>("TCDzBin");
96  double TCDzMin = iConfig.getParameter<double>("TCDzMin");
97  double TCDzMax = iConfig.getParameter<double>("TCDzMax");
98 
99  int TCHitBin = iConfig.getParameter<int>("TCHitBin");
100  double TCHitMin = iConfig.getParameter<double>("TCHitMin");
101  double TCHitMax = iConfig.getParameter<double>("TCHitMax");
102 
103  int MVABin = iConfig.getParameter<int>("MVABin");
104  double MVAMin = iConfig.getParameter<double>("MVAMin");
105  double MVAMax = iConfig.getParameter<double>("MVAMax");
106 
107  edm::InputTag seedProducer = iConfig.getParameter<edm::InputTag>("SeedProducer");
108  edm::InputTag tcProducer = iConfig.getParameter<edm::InputTag>("TCProducer");
109  std::vector<std::string> mvaProducers = iConfig.getParameter<std::vector<std::string> >("MVAProducers");
110  edm::InputTag regionProducer = iConfig.getParameter<edm::InputTag>("RegionProducer");
111 
112  // if (doAllPlots){doAllSeedPlots=true; doTCPlots=true;}
113 
114  ibooker.setCurrentFolder(MEFolderName);
115 
116  // book the Seed histograms
117  // ---------------------------------------------------------------------------------//
118  // std::cout << "[TrackBuildingAnalyzer::beginRun] MEFolderName: " << MEFolderName << std::endl;
119  ibooker.setCurrentFolder(MEFolderName + "/TrackBuilding");
120 
121  if (doAllSeedPlots || doPT) {
122  histname = "SeedPt_" + seedProducer.label() + "_";
123  SeedPt = ibooker.book1D(histname + CatagoryName, histname + CatagoryName, TrackPtBin, TrackPtMin, TrackPtMax);
124  SeedPt->setAxisTitle("Seed p_{T} (GeV/c)", 1);
125  SeedPt->setAxisTitle("Number of Seeds", 2);
126  }
127 
128  if (doAllSeedPlots || doETA) {
129  histname = "SeedEta_" + seedProducer.label() + "_";
130  SeedEta = ibooker.book1D(histname + CatagoryName, histname + CatagoryName, EtaBin, EtaMin, EtaMax);
131  SeedEta->setAxisTitle("Seed #eta", 1);
132  SeedEta->setAxisTitle("Number of Seeds", 2);
133  }
134 
135  if (doAllSeedPlots || doPHI) {
136  histname = "SeedPhi_" + seedProducer.label() + "_";
137  SeedPhi = ibooker.book1D(histname + CatagoryName, histname + CatagoryName, PhiBin, PhiMin, PhiMax);
138  SeedPhi->setAxisTitle("Seed #phi", 1);
139  SeedPhi->setAxisTitle("Number of Seed", 2);
140  }
141 
142  if (doAllSeedPlots || doPHIVsETA) {
143  histname = "SeedPhiVsEta_" + seedProducer.label() + "_";
144  SeedPhiVsEta = ibooker.book2D(
145  histname + CatagoryName, histname + CatagoryName, EtaBin, EtaMin, EtaMax, PhiBin, PhiMin, PhiMax);
146  SeedPhiVsEta->setAxisTitle("Seed #eta", 1);
147  SeedPhiVsEta->setAxisTitle("Seed #phi", 2);
148  }
149 
150  if (doAllSeedPlots || doTheta) {
151  histname = "SeedTheta_" + seedProducer.label() + "_";
152  SeedTheta = ibooker.book1D(histname + CatagoryName, histname + CatagoryName, ThetaBin, ThetaMin, ThetaMax);
153  SeedTheta->setAxisTitle("Seed #theta", 1);
154  SeedTheta->setAxisTitle("Number of Seeds", 2);
155  }
156 
157  if (doAllSeedPlots || doQ) {
158  histname = "SeedQ_" + seedProducer.label() + "_";
159  SeedQ = ibooker.book1D(histname + CatagoryName, histname + CatagoryName, TrackQBin, TrackQMin, TrackQMax);
160  SeedQ->setAxisTitle("Seed Charge", 1);
161  SeedQ->setAxisTitle("Number of Seeds", 2);
162  }
163 
164  if (doAllSeedPlots || doDxy) {
165  histname = "SeedDxy_" + seedProducer.label() + "_";
166  SeedDxy = ibooker.book1D(histname + CatagoryName, histname + CatagoryName, SeedDxyBin, SeedDxyMin, SeedDxyMax);
167  SeedDxy->setAxisTitle("Seed d_{xy} (cm)", 1);
168  SeedDxy->setAxisTitle("Number of Seeds", 2);
169  }
170 
171  if (doAllSeedPlots || doDz) {
172  histname = "SeedDz_" + seedProducer.label() + "_";
173  SeedDz = ibooker.book1D(histname + CatagoryName, histname + CatagoryName, SeedDzBin, SeedDzMin, SeedDzMax);
174  SeedDz->setAxisTitle("Seed d_{z} (cm)", 1);
175  SeedDz->setAxisTitle("Number of Seeds", 2);
176  }
177 
178  if (doAllSeedPlots || doNRecHits) {
179  histname = "NumberOfRecHitsPerSeed_" + seedProducer.label() + "_";
181  ibooker.book1D(histname + CatagoryName, histname + CatagoryName, SeedHitBin, SeedHitMin, SeedHitMax);
182  NumberOfRecHitsPerSeed->setAxisTitle("Number of RecHits per Seed", 1);
183  NumberOfRecHitsPerSeed->setAxisTitle("Number of Seeds", 2);
184  }
185 
186  if (doAllSeedPlots || doProfPHI) {
187  histname = "NumberOfRecHitsPerSeedVsPhiProfile_" + seedProducer.label() + "_";
188  NumberOfRecHitsPerSeedVsPhiProfile = ibooker.bookProfile(histname + CatagoryName,
189  histname + CatagoryName,
190  PhiBin,
191  PhiMin,
192  PhiMax,
193  SeedHitBin,
194  SeedHitMin,
195  SeedHitMax,
196  "s");
198  NumberOfRecHitsPerSeedVsPhiProfile->setAxisTitle("Number of RecHits of each Seed", 2);
199  }
200 
201  if (doAllSeedPlots || doProfETA) {
202  histname = "NumberOfRecHitsPerSeedVsEtaProfile_" + seedProducer.label() + "_";
203  NumberOfRecHitsPerSeedVsEtaProfile = ibooker.bookProfile(histname + CatagoryName,
204  histname + CatagoryName,
205  EtaBin,
206  EtaMin,
207  EtaMax,
208  SeedHitBin,
209  SeedHitMin,
210  SeedHitMax,
211  "s");
213  NumberOfRecHitsPerSeedVsEtaProfile->setAxisTitle("Number of RecHits of each Seed", 2);
214  }
215 
216  if (doRegionPlots) {
217  if (doAllSeedPlots || doETA) {
218  histname = "TrackingRegionEta_" + seedProducer.label() + "_";
219  TrackingRegionEta = ibooker.book1D(histname + CatagoryName, histname + CatagoryName, EtaBin, EtaMin, EtaMax);
220  TrackingRegionEta->setAxisTitle("TrackingRegion-covered #eta", 1);
221  TrackingRegionEta->setAxisTitle("Number of TrackingRegions", 2);
222  }
223 
224  if (doAllSeedPlots || doPHI) {
225  histname = "TrackingRegionPhi_" + seedProducer.label() + "_";
226  TrackingRegionPhi = ibooker.book1D(histname + CatagoryName, histname + CatagoryName, PhiBin, PhiMin, PhiMax);
227  TrackingRegionPhi->setAxisTitle("TrackingRegion-covered #phi", 1);
228  TrackingRegionPhi->setAxisTitle("Number of TrackingRegions", 2);
229  }
230 
231  if (doAllSeedPlots || doPHIVsETA) {
232  histname = "TrackingRegionPhiVsEta_" + seedProducer.label() + "_";
233  TrackingRegionPhiVsEta = ibooker.book2D(
234  histname + CatagoryName, histname + CatagoryName, EtaBin, EtaMin, EtaMax, PhiBin, PhiMin, PhiMax);
235  TrackingRegionPhiVsEta->setAxisTitle("TrackingRegion-covered #eta", 1);
236  TrackingRegionPhiVsEta->setAxisTitle("TrackingRegion-covered #phi", 2);
237  }
238 
240  if (doAllSeedPlots || doPT) {
241  auto ptBin = iConfig.getParameter<int>("RegionCandidatePtBin");
242  auto ptMin = iConfig.getParameter<double>("RegionCandidatePtMin");
243  auto ptMax = iConfig.getParameter<double>("RegionCandidatePtMax");
244 
245  histname = "TrackingRegionCandidatePt_" + seedProducer.label() + "_";
247  ibooker.book1D(histname + CatagoryName, histname + CatagoryName, ptBin, ptMin, ptMax);
248  TrackingRegionCandidatePt->setAxisTitle("TrackingRegion Candidate p_{T} (GeV/c)", 1);
249  TrackingRegionCandidatePt->setAxisTitle("Number of TrackingRegion Candidates", 2);
250  }
251 
252  if (doAllSeedPlots || doETA) {
253  histname = "TrackingRegionCandidateEta_" + seedProducer.label() + "_";
255  ibooker.book1D(histname + CatagoryName, histname + CatagoryName, EtaBin, EtaMin, EtaMax);
256  TrackingRegionCandidateEta->setAxisTitle("TrackingRegion Candidate #eta", 1);
257  TrackingRegionCandidateEta->setAxisTitle("Number of TrackingRegion Candidates", 2);
258  }
259 
260  if (doAllSeedPlots || doPHI) {
261  histname = "TrackingRegionCandidatePhi_" + seedProducer.label() + "_";
263  ibooker.book1D(histname + CatagoryName, histname + CatagoryName, PhiBin, PhiMin, PhiMax);
264  TrackingRegionCandidatePhi->setAxisTitle("TrackingRegion Candidate #phi", 1);
265  TrackingRegionCandidatePhi->setAxisTitle("Number of TrackingRegion Candidates", 2);
266  }
267 
268  if (doAllSeedPlots || doPHIVsETA) {
269  histname = "TrackingRegionCandidatePhiVsEta_" + seedProducer.label() + "_";
270  TrackingRegionCandidatePhiVsEta = ibooker.book2D(
271  histname + CatagoryName, histname + CatagoryName, EtaBin, EtaMin, EtaMax, PhiBin, PhiMin, PhiMax);
272  TrackingRegionCandidatePhiVsEta->setAxisTitle("TrackingRegion Candidate #eta", 1);
273  TrackingRegionCandidatePhiVsEta->setAxisTitle("TrackingRegion Candidate #phi", 2);
274  }
275  }
276  }
277 
278  if (doAllSeedPlots || doStopSource) {
279  const auto stopReasonSize = static_cast<unsigned int>(SeedStopReason::SIZE);
280 
281  const auto candsBin = iConfig.getParameter<int>("SeedCandBin");
282  const auto candsMin = iConfig.getParameter<double>("SeedCandMin");
283  const auto candsMax = iConfig.getParameter<double>("SeedCandMax");
284 
285  histname = "SeedStoppingSource_" + seedProducer.label() + "_";
287  ibooker.book1D(histname + CatagoryName, histname + CatagoryName, stopReasonSize, 0., stopReasonSize);
288  seedStoppingSource->setAxisTitle("Stopping reason", 1);
289  seedStoppingSource->setAxisTitle("Number of seeds", 2);
290 
291  histname = "SeedStoppingSourceVsPhi_" + seedProducer.label() + "_";
293  ibooker.bookProfile(histname + CatagoryName, histname + CatagoryName, PhiBin, PhiMin, PhiMax, 2, 0., 2.);
294  seedStoppingSourceVsPhi->setAxisTitle("seed #phi", 1);
295  seedStoppingSourceVsPhi->setAxisTitle("fraction stopped", 2);
296 
297  histname = "SeedStoppingSourceVsEta_" + seedProducer.label() + "_";
299  ibooker.bookProfile(histname + CatagoryName, histname + CatagoryName, EtaBin, EtaMin, EtaMax, 2, 0., 2.);
300  seedStoppingSourceVsEta->setAxisTitle("seed #eta", 1);
301  seedStoppingSourceVsEta->setAxisTitle("fraction stopped", 2);
302 
303  histname = "NumberOfTrajCandsPerSeed_" + seedProducer.label() + "_";
305  ibooker.book1D(histname + CatagoryName, histname + CatagoryName, candsBin, candsMin, candsMax);
306  numberOfTrajCandsPerSeed->setAxisTitle("Number of Trajectory Candidate for each Seed", 1);
307  numberOfTrajCandsPerSeed->setAxisTitle("Number of Seeds", 2);
308 
309  histname = "NumberOfTrajCandsPerSeedVsPhi_" + seedProducer.label() + "_";
310  numberOfTrajCandsPerSeedVsPhi = ibooker.bookProfile(
311  histname + CatagoryName, histname + CatagoryName, PhiBin, PhiMin, PhiMax, candsBin, candsMin, candsMax);
313  numberOfTrajCandsPerSeedVsPhi->setAxisTitle("Number of Trajectory Candidates for each Seed", 2);
314 
315  histname = "NumberOfTrajCandsPerSeedVsEta_" + seedProducer.label() + "_";
316  numberOfTrajCandsPerSeedVsEta = ibooker.bookProfile(
317  histname + CatagoryName, histname + CatagoryName, EtaBin, EtaMin, EtaMax, candsBin, candsMin, candsMax);
319  numberOfTrajCandsPerSeedVsEta->setAxisTitle("Number of Trajectory Candidates for each Seed", 2);
320 
321  histname = "SeedStoppingSourceVsNumberOfTrajCandsPerSeed_" + seedProducer.label() + "_";
323  ibooker.bookProfile(histname + CatagoryName, histname + CatagoryName, candsBin, candsMin, candsMax, 2, 0., 2.);
324  seedStoppingSourceVsNumberOfTrajCandsPerSeed->setAxisTitle("Number of Trajectory Candidates for each Seed", 1);
326 
327  for (unsigned int i = 0; i < stopReasonSize; ++i) {
329  }
330  }
331 
332  if (doAllTCPlots || doStopSource) {
333  // DataFormats/TrackReco/interface/TrajectoryStopReasons.h
334  size_t StopReasonNameSize = sizeof(StopReasonName::StopReasonName) / sizeof(std::string);
335 
336  histname = "StoppingSource_" + seedProducer.label() + "_";
337  stoppingSource = ibooker.book1D(
338  histname + CatagoryName, histname + CatagoryName, StopReasonNameSize, 0., double(StopReasonNameSize));
339  stoppingSource->setAxisTitle("stopping reason", 1);
340  stoppingSource->setAxisTitle("Number of Tracks", 2);
341 
342  histname = "StoppingSourceVSeta_" + seedProducer.label() + "_";
344  ibooker.bookProfile(histname + CatagoryName, histname + CatagoryName, EtaBin, EtaMin, EtaMax, 2, 0., 2.);
345  stoppingSourceVSeta->setAxisTitle("track #eta", 1);
346  stoppingSourceVSeta->setAxisTitle("fraction stopped", 2);
347 
348  histname = "StoppingSourceVSphi_" + seedProducer.label() + "_";
350  ibooker.bookProfile(histname + CatagoryName, histname + CatagoryName, PhiBin, PhiMin, PhiMax, 2, 0., 2.);
351  stoppingSourceVSphi->setAxisTitle("track #phi", 1);
352  stoppingSourceVSphi->setAxisTitle("fraction stopped", 2);
353 
354  for (size_t ibin = 0; ibin < StopReasonNameSize; ibin++) {
356  }
357  }
358 
359  // book the TrackCandidate histograms
360  // ---------------------------------------------------------------------------------//
361 
362  if (doTCPlots) {
363  ibooker.setCurrentFolder(MEFolderName + "/TrackBuilding");
364 
365  histname = "TrackCandPt_" + tcProducer.label() + "_";
366  TrackCandPt = ibooker.book1D(histname + CatagoryName, histname + CatagoryName, TrackPtBin, TrackPtMin, TrackPtMax);
367  TrackCandPt->setAxisTitle("Track Candidate p_{T} (GeV/c)", 1);
368  TrackCandPt->setAxisTitle("Number of Track Candidates", 2);
369 
370  histname = "TrackCandEta_" + tcProducer.label() + "_";
371  TrackCandEta = ibooker.book1D(histname + CatagoryName, histname + CatagoryName, EtaBin, EtaMin, EtaMax);
372  TrackCandEta->setAxisTitle("Track Candidate #eta", 1);
373  TrackCandEta->setAxisTitle("Number of Track Candidates", 2);
374 
375  histname = "TrackCandPhi_" + tcProducer.label() + "_";
376  TrackCandPhi = ibooker.book1D(histname + CatagoryName, histname + CatagoryName, PhiBin, PhiMin, PhiMax);
377  TrackCandPhi->setAxisTitle("Track Candidate #phi", 1);
378  TrackCandPhi->setAxisTitle("Number of Track Candidates", 2);
379 
380  if (doTheta) {
381  histname = "TrackCandTheta_" + tcProducer.label() + "_";
382  TrackCandTheta = ibooker.book1D(histname + CatagoryName, histname + CatagoryName, ThetaBin, ThetaMin, ThetaMax);
383  TrackCandTheta->setAxisTitle("Track Candidate #theta", 1);
384  TrackCandTheta->setAxisTitle("Number of Track Candidates", 2);
385  }
386 
387  if (doAllTCPlots) {
388  histname = "TrackCandQ_" + tcProducer.label() + "_";
389  TrackCandQ = ibooker.book1D(histname + CatagoryName, histname + CatagoryName, TrackQBin, TrackQMin, TrackQMax);
390  TrackCandQ->setAxisTitle("Track Candidate Charge", 1);
391  TrackCandQ->setAxisTitle("Number of Track Candidates", 2);
392 
393  histname = "TrackCandDxy_" + tcProducer.label() + "_";
394  TrackCandDxy = ibooker.book1D(histname + CatagoryName, histname + CatagoryName, TCDxyBin, TCDxyMin, TCDxyMax);
395  TrackCandDxy->setAxisTitle("Track Candidate d_{xy} (cm)", 1);
396  TrackCandDxy->setAxisTitle("Number of Track Candidates", 2);
397 
398  histname = "TrackCandDz_" + tcProducer.label() + "_";
399  TrackCandDz = ibooker.book1D(histname + CatagoryName, histname + CatagoryName, TCDzBin, TCDzMin, TCDzMax);
400  TrackCandDz->setAxisTitle("Track Candidate d_{z} (cm)", 1);
401  TrackCandDz->setAxisTitle("Number of Track Candidates", 2);
402 
403  histname = "NumberOfRecHitsPerTrackCand_" + tcProducer.label() + "_";
405  ibooker.book1D(histname + CatagoryName, histname + CatagoryName, TCHitBin, TCHitMin, TCHitMax);
406  NumberOfRecHitsPerTrackCand->setAxisTitle("Number of RecHits per Track Candidate", 1);
407  NumberOfRecHitsPerTrackCand->setAxisTitle("Number of Track Candidates", 2);
408 
409  histname = "NumberOfRecHitsPerTrackCandVsPhiProfile_" + tcProducer.label() + "_";
410  NumberOfRecHitsPerTrackCandVsPhiProfile = ibooker.bookProfile(
411  histname + CatagoryName, histname + CatagoryName, PhiBin, PhiMin, PhiMax, TCHitBin, TCHitMin, TCHitMax, "s");
412  NumberOfRecHitsPerTrackCandVsPhiProfile->setAxisTitle("Track Candidate #phi", 1);
413  NumberOfRecHitsPerTrackCandVsPhiProfile->setAxisTitle("Number of RecHits of each Track Candidate", 2);
414 
415  histname = "NumberOfRecHitsPerTrackCandVsEtaProfile_" + tcProducer.label() + "_";
416  NumberOfRecHitsPerTrackCandVsEtaProfile = ibooker.bookProfile(
417  histname + CatagoryName, histname + CatagoryName, EtaBin, EtaMin, EtaMax, TCHitBin, TCHitMin, TCHitMax, "s");
418  NumberOfRecHitsPerTrackCandVsEtaProfile->setAxisTitle("Track Candidate #eta", 1);
419  NumberOfRecHitsPerTrackCandVsEtaProfile->setAxisTitle("Number of RecHits of each Track Candidate", 2);
420  }
421 
422  histname = "TrackCandPhiVsEta_" + tcProducer.label() + "_";
423  TrackCandPhiVsEta = ibooker.book2D(
424  histname + CatagoryName, histname + CatagoryName, EtaBin, EtaMin, EtaMax, PhiBin, PhiMin, PhiMax);
425  TrackCandPhiVsEta->setAxisTitle("Track Candidate #eta", 1);
426  TrackCandPhiVsEta->setAxisTitle("Track Candidate #phi", 2);
427 
428  if (doAllTCPlots || doMVAPlots) {
429  for (size_t i = 1, end = mvaProducers.size(); i <= end; ++i) {
430  auto num = std::to_string(i);
431  std::string pfix;
432 
433  if (i == 1) {
434  trackMVAsHP.push_back(nullptr);
435  trackMVAsHPVsPtProfile.push_back(nullptr);
436  trackMVAsHPVsEtaProfile.push_back(nullptr);
437  } else {
438  pfix = " (not loose-selected)";
439  std::string pfix2 = " (not HP-selected)";
440  histname = "TrackMVA" + num + "HP_" + tcProducer.label() + "_";
441  trackMVAsHP.push_back(
442  ibooker.book1D(histname + CatagoryName, histname + CatagoryName + pfix2, MVABin, MVAMin, MVAMax));
443  trackMVAsHP.back()->setAxisTitle("Track selection MVA" + num, 1);
444  trackMVAsHP.back()->setAxisTitle("Number of tracks", 2);
445 
446  histname = "TrackMVA" + num + "HPVsPtProfile_" + tcProducer.label() + "_";
447  trackMVAsHPVsPtProfile.push_back(ibooker.bookProfile(histname + CatagoryName,
448  histname + CatagoryName + pfix2,
449  TrackPtBin,
450  TrackPtMin,
451  TrackPtMax,
452  MVABin,
453  MVAMin,
454  MVAMax));
455  trackMVAsHPVsPtProfile.back()->setAxisTitle("Track p_{T} (GeV/c)", 1);
456  trackMVAsHPVsPtProfile.back()->setAxisTitle("Track selection MVA" + num, 2);
457 
458  histname = "TrackMVA" + num + "HPVsEtaProfile_" + tcProducer.label() + "_";
459  trackMVAsHPVsEtaProfile.push_back(ibooker.bookProfile(
460  histname + CatagoryName, histname + CatagoryName + pfix2, EtaBin, EtaMin, EtaMax, MVABin, MVAMin, MVAMax));
461  trackMVAsHPVsEtaProfile.back()->setAxisTitle("Track #eta", 1);
462  trackMVAsHPVsEtaProfile.back()->setAxisTitle("Track selection MVA" + num, 2);
463  }
464 
465  histname = "TrackMVA" + num + "_" + tcProducer.label() + "_";
466  trackMVAs.push_back(
467  ibooker.book1D(histname + CatagoryName, histname + CatagoryName + pfix, MVABin, MVAMin, MVAMax));
468  trackMVAs.back()->setAxisTitle("Track selection MVA" + num, 1);
469  trackMVAs.back()->setAxisTitle("Number of tracks", 2);
470 
471  histname = "TrackMVA" + num + "VsPtProfile_" + tcProducer.label() + "_";
472  trackMVAsVsPtProfile.push_back(ibooker.bookProfile(histname + CatagoryName,
473  histname + CatagoryName + pfix,
474  TrackPtBin,
475  TrackPtMin,
476  TrackPtMax,
477  MVABin,
478  MVAMin,
479  MVAMax));
480  trackMVAsVsPtProfile.back()->setAxisTitle("Track p_{T} (GeV/c)", 1);
481  trackMVAsVsPtProfile.back()->setAxisTitle("Track selection MVA" + num, 2);
482 
483  histname = "TrackMVA" + num + "VsEtaProfile_" + tcProducer.label() + "_";
484  trackMVAsVsEtaProfile.push_back(ibooker.bookProfile(
485  histname + CatagoryName, histname + CatagoryName + pfix, EtaBin, EtaMin, EtaMax, MVABin, MVAMin, MVAMax));
486  trackMVAsVsEtaProfile.back()->setAxisTitle("Track #eta", 1);
487  trackMVAsVsEtaProfile.back()->setAxisTitle("Track selection MVA" + num, 2);
488  }
489  }
490  }
491 }

References HLTSiStripMonitoring_cff::AlgoName, dqm::implementation::IBooker::book1D(), dqm::implementation::IBooker::book2D(), dqm::implementation::IBooker::bookProfile(), doAllSeedPlots, doAllTCPlots, doDxy, doDz, doETA, doMVAPlots, doNRecHits, doPHI, doPHIVsETA, doProfETA, doProfPHI, doPT, doQ, doRegionCandidatePlots, doRegionPlots, doStopSource, doTCPlots, doTheta, end, MonitorTrackInnerTrackMuons_cff::EtaBin, etaBinWidth, MonitorTrackInnerTrackMuons_cff::EtaMax, MonitorTrackInnerTrackMuons_cff::EtaMin, edm::ParameterSet::getParameter(), histname, mps_fire::i, TrackingMonitor_cfi::MVABin, TrackingMonitor_cfi::MVAMax, TrackingMonitor_cfi::MVAMin, EgammaValidation_cff::num, NumberOfRecHitsPerSeed, NumberOfRecHitsPerSeedVsEtaProfile, NumberOfRecHitsPerSeedVsPhiProfile, NumberOfRecHitsPerTrackCand, NumberOfRecHitsPerTrackCandVsEtaProfile, NumberOfRecHitsPerTrackCandVsPhiProfile, numberOfTrajCandsPerSeed, numberOfTrajCandsPerSeedVsEta, numberOfTrajCandsPerSeedVsPhi, MonitorTrackSTAMuons_cfi::PhiBin, phiBinWidth, MonitorTrackSTAMuons_cfi::PhiMax, MonitorTrackSTAMuons_cfi::PhiMin, muonRecoAnalyzer_cfi::ptBin, AlignmentTrackSelector_cfi::ptMax, ptMin, SeedDxy, MonitorTrackSTAMuons_cfi::SeedDxyBin, MonitorTrackSTAMuons_cfi::SeedDxyMax, MonitorTrackSTAMuons_cfi::SeedDxyMin, SeedDz, MonitorTrackSTAMuons_cfi::SeedDzBin, MonitorTrackSTAMuons_cfi::SeedDzMax, MonitorTrackSTAMuons_cfi::SeedDzMin, SeedEta, MonitorTrackSTAMuons_cfi::SeedHitBin, MonitorTrackSTAMuons_cfi::SeedHitMax, MonitorTrackSTAMuons_cfi::SeedHitMin, SeedPhi, SeedPhiVsEta, SeedPt, SeedQ, seedStoppingSource, seedStoppingSourceVsEta, seedStoppingSourceVsNumberOfTrajCandsPerSeed, seedStoppingSourceVsPhi, SeedStopReasonName::SeedStopReasonName, SeedTheta, dqm::impl::MonitorElement::setAxisTitle(), dqm::impl::MonitorElement::setBinLabel(), dqm::implementation::NavigatorBase::setCurrentFolder(), SIZE, stoppingSource, stoppingSourceVSeta, stoppingSourceVSphi, StopReasonName::StopReasonName, AlCaHLTBitMon_QueryRunRegistry::string, MonitorTrackSTAMuons_cfi::TCDxyBin, MonitorTrackSTAMuons_cfi::TCDxyMax, MonitorTrackSTAMuons_cfi::TCDxyMin, MonitorTrackSTAMuons_cfi::TCDzBin, MonitorTrackSTAMuons_cfi::TCDzMax, MonitorTrackSTAMuons_cfi::TCDzMin, MonitorTrackSTAMuons_cfi::TCHitBin, MonitorTrackSTAMuons_cfi::TCHitMax, MonitorTrackSTAMuons_cfi::TCHitMin, MonitorTrackSTAMuons_cfi::ThetaBin, MonitorTrackSTAMuons_cfi::ThetaMax, MonitorTrackSTAMuons_cfi::ThetaMin, TrackCandDxy, TrackCandDz, TrackCandEta, TrackCandPhi, TrackCandPhiVsEta, TrackCandPt, TrackCandQ, TrackCandTheta, TrackingRegionCandidateEta, TrackingRegionCandidatePhi, TrackingRegionCandidatePhiVsEta, TrackingRegionCandidatePt, TrackingRegionEta, TrackingRegionPhi, TrackingRegionPhiVsEta, trackMVAs, trackMVAsHP, trackMVAsHPVsEtaProfile, trackMVAsHPVsPtProfile, trackMVAsVsEtaProfile, trackMVAsVsPtProfile, beam_dqm_sourceclient-live_cfg::TrackPtBin, beam_dqm_sourceclient-live_cfg::TrackPtMax, beam_dqm_sourceclient-live_cfg::TrackPtMin, MonitorTrackSTAMuons_cfi::TrackQBin, MonitorTrackSTAMuons_cfi::TrackQMax, and MonitorTrackSTAMuons_cfi::TrackQMin.

Referenced by TrackingMonitor::bookHistograms().

Member Data Documentation

◆ doAllPlots

const bool TrackBuildingAnalyzer::doAllPlots
private

Definition at line 137 of file TrackBuildingAnalyzer.h.

◆ doAllSeedPlots

const bool TrackBuildingAnalyzer::doAllSeedPlots
private

Definition at line 138 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), analyzeRegions(), and initHisto().

◆ doAllTCPlots

const bool TrackBuildingAnalyzer::doAllTCPlots
private

Definition at line 140 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ doDxy

const bool TrackBuildingAnalyzer::doDxy
private

Definition at line 147 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ doDz

const bool TrackBuildingAnalyzer::doDz
private

Definition at line 148 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ doETA

const bool TrackBuildingAnalyzer::doETA
private

Definition at line 142 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), analyzeRegions(), and initHisto().

◆ doMVAPlots

const bool TrackBuildingAnalyzer::doMVAPlots
private

Definition at line 153 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ doNRecHits

const bool TrackBuildingAnalyzer::doNRecHits
private

Definition at line 149 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ doPHI

const bool TrackBuildingAnalyzer::doPHI
private

Definition at line 143 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), analyzeRegions(), and initHisto().

◆ doPHIVsETA

const bool TrackBuildingAnalyzer::doPHIVsETA
private

Definition at line 144 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), analyzeRegions(), and initHisto().

◆ doProfETA

const bool TrackBuildingAnalyzer::doProfETA
private

Definition at line 151 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ doProfPHI

const bool TrackBuildingAnalyzer::doProfPHI
private

Definition at line 150 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ doPT

const bool TrackBuildingAnalyzer::doPT
private

Definition at line 141 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ doQ

const bool TrackBuildingAnalyzer::doQ
private

Definition at line 146 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ doRegionCandidatePlots

const bool TrackBuildingAnalyzer::doRegionCandidatePlots
private

Definition at line 155 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ doRegionPlots

const bool TrackBuildingAnalyzer::doRegionPlots
private

Definition at line 154 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), analyzeRegions(), and initHisto().

◆ doStopSource

const bool TrackBuildingAnalyzer::doStopSource
private

Definition at line 152 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ doTCPlots

const bool TrackBuildingAnalyzer::doTCPlots
private

Definition at line 139 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ doTheta

const bool TrackBuildingAnalyzer::doTheta
private

Definition at line 145 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ etaBinWidth

double TrackBuildingAnalyzer::etaBinWidth = 0.
private

Definition at line 79 of file TrackBuildingAnalyzer.h.

Referenced by analyzeRegions(), and initHisto().

◆ histname

std::string TrackBuildingAnalyzer::histname
private

Definition at line 134 of file TrackBuildingAnalyzer.h.

Referenced by initHisto().

◆ NumberOfRecHitsPerSeed

MonitorElement* TrackBuildingAnalyzer::NumberOfRecHitsPerSeed = nullptr
private

Definition at line 96 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ NumberOfRecHitsPerSeedVsEtaProfile

MonitorElement* TrackBuildingAnalyzer::NumberOfRecHitsPerSeedVsEtaProfile = nullptr
private

Definition at line 98 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ NumberOfRecHitsPerSeedVsPhiProfile

MonitorElement* TrackBuildingAnalyzer::NumberOfRecHitsPerSeedVsPhiProfile = nullptr
private

Definition at line 97 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ NumberOfRecHitsPerTrackCand

MonitorElement* TrackBuildingAnalyzer::NumberOfRecHitsPerTrackCand = nullptr
private

Definition at line 119 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ NumberOfRecHitsPerTrackCandVsEtaProfile

MonitorElement* TrackBuildingAnalyzer::NumberOfRecHitsPerTrackCandVsEtaProfile = nullptr
private

Definition at line 121 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ NumberOfRecHitsPerTrackCandVsPhiProfile

MonitorElement* TrackBuildingAnalyzer::NumberOfRecHitsPerTrackCandVsPhiProfile = nullptr
private

Definition at line 120 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ numberOfTrajCandsPerSeed

MonitorElement* TrackBuildingAnalyzer::numberOfTrajCandsPerSeed = nullptr
private

Definition at line 104 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ numberOfTrajCandsPerSeedVsEta

MonitorElement* TrackBuildingAnalyzer::numberOfTrajCandsPerSeedVsEta = nullptr
private

Definition at line 106 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ numberOfTrajCandsPerSeedVsPhi

MonitorElement* TrackBuildingAnalyzer::numberOfTrajCandsPerSeedVsPhi = nullptr
private

Definition at line 105 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ phiBinWidth

double TrackBuildingAnalyzer::phiBinWidth = 0.
private

Definition at line 80 of file TrackBuildingAnalyzer.h.

Referenced by analyzeRegions(), and initHisto().

◆ SeedDxy

MonitorElement* TrackBuildingAnalyzer::SeedDxy = nullptr
private

Definition at line 94 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ SeedDz

MonitorElement* TrackBuildingAnalyzer::SeedDz = nullptr
private

Definition at line 95 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ SeedEta

MonitorElement* TrackBuildingAnalyzer::SeedEta = nullptr
private

Definition at line 89 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ SeedPhi

MonitorElement* TrackBuildingAnalyzer::SeedPhi = nullptr
private

Definition at line 90 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ SeedPhiVsEta

MonitorElement* TrackBuildingAnalyzer::SeedPhiVsEta = nullptr
private

Definition at line 91 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ SeedPt

MonitorElement* TrackBuildingAnalyzer::SeedPt = nullptr
private

Definition at line 88 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ SeedQ

MonitorElement* TrackBuildingAnalyzer::SeedQ = nullptr
private

Definition at line 93 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ seedStoppingSource

MonitorElement* TrackBuildingAnalyzer::seedStoppingSource = nullptr
private

Definition at line 100 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ seedStoppingSourceVsEta

MonitorElement* TrackBuildingAnalyzer::seedStoppingSourceVsEta = nullptr
private

Definition at line 102 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ seedStoppingSourceVsNumberOfTrajCandsPerSeed

MonitorElement* TrackBuildingAnalyzer::seedStoppingSourceVsNumberOfTrajCandsPerSeed = nullptr
private

Definition at line 108 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ seedStoppingSourceVsPhi

MonitorElement* TrackBuildingAnalyzer::seedStoppingSourceVsPhi = nullptr
private

Definition at line 101 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ SeedTheta

MonitorElement* TrackBuildingAnalyzer::SeedTheta = nullptr
private

Definition at line 92 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ stoppingSource

MonitorElement* TrackBuildingAnalyzer::stoppingSource = nullptr
private

Definition at line 123 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ stoppingSourceVSeta

MonitorElement* TrackBuildingAnalyzer::stoppingSourceVSeta = nullptr
private

Definition at line 124 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ stoppingSourceVSphi

MonitorElement* TrackBuildingAnalyzer::stoppingSourceVSphi = nullptr
private

Definition at line 125 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ TrackCandDxy

MonitorElement* TrackBuildingAnalyzer::TrackCandDxy = nullptr
private

Definition at line 117 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ TrackCandDz

MonitorElement* TrackBuildingAnalyzer::TrackCandDz = nullptr
private

Definition at line 118 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ TrackCandEta

MonitorElement* TrackBuildingAnalyzer::TrackCandEta = nullptr
private

Definition at line 112 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ TrackCandPhi

MonitorElement* TrackBuildingAnalyzer::TrackCandPhi = nullptr
private

Definition at line 113 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ TrackCandPhiVsEta

MonitorElement* TrackBuildingAnalyzer::TrackCandPhiVsEta = nullptr
private

Definition at line 114 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ TrackCandPt

MonitorElement* TrackBuildingAnalyzer::TrackCandPt = nullptr
private

Definition at line 111 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ TrackCandQ

MonitorElement* TrackBuildingAnalyzer::TrackCandQ = nullptr
private

Definition at line 116 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ TrackCandTheta

MonitorElement* TrackBuildingAnalyzer::TrackCandTheta = nullptr
private

Definition at line 115 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ TrackingRegionCandidateEta

MonitorElement* TrackBuildingAnalyzer::TrackingRegionCandidateEta = nullptr
private

Definition at line 83 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ TrackingRegionCandidatePhi

MonitorElement* TrackBuildingAnalyzer::TrackingRegionCandidatePhi = nullptr
private

Definition at line 84 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ TrackingRegionCandidatePhiVsEta

MonitorElement* TrackBuildingAnalyzer::TrackingRegionCandidatePhiVsEta = nullptr
private

Definition at line 85 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ TrackingRegionCandidatePt

MonitorElement* TrackBuildingAnalyzer::TrackingRegionCandidatePt = nullptr
private

Definition at line 82 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ TrackingRegionEta

MonitorElement* TrackBuildingAnalyzer::TrackingRegionEta = nullptr
private

Definition at line 76 of file TrackBuildingAnalyzer.h.

Referenced by analyzeRegions(), and initHisto().

◆ TrackingRegionPhi

MonitorElement* TrackBuildingAnalyzer::TrackingRegionPhi = nullptr
private

Definition at line 77 of file TrackBuildingAnalyzer.h.

Referenced by analyzeRegions(), and initHisto().

◆ TrackingRegionPhiVsEta

MonitorElement* TrackBuildingAnalyzer::TrackingRegionPhiVsEta = nullptr
private

Definition at line 78 of file TrackBuildingAnalyzer.h.

Referenced by analyzeRegions(), and initHisto().

◆ trackMVAs

std::vector<MonitorElement*> TrackBuildingAnalyzer::trackMVAs
private

Definition at line 127 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ trackMVAsHP

std::vector<MonitorElement*> TrackBuildingAnalyzer::trackMVAsHP
private

Definition at line 128 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ trackMVAsHPVsEtaProfile

std::vector<MonitorElement*> TrackBuildingAnalyzer::trackMVAsHPVsEtaProfile
private

Definition at line 132 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ trackMVAsHPVsPtProfile

std::vector<MonitorElement*> TrackBuildingAnalyzer::trackMVAsHPVsPtProfile
private

Definition at line 130 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ trackMVAsVsEtaProfile

std::vector<MonitorElement*> TrackBuildingAnalyzer::trackMVAsVsEtaProfile
private

Definition at line 131 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

◆ trackMVAsVsPtProfile

std::vector<MonitorElement*> TrackBuildingAnalyzer::trackMVAsVsPtProfile
private

Definition at line 129 of file TrackBuildingAnalyzer.h.

Referenced by analyze(), and initHisto().

Vector3DBase
Definition: Vector3DBase.h:8
TrackCandidate::trajectoryStateOnDet
PTrajectoryStateOnDet const & trajectoryStateOnDet() const
Definition: TrackCandidate.h:56
TrackBuildingAnalyzer::SeedPhi
MonitorElement * SeedPhi
Definition: TrackBuildingAnalyzer.h:90
FreeTrajectoryState::momentum
GlobalVector momentum() const
Definition: FreeTrajectoryState.h:68
TrajectoryStateClosestToBeamLine
Definition: TrajectoryStateClosestToBeamLine.h:15
geometry
ESHandle< TrackerGeometry > geometry
Definition: TkLasBeamFitter.cc:200
V0Monitor_cff.v0
v0
Definition: V0Monitor_cff.py:7
ALCARECOTkAlBeamHalo_cff.etaMin
etaMin
GeV.
Definition: ALCARECOTkAlBeamHalo_cff.py:32
mps_fire.i
i
Definition: mps_fire.py:355
TrackBuildingAnalyzer::TrackingRegionCandidateEta
MonitorElement * TrackingRegionCandidateEta
Definition: TrackBuildingAnalyzer.h:83
TrackBuildingAnalyzer::doAllPlots
const bool doAllPlots
Definition: TrackBuildingAnalyzer.h:137
MonitorTrackSTAMuons_cfi.TCDxyBin
TCDxyBin
Definition: MonitorTrackSTAMuons_cfi.py:314
reco::TrackBase::loose
Definition: TrackBase.h:152
TrackBuildingAnalyzer::doDxy
const bool doDxy
Definition: TrackBuildingAnalyzer.h:147
TrackBuildingAnalyzer::TrackCandPt
MonitorElement * TrackCandPt
Definition: TrackBuildingAnalyzer.h:111
MonitorTrackSTAMuons_cfi.SeedHitMin
SeedHitMin
Definition: MonitorTrackSTAMuons_cfi.py:101
generateTowerEtThresholdLUT.etaRange
etaRange
Definition: generateTowerEtThresholdLUT.py:55
TrackBuildingAnalyzer::TrackCandDxy
MonitorElement * TrackCandDxy
Definition: TrackBuildingAnalyzer.h:117
TrackBuildingAnalyzer::NumberOfRecHitsPerTrackCand
MonitorElement * NumberOfRecHitsPerTrackCand
Definition: TrackBuildingAnalyzer.h:119
MonitorTrackSTAMuons_cfi.TrackQMin
TrackQMin
Definition: MonitorTrackSTAMuons_cfi.py:96
DiDispStaMuonMonitor_cfi.pt
pt
Definition: DiDispStaMuonMonitor_cfi.py:39
TrackBuildingAnalyzer::seedStoppingSourceVsEta
MonitorElement * seedStoppingSourceVsEta
Definition: TrackBuildingAnalyzer.h:102
MonitorTrackSTAMuons_cfi.SeedDzBin
SeedDzBin
Definition: MonitorTrackSTAMuons_cfi.py:309
AlCaHLTBitMon_ParallelJobs.p
p
Definition: AlCaHLTBitMon_ParallelJobs.py:153
PV3DBase::theta
Geom::Theta< T > theta() const
Definition: PV3DBase.h:72
TrackBuildingAnalyzer::phiBinWidth
double phiBinWidth
Definition: TrackBuildingAnalyzer.h:80
TrackBuildingAnalyzer::doQ
const bool doQ
Definition: TrackBuildingAnalyzer.h:146
TrajectoryStateOnSurface::globalPosition
GlobalPoint globalPosition() const
Definition: TrajectoryStateOnSurface.h:65
TrackBuildingAnalyzer::seedStoppingSourceVsPhi
MonitorElement * seedStoppingSourceVsPhi
Definition: TrackBuildingAnalyzer.h:101
beam_dqm_sourceclient-live_cfg.TrackPtBin
TrackPtBin
Definition: beam_dqm_sourceclient-live_cfg.py:194
StopReasonName::StopReasonName
static const std::string StopReasonName[]
Definition: TrajectoryStopReasons.h:25
ptMin
constexpr float ptMin
Definition: PhotonIDValueMapProducer.cc:153
TrackBuildingAnalyzer::doNRecHits
const bool doNRecHits
Definition: TrackBuildingAnalyzer.h:149
TrackBuildingAnalyzer::etaBinWidth
double etaBinWidth
Definition: TrackBuildingAnalyzer.h:79
TrajectoryStateOnSurface::charge
TrackCharge charge() const
Definition: TrajectoryStateOnSurface.h:68
MonitorTrackSTAMuons_cfi.SeedHitBin
SeedHitBin
Definition: MonitorTrackSTAMuons_cfi.py:99
SeedStopInfo::candidatesPerSeed
unsigned short candidatesPerSeed() const
Definition: SeedStopInfo.h:12
TrackBuildingAnalyzer::histname
std::string histname
Definition: TrackBuildingAnalyzer.h:134
TrackBuildingAnalyzer::TrackingRegionPhiVsEta
MonitorElement * TrackingRegionPhiVsEta
Definition: TrackBuildingAnalyzer.h:78
beam_dqm_sourceclient-live_cfg.TrackPtMin
TrackPtMin
Definition: beam_dqm_sourceclient-live_cfg.py:192
MonitorTrackSTAMuons_cfi.SeedDzMax
SeedDzMax
Definition: MonitorTrackSTAMuons_cfi.py:310
TrackBuildingAnalyzer::doRegionPlots
const bool doRegionPlots
Definition: TrackBuildingAnalyzer.h:154
TrackBuildingAnalyzer::NumberOfRecHitsPerSeedVsPhiProfile
MonitorElement * NumberOfRecHitsPerSeedVsPhiProfile
Definition: TrackBuildingAnalyzer.h:97
MonitorTrackInnerTrackMuons_cff.EtaBin
EtaBin
Definition: MonitorTrackInnerTrackMuons_cff.py:64
TrackBuildingAnalyzer::TrackingRegionEta
MonitorElement * TrackingRegionEta
Definition: TrackBuildingAnalyzer.h:76
TrackBuildingAnalyzer::trackMVAsVsEtaProfile
std::vector< MonitorElement * > trackMVAsVsEtaProfile
Definition: TrackBuildingAnalyzer.h:131
FreeTrajectoryState::position
GlobalPoint position() const
Definition: FreeTrajectoryState.h:67
findQualityFiles.v
v
Definition: findQualityFiles.py:179
beam_dqm_sourceclient-live_cfg.mva
mva
Definition: beam_dqm_sourceclient-live_cfg.py:116
createJobs.tmp
tmp
align.sh
Definition: createJobs.py:716
HLTSiStripMonitoring_cff.AlgoName
AlgoName
Definition: HLTSiStripMonitoring_cff.py:232
TrackBuildingAnalyzer::doPHIVsETA
const bool doPHIVsETA
Definition: TrackBuildingAnalyzer.h:144
muonRecoAnalyzer_cfi.ptBin
ptBin
Definition: muonRecoAnalyzer_cfi.py:45
MonitorTrackSTAMuons_cfi.TrackQMax
TrackQMax
Definition: MonitorTrackSTAMuons_cfi.py:95
MonitorTrackSTAMuons_cfi.TrackQBin
TrackQBin
Definition: MonitorTrackSTAMuons_cfi.py:94
end
#define end
Definition: vmac.h:39
TkTransientTrackingRecHitBuilder
Definition: TkTransientTrackingRecHitBuilder.h:15
funct::sin
Sin< T >::type sin(const T &t)
Definition: Sin.h:22
TrackBuildingAnalyzer::NumberOfRecHitsPerSeedVsEtaProfile
MonitorElement * NumberOfRecHitsPerSeedVsEtaProfile
Definition: TrackBuildingAnalyzer.h:98
SeedStopReason::NOT_STOPPED
MonitorTrackSTAMuons_cfi.ThetaMin
ThetaMin
Definition: MonitorTrackSTAMuons_cfi.py:221
TrackBuildingAnalyzer::doTCPlots
const bool doTCPlots
Definition: TrackBuildingAnalyzer.h:139
TrajectoryStateOnSurface
Definition: TrajectoryStateOnSurface.h:16
MonitorTrackSTAMuons_cfi.PhiMax
PhiMax
Definition: MonitorTrackSTAMuons_cfi.py:230
cms::cuda::bs
bs
Definition: HistoContainer.h:127
TrackBuildingAnalyzer::trackMVAsVsPtProfile
std::vector< MonitorElement * > trackMVAsVsPtProfile
Definition: TrackBuildingAnalyzer.h:129
TrackBuildingAnalyzer::NumberOfRecHitsPerTrackCandVsPhiProfile
MonitorElement * NumberOfRecHitsPerTrackCandVsPhiProfile
Definition: TrackBuildingAnalyzer.h:120
TrackBuildingAnalyzer::SeedPt
MonitorElement * SeedPt
Definition: TrackBuildingAnalyzer.h:88
funct::cos
Cos< T >::type cos(const T &t)
Definition: Cos.h:22
TrajectoryStateOnSurface::freeState
FreeTrajectoryState const * freeState(bool withErrors=true) const
Definition: TrajectoryStateOnSurface.h:58
TrackBuildingAnalyzer::TrackCandDz
MonitorElement * TrackCandDz
Definition: TrackBuildingAnalyzer.h:118
AlignmentTrackSelector_cfi.ptMax
ptMax
Definition: AlignmentTrackSelector_cfi.py:12
TrackBuildingAnalyzer::numberOfTrajCandsPerSeedVsPhi
MonitorElement * numberOfTrajCandsPerSeedVsPhi
Definition: TrackBuildingAnalyzer.h:105
TrackBuildingAnalyzer::doStopSource
const bool doStopSource
Definition: TrackBuildingAnalyzer.h:152
TrackBuildingAnalyzer::doAllTCPlots
const bool doAllTCPlots
Definition: TrackBuildingAnalyzer.h:140
TrackBuildingAnalyzer::TrackingRegionPhi
MonitorElement * TrackingRegionPhi
Definition: TrackBuildingAnalyzer.h:77
PVValHelper::eta
Definition: PVValidationHelpers.h:69
mathSSE::sqrt
T sqrt(T t)
Definition: SSEVec.h:19
dqm::impl::MonitorElement::Fill
void Fill(long long x)
Definition: MonitorElement.h:290
AlignmentTrackSelector_cfi.phiMin
phiMin
Definition: AlignmentTrackSelector_cfi.py:18
AlignmentTrackSelector_cfi.phiMax
phiMax
Definition: AlignmentTrackSelector_cfi.py:17
beam_dqm_sourceclient-live_cfg.TrackPtMax
TrackPtMax
Definition: beam_dqm_sourceclient-live_cfg.py:193
TrackBuildingAnalyzer::TrackingRegionCandidatePhiVsEta
MonitorElement * TrackingRegionCandidatePhiVsEta
Definition: TrackBuildingAnalyzer.h:85
TrackBuildingAnalyzer::TrackingRegionCandidatePt
MonitorElement * TrackingRegionCandidatePt
Definition: TrackBuildingAnalyzer.h:82
TrackBuildingAnalyzer::SeedTheta
MonitorElement * SeedTheta
Definition: TrackBuildingAnalyzer.h:92
theta
Geom::Theta< T > theta() const
Definition: Basic3DVectorLD.h:150
TrackBuildingAnalyzer::doDz
const bool doDz
Definition: TrackBuildingAnalyzer.h:148
MonitorTrackSTAMuons_cfi.SeedDxyBin
SeedDxyBin
Definition: MonitorTrackSTAMuons_cfi.py:304
Point3DBase< float, GlobalTag >
TrackingMonitor_cfi.MVAMin
MVAMin
Definition: TrackingMonitor_cfi.py:370
TrackBuildingAnalyzer::stoppingSourceVSeta
MonitorElement * stoppingSourceVSeta
Definition: TrackBuildingAnalyzer.h:124
TrackBuildingAnalyzer::doProfETA
const bool doProfETA
Definition: TrackBuildingAnalyzer.h:151
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
SeedStopReasonName::SeedStopReasonName
static const std::string SeedStopReasonName[]
Definition: SeedStopReason.h:18
MonitorTrackSTAMuons_cfi.TCHitMax
TCHitMax
Definition: MonitorTrackSTAMuons_cfi.py:105
TrackBuildingAnalyzer::SeedQ
MonitorElement * SeedQ
Definition: TrackBuildingAnalyzer.h:93
SeedStopInfo::stopReason
SeedStopReason stopReason() const
Definition: SeedStopInfo.h:15
TrackBuildingAnalyzer::SeedPhiVsEta
MonitorElement * SeedPhiVsEta
Definition: TrackBuildingAnalyzer.h:91
edm::LogError
Definition: MessageLogger.h:183
TrackBuildingAnalyzer::TrackCandEta
MonitorElement * TrackCandEta
Definition: TrackBuildingAnalyzer.h:112
duplicaterechits_cfi.trackCollection
trackCollection
Definition: duplicaterechits_cfi.py:4
TrackCandidate::recHits
range recHits() const
Definition: TrackCandidate.h:58
TrackBuildingAnalyzer::doProfPHI
const bool doProfPHI
Definition: TrackBuildingAnalyzer.h:150
SiStripPI::max
Definition: SiStripPayloadInspectorHelper.h:169
TrackBuildingAnalyzer::trackMVAsHP
std::vector< MonitorElement * > trackMVAsHP
Definition: TrackBuildingAnalyzer.h:128
TrackBuildingAnalyzer::trackMVAsHPVsPtProfile
std::vector< MonitorElement * > trackMVAsHPVsPtProfile
Definition: TrackBuildingAnalyzer.h:130
TrackBuildingAnalyzer::doAllSeedPlots
const bool doAllSeedPlots
Definition: TrackBuildingAnalyzer.h:138
TrackBuildingAnalyzer::TrackCandPhiVsEta
MonitorElement * TrackCandPhiVsEta
Definition: TrackBuildingAnalyzer.h:114
TrackBuildingAnalyzer::numberOfTrajCandsPerSeed
MonitorElement * numberOfTrajCandsPerSeed
Definition: TrackBuildingAnalyzer.h:104
PV3DBase::eta
T eta() const
Definition: PV3DBase.h:73
createfilelist.int
int
Definition: createfilelist.py:10
TrackBuildingAnalyzer::seedStoppingSourceVsNumberOfTrajCandsPerSeed
MonitorElement * seedStoppingSourceVsNumberOfTrajCandsPerSeed
Definition: TrackBuildingAnalyzer.h:108
trajectoryStateTransform::transientState
TrajectoryStateOnSurface transientState(const PTrajectoryStateOnDet &ts, const Surface *surface, const MagneticField *field)
Definition: TrajectoryStateTransform.cc:35
dqm::impl::MonitorElement::setBinLabel
virtual void setBinLabel(int bin, const std::string &label, int axis=1)
set bin label for x, y or z axis (axis=1, 2, 3 respectively)
Definition: MonitorElement.cc:771
edm::LogVerbatim
Definition: MessageLogger.h:297
TrackBuildingAnalyzer::TrackingRegionCandidatePhi
MonitorElement * TrackingRegionCandidatePhi
Definition: TrackBuildingAnalyzer.h:84
TrackBuildingAnalyzer::NumberOfRecHitsPerSeed
MonitorElement * NumberOfRecHitsPerSeed
Definition: TrackBuildingAnalyzer.h:96
TrackBuildingAnalyzer::doPHI
const bool doPHI
Definition: TrackBuildingAnalyzer.h:143
MonitorTrackSTAMuons_cfi.PhiMin
PhiMin
Definition: MonitorTrackSTAMuons_cfi.py:231
MonitorTrackSTAMuons_cfi.TCDzMin
TCDzMin
Definition: MonitorTrackSTAMuons_cfi.py:321
TrackBuildingAnalyzer::SeedEta
MonitorElement * SeedEta
Definition: TrackBuildingAnalyzer.h:89
MonitorTrackSTAMuons_cfi.SeedHitMax
SeedHitMax
Definition: MonitorTrackSTAMuons_cfi.py:100
MonitorTrackSTAMuons_cfi.SeedDxyMin
SeedDxyMin
Definition: MonitorTrackSTAMuons_cfi.py:306
MonitorTrackSTAMuons_cfi.TCHitMin
TCHitMin
Definition: MonitorTrackSTAMuons_cfi.py:106
TrackBuildingAnalyzer::doETA
const bool doETA
Definition: TrackBuildingAnalyzer.h:142
EgammaValidation_cff.num
num
Definition: EgammaValidation_cff.py:34
SeedStopReason::SIZE
TrackBuildingAnalyzer::trackMVAs
std::vector< MonitorElement * > trackMVAs
Definition: TrackBuildingAnalyzer.h:127
DDAxes::phi
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
TrajectoryStateOnSurface::globalMomentum
GlobalVector globalMomentum() const
Definition: TrajectoryStateOnSurface.h:66
MonitorTrackSTAMuons_cfi.TCDzMax
TCDzMax
Definition: MonitorTrackSTAMuons_cfi.py:320
TrackingMonitor_cfi.MVAMax
MVAMax
Definition: TrackingMonitor_cfi.py:371
PVValHelper::dxy
Definition: PVValidationHelpers.h:47
MonitorTrackInnerTrackMuons_cff.EtaMin
EtaMin
Definition: MonitorTrackInnerTrackMuons_cff.py:64
MonitorTrackInnerTrackMuons_cff.EtaMax
EtaMax
Definition: MonitorTrackInnerTrackMuons_cff.py:64
StopReason::NOT_STOPPED
PVValHelper::dz
Definition: PVValidationHelpers.h:50
TSCBLBuilderNoMaterial
Definition: TSCBLBuilderNoMaterial.h:13
MonitorTrackSTAMuons_cfi.ThetaMax
ThetaMax
Definition: MonitorTrackSTAMuons_cfi.py:220
TrackBuildingAnalyzer::doMVAPlots
const bool doMVAPlots
Definition: TrackBuildingAnalyzer.h:153
dqm::impl::MonitorElement::getNbinsX
virtual int getNbinsX() const
get # of bins in X-axis
Definition: MonitorElement.cc:574
TrackCandidate::stopReason
uint8_t stopReason() const
Definition: TrackCandidate.h:64
ALCARECOTkAlBeamHalo_cff.etaMax
etaMax
Definition: ALCARECOTkAlBeamHalo_cff.py:33
TrackBuildingAnalyzer::SeedDz
MonitorElement * SeedDz
Definition: TrackBuildingAnalyzer.h:95
MonitorTrackSTAMuons_cfi.TCDzBin
TCDzBin
Definition: MonitorTrackSTAMuons_cfi.py:319
TrackBuildingAnalyzer::seedStoppingSource
MonitorElement * seedStoppingSource
Definition: TrackBuildingAnalyzer.h:100
TrackBuildingAnalyzer::TrackCandPhi
MonitorElement * TrackCandPhi
Definition: TrackBuildingAnalyzer.h:113
TrackBuildingAnalyzer::doTheta
const bool doTheta
Definition: TrackBuildingAnalyzer.h:145
MonitorTrackSTAMuons_cfi.PhiBin
PhiBin
Definition: MonitorTrackSTAMuons_cfi.py:229
TrackBuildingAnalyzer::NumberOfRecHitsPerTrackCandVsEtaProfile
MonitorElement * NumberOfRecHitsPerTrackCandVsEtaProfile
Definition: TrackBuildingAnalyzer.h:121
TrackingMonitor_cfi.MVABin
MVABin
Definition: TrackingMonitor_cfi.py:369
MonitorTrackSTAMuons_cfi.TCHitBin
TCHitBin
Definition: MonitorTrackSTAMuons_cfi.py:104
SeedStopInfo::stopReasonUC
unsigned char stopReasonUC() const
Definition: SeedStopInfo.h:16
TrackBuildingAnalyzer::TrackCandQ
MonitorElement * TrackCandQ
Definition: TrackBuildingAnalyzer.h:116
AlignmentPI::regions
regions
Definition: AlignmentPayloadInspectorHelper.h:76
TrajectoryStateClosestToBeamLine::isValid
bool isValid() const
Definition: TrajectoryStateClosestToBeamLine.h:50
MonitorTrackSTAMuons_cfi.SeedDzMin
SeedDzMin
Definition: MonitorTrackSTAMuons_cfi.py:311
MonitorTrackSTAMuons_cfi.TCDxyMax
TCDxyMax
Definition: MonitorTrackSTAMuons_cfi.py:315
MonitorTrackSTAMuons_cfi.TCDxyMin
TCDxyMin
Definition: MonitorTrackSTAMuons_cfi.py:316
TrackBuildingAnalyzer::stoppingSourceVSphi
MonitorElement * stoppingSourceVSphi
Definition: TrackBuildingAnalyzer.h:125
TrackBuildingAnalyzer::stoppingSource
MonitorElement * stoppingSource
Definition: TrackBuildingAnalyzer.h:123
TrajectoryStateClosestToBeamLine::trackStateAtPCA
FTS const & trackStateAtPCA() const
Definition: TrajectoryStateClosestToBeamLine.h:32
dqm::impl::MonitorElement::setAxisTitle
virtual void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
Definition: MonitorElement.cc:800
MonitorTrackSTAMuons_cfi.SeedDxyMax
SeedDxyMax
Definition: MonitorTrackSTAMuons_cfi.py:305
edm::InputTag
Definition: InputTag.h:15
TrackBuildingAnalyzer::trackMVAsHPVsEtaProfile
std::vector< MonitorElement * > trackMVAsHPVsEtaProfile
Definition: TrackBuildingAnalyzer.h:132
PV3DBase::phi
Geom::Phi< T > phi() const
Definition: PV3DBase.h:66
TrackBuildingAnalyzer::numberOfTrajCandsPerSeedVsEta
MonitorElement * numberOfTrajCandsPerSeedVsEta
Definition: TrackBuildingAnalyzer.h:106
PV3DBase::perp2
T perp2() const
Definition: PV3DBase.h:68
TrackBuildingAnalyzer::doPT
const bool doPT
Definition: TrackBuildingAnalyzer.h:141
TrackBuildingAnalyzer::doRegionCandidatePlots
const bool doRegionCandidatePlots
Definition: TrackBuildingAnalyzer.h:155
TrackBuildingAnalyzer::analyzeRegions
void analyzeRegions(const T &regions)
Definition: TrackBuildingAnalyzer.cc:731
MonitorTrackSTAMuons_cfi.ThetaBin
ThetaBin
Definition: MonitorTrackSTAMuons_cfi.py:219
reco::reduceRange
constexpr T reduceRange(T x)
Definition: deltaPhi.h:18
reco::TrackBase::highPurity
Definition: TrackBase.h:154
TrackBuildingAnalyzer::SeedDxy
MonitorElement * SeedDxy
Definition: TrackBuildingAnalyzer.h:94
TrackBuildingAnalyzer::TrackCandTheta
MonitorElement * TrackCandTheta
Definition: TrackBuildingAnalyzer.h:115