CMS 3D CMS Logo

TrackEfficiencyMonitor.h
Go to the documentation of this file.
1 #ifndef TrackEfficiencyMonitor_H
2 #define TrackEfficiencyMonitor_H
3 // -*- C++ -*-
4 //
5 // Package: TrackEfficiencyMonitor
6 // Class: TrackEfficiencyMonitor
7 //
11 // Original Author: Jeremy Andrea
12 // Insertion in DQM: Anne-Catherine Le Bihan
13 // Created: Thu 28 22:45:30 CEST 2008
14 
15 #include <memory>
16 #include <fstream>
35 
36 namespace reco {
37  class TransientTrack;
38 }
39 class NavigationSchool;
40 
42 public:
43  typedef reco::Track Track;
46  ~TrackEfficiencyMonitor() override;
47  void analyze(const edm::Event&, const edm::EventSetup&) override;
48 
49  void bookHistograms(DQMStore::IBooker&, edm::Run const&, edm::EventSetup const&) override;
50 
51  enum SemiCylinder { Up, Down };
52  std::pair<TrajectoryStateOnSurface, const DetLayer*> findNextLayer(
53  TrajectoryStateOnSurface startTSOS, const std::vector<const DetLayer*>& trackCompatibleLayers, bool isUpMuon);
57  const NavigationSchool& navigationSchool);
59  bool trackerAcceptance(TrajectoryStateOnSurface theTSOS, double theRadius, double theMaxZ);
60  int compatibleLayers(const NavigationSchool& navigationSchool, TrajectoryStateOnSurface theTSOS);
61 
62 private:
63  // ----------member data ---------------------------
64 
65  std::string histname; //for naming the histograms
66 
69 
70  double theRadius_;
71  double theMaxZ_;
73  bool trackEfficiency_; //1 if one wants to measure the tracking efficiency
74  //0 if one wants to measure the muon reco efficiency
75 
80 
84 
92 
100 
111 
118 
120 
126 };
127 #endif
TrackEfficiencyMonitor::muonZ
MonitorElement * muonZ
Definition: TrackEfficiencyMonitor.h:87
TrackEfficiencyMonitor::muonX
MonitorElement * muonX
Definition: TrackEfficiencyMonitor.h:85
TrackEfficiencyMonitor::trackPhi
MonitorElement * trackPhi
Definition: TrackEfficiencyMonitor.h:97
TrackEfficiencyMonitor::muonPhi
MonitorElement * muonPhi
Definition: TrackEfficiencyMonitor.h:89
dqm::impl::MonitorElement
Definition: MonitorElement.h:99
TrackEfficiencyMonitor::GlobalMuonPtEtaPhiLowPt
MonitorElement * GlobalMuonPtEtaPhiLowPt
Definition: TrackEfficiencyMonitor.h:105
TrackEfficiencyMonitor::compatibleLayers
int compatibleLayers(const NavigationSchool &navigationSchool, TrajectoryStateOnSurface theTSOS)
Definition: TrackEfficiencyMonitor.cc:599
TrackEfficiencyMonitor::theTKTracksToken_
edm::EDGetTokenT< reco::TrackCollection > theTKTracksToken_
Definition: TrackEfficiencyMonitor.h:78
TrackEfficiencyMonitor::mfToken_
const edm::ESGetToken< MagneticField, IdealMagneticFieldRecord > mfToken_
Definition: TrackEfficiencyMonitor.h:116
TrackEfficiencyMonitor::trackY
MonitorElement * trackY
Definition: TrackEfficiencyMonitor.h:94
edm::Run
Definition: Run.h:45
TrackEfficiencyMonitor::measurementTracker
const MeasurementTracker * measurementTracker
Definition: TrackEfficiencyMonitor.h:125
edm::EDGetTokenT< reco::TrackCollection >
TrackEfficiencyMonitor::theSTATracksToken_
edm::EDGetTokenT< reco::TrackCollection > theSTATracksToken_
Definition: TrackEfficiencyMonitor.h:79
TrackEfficiencyMonitor::theTracker
const GeometricSearchTracker * theTracker
Definition: TrackEfficiencyMonitor.h:123
TrackEfficiencyMonitor::checkSemiCylinder
SemiCylinder checkSemiCylinder(const Track &)
Definition: TrackEfficiencyMonitor.cc:546
TrackEfficiencyMonitor::histname
std::string histname
Definition: TrackEfficiencyMonitor.h:65
TrackEfficiencyMonitor::propToken_
const edm::ESGetToken< Propagator, TrackingComponentsRecord > propToken_
Definition: TrackEfficiencyMonitor.h:113
TrackEfficiencyMonitor::navToken_
const edm::ESGetToken< NavigationSchool, NavigationSchoolRecord > navToken_
Definition: TrackEfficiencyMonitor.h:114
TrackEfficiencyMonitor::trackX
MonitorElement * trackX
Definition: TrackEfficiencyMonitor.h:93
TrackerRecoGeometryRecord.h
DQMStore.h
TrackEfficiencyMonitor::analyze
void analyze(const edm::Event &, const edm::EventSetup &) override
Definition: TrackEfficiencyMonitor.cc:273
EDAnalyzer.h
NavigationSchool
Definition: NavigationSchool.h:18
CkfComponentsRecord.h
reco
fixed size matrix
Definition: AlignmentAlgorithmBase.h:46
TrackEfficiencyMonitor::theMaxZ_
double theMaxZ_
Definition: TrackEfficiencyMonitor.h:71
TrackEfficiencyMonitor::~TrackEfficiencyMonitor
~TrackEfficiencyMonitor() override
Definition: TrackEfficiencyMonitor.cc:64
edm::Handle
Definition: AssociativeIterator.h:50
TrackEfficiencyMonitor::TrackCollection
reco::TrackCollection TrackCollection
Definition: TrackEfficiencyMonitor.h:44
TrackEfficiencyMonitor::trackD0
MonitorElement * trackD0
Definition: TrackEfficiencyMonitor.h:98
TrackEfficiencyMonitor::signDeltaY
MonitorElement * signDeltaY
Definition: TrackEfficiencyMonitor.h:104
TrackEfficiencyMonitor::TrackEfficiencyMonitor
TrackEfficiencyMonitor(const edm::ParameterSet &)
Definition: TrackEfficiencyMonitor.cc:38
TrackEfficiencyMonitor::muonY
MonitorElement * muonY
Definition: TrackEfficiencyMonitor.h:86
Propagator
Definition: Propagator.h:44
MeasurementTracker
Definition: MeasurementTracker.h:21
TrajectoryStateOnSurface
Definition: TrajectoryStateOnSurface.h:16
MakerMacros.h
TrackEfficiencyMonitor::trackZ
MonitorElement * trackZ
Definition: TrackEfficiencyMonitor.h:95
TrackEfficiencyMonitor::gstToken_
const edm::ESGetToken< GeometricSearchTracker, TrackerRecoGeometryRecord > gstToken_
Definition: TrackEfficiencyMonitor.h:115
TrackEfficiencyMonitor::bField
const MagneticField * bField
Definition: TrackEfficiencyMonitor.h:124
dqm::legacy::DQMStore
Definition: DQMStore.h:728
TrackEfficiencyMonitor::thePropagator
const Propagator * thePropagator
Definition: TrackEfficiencyMonitor.h:121
MuonSelectors.h
Service.h
MuonFwd.h
TrackEfficiencyMonitor::testTrackerTracks
void testTrackerTracks(edm::Handle< TrackCollection > tkTracks, edm::Handle< TrackCollection > staTracks, const NavigationSchool &navigationSchool)
Definition: TrackEfficiencyMonitor.cc:358
TrackEfficiencyMonitor::signDeltaX
MonitorElement * signDeltaX
Definition: TrackEfficiencyMonitor.h:103
reco::Track
Definition: Track.h:27
TrackEfficiencyMonitor::Track
reco::Track Track
Definition: TrackEfficiencyMonitor.h:43
DirectTrackerNavigation.h
TrackEfficiencyMonitor::StandaloneMuonPtEtaPhiHighPt
MonitorElement * StandaloneMuonPtEtaPhiHighPt
Definition: TrackEfficiencyMonitor.h:108
TrackEfficiencyMonitor::findNextLayer
std::pair< TrajectoryStateOnSurface, const DetLayer * > findNextLayer(TrajectoryStateOnSurface startTSOS, const std::vector< const DetLayer * > &trackCompatibleLayers, bool isUpMuon)
Definition: TrackEfficiencyMonitor.cc:668
TrackEfficiencyMonitor::bookHistograms
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
Definition: TrackEfficiencyMonitor.cc:69
EDGetToken.h
DQMEDAnalyzer.h
TrackEfficiencyMonitor::testSTATracks
void testSTATracks(edm::Handle< TrackCollection > tkTracks, edm::Handle< TrackCollection > staTracks)
Definition: TrackEfficiencyMonitor.cc:478
DQMEDAnalyzer
Definition: DQMEDAnalyzer.py:1
TrackEfficiencyMonitor::deltaX
MonitorElement * deltaX
Definition: TrackEfficiencyMonitor.h:101
TrackEfficiencyMonitor::muonToken_
edm::EDGetTokenT< edm::View< reco::Muon > > muonToken_
Definition: TrackEfficiencyMonitor.h:119
TransientTrackBuilder.h
edm::ParameterSet
Definition: ParameterSet.h:47
Event.h
TrackEfficiencyMonitor::theRadius_
double theRadius_
Definition: TrackEfficiencyMonitor.h:70
TrackEfficiencyMonitor::dqmStore_
DQMStore * dqmStore_
Definition: TrackEfficiencyMonitor.h:67
TrackEfficiencyMonitor::mtToken_
const edm::ESGetToken< MeasurementTracker, CkfComponentsRecord > mtToken_
Definition: TrackEfficiencyMonitor.h:117
TrackEfficiencyMonitor::theSTATracksLabel_
edm::InputTag theSTATracksLabel_
Definition: TrackEfficiencyMonitor.h:77
TrackEfficiencyMonitor::muonEta
MonitorElement * muonEta
Definition: TrackEfficiencyMonitor.h:88
TrackEfficiencyMonitor::muonD0
MonitorElement * muonD0
Definition: TrackEfficiencyMonitor.h:90
DirectTrackerNavigation
Definition: DirectTrackerNavigation.h:26
TransientTrackBuilder
Definition: TransientTrackBuilder.h:16
TrackEfficiencyMonitor::theMuonServiceProxy
MuonServiceProxy * theMuonServiceProxy
Definition: TrackEfficiencyMonitor.h:110
edm::EventSetup
Definition: EventSetup.h:58
muonTagProbeFilters_cff.staTracks
staTracks
Definition: muonTagProbeFilters_cff.py:29
TrackEfficiencyMonitor::conf_
edm::ParameterSet conf_
Definition: TrackEfficiencyMonitor.h:68
TrackEfficiencyMonitor::failedToPropagate
int failedToPropagate
Definition: TrackEfficiencyMonitor.h:81
TrackEfficiencyMonitor
Definition: TrackEfficiencyMonitor.h:41
TrackEfficiencyMonitor::trackEta
MonitorElement * trackEta
Definition: TrackEfficiencyMonitor.h:96
edm::ESGetToken< TransientTrackBuilder, TransientTrackRecord >
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
TrackEfficiencyMonitor_cfi.theRadius
theRadius
Definition: TrackEfficiencyMonitor_cfi.py:10
TrackEfficiencyMonitor::StandaloneMuonPtEtaPhiLowPt
MonitorElement * StandaloneMuonPtEtaPhiLowPt
Definition: TrackEfficiencyMonitor.h:106
TrackEfficiencyMonitor::SemiCylinder
SemiCylinder
Definition: TrackEfficiencyMonitor.h:51
TrackEfficiencyMonitor::muonCompatibleLayers
MonitorElement * muonCompatibleLayers
Definition: TrackEfficiencyMonitor.h:91
Frameworkfwd.h
TrackEfficiencyMonitor::trackEfficiency_
bool trackEfficiency_
Definition: TrackEfficiencyMonitor.h:73
GeometricSearchTracker
Definition: GeometricSearchTracker.h:15
TrackEfficiencyMonitor::theTTrackBuilder
const TransientTrackBuilder * theTTrackBuilder
Definition: TrackEfficiencyMonitor.h:122
MuonServiceProxy.h
TrackEfficiencyMonitor::Down
Definition: TrackEfficiencyMonitor.h:51
TrackEfficiencyMonitor::theTKTracksLabel_
edm::InputTag theTKTracksLabel_
Definition: TrackEfficiencyMonitor.h:76
TrackEfficiencyMonitor_cfi.theMaxZ
theMaxZ
Definition: TrackEfficiencyMonitor_cfi.py:11
dqm::implementation::IBooker
Definition: DQMStore.h:43
TrackEfficiencyMonitor::Up
Definition: TrackEfficiencyMonitor.h:51
TrackEfficiencyMonitor::isBFieldOff_
bool isBFieldOff_
Definition: TrackEfficiencyMonitor.h:72
TrackEfficiencyMonitor::findDetLayer
bool findDetLayer
Definition: TrackEfficiencyMonitor.h:83
TrackEfficiencyMonitor::GlobalMuonPtEtaPhiHighPt
MonitorElement * GlobalMuonPtEtaPhiHighPt
Definition: TrackEfficiencyMonitor.h:107
ParameterSet.h
MuonServiceProxy
Definition: MuonServiceProxy.h:38
NavigationSchoolRecord.h
TrackEfficiencyMonitor::theNavigation
const DirectTrackerNavigation * theNavigation
Definition: TrackEfficiencyMonitor.h:109
TrackEfficiencyMonitor::deltaY
MonitorElement * deltaY
Definition: TrackEfficiencyMonitor.h:102
edm::Event
Definition: Event.h:73
MagneticField
Definition: MagneticField.h:19
TrackEfficiencyMonitor::trackCompatibleLayers
MonitorElement * trackCompatibleLayers
Definition: TrackEfficiencyMonitor.h:99
edm::InputTag
Definition: InputTag.h:15
TrackEfficiencyMonitor::ttbToken_
const edm::ESGetToken< TransientTrackBuilder, TransientTrackRecord > ttbToken_
Definition: TrackEfficiencyMonitor.h:112
reco::TrackCollection
std::vector< Track > TrackCollection
collection of Tracks
Definition: TrackFwd.h:14
TrackEfficiencyMonitor::trackerAcceptance
bool trackerAcceptance(TrajectoryStateOnSurface theTSOS, double theRadius, double theMaxZ)
Definition: TrackEfficiencyMonitor.cc:553
MeasurementTracker.h
TrackEfficiencyMonitor::nCompatibleLayers
int nCompatibleLayers
Definition: TrackEfficiencyMonitor.h:82