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>
25 
27 
34 
35 namespace reco {
36  class TransientTrack;
37 }
38 class NavigationSchool;
39 
41 public:
42  typedef reco::Track Track;
45  ~TrackEfficiencyMonitor() override;
46  void analyze(const edm::Event&, const edm::EventSetup&) override;
47 
48  void bookHistograms(DQMStore::IBooker&, edm::Run const&, edm::EventSetup const&) override;
49 
50  enum SemiCylinder { Up, Down };
51  std::pair<TrajectoryStateOnSurface, const DetLayer*> findNextLayer(
52  TrajectoryStateOnSurface startTSOS, const std::vector<const DetLayer*>& trackCompatibleLayers, bool isUpMuon);
56  const NavigationSchool& navigationSchool);
58  bool trackerAcceptance(TrajectoryStateOnSurface theTSOS, double theRadius, double theMaxZ);
59  int compatibleLayers(const NavigationSchool& navigationSchool, TrajectoryStateOnSurface theTSOS);
60 
61 private:
62  // ----------member data ---------------------------
63 
64  std::string histname; //for naming the histograms
65 
68 
69  double theRadius_;
70  double theMaxZ_;
72  bool trackEfficiency_; //1 if one wants to measure the tracking efficiency
73  //0 if one wants to measure the muon reco efficiency
74 
79 
83 
91 
99 
117 
119 };
120 #endif
TrackEfficiencyMonitor::thePropagatorCyl
edm::ESHandle< Propagator > thePropagatorCyl
Definition: TrackEfficiencyMonitor.h:113
TrackEfficiencyMonitor::muonZ
MonitorElement * muonZ
Definition: TrackEfficiencyMonitor.h:86
TrackEfficiencyMonitor::muonX
MonitorElement * muonX
Definition: TrackEfficiencyMonitor.h:84
TrackEfficiencyMonitor::trackPhi
MonitorElement * trackPhi
Definition: TrackEfficiencyMonitor.h:96
TrackEfficiencyMonitor::muonPhi
MonitorElement * muonPhi
Definition: TrackEfficiencyMonitor.h:88
TrackEfficiencyMonitor::GlobalMuonPtEtaPhiLowPt
MonitorElement * GlobalMuonPtEtaPhiLowPt
Definition: TrackEfficiencyMonitor.h:104
TrackEfficiencyMonitor::compatibleLayers
int compatibleLayers(const NavigationSchool &navigationSchool, TrajectoryStateOnSurface theTSOS)
Definition: TrackEfficiencyMonitor.cc:606
TrackEfficiencyMonitor::theTKTracksToken_
edm::EDGetTokenT< reco::TrackCollection > theTKTracksToken_
Definition: TrackEfficiencyMonitor.h:77
TrackEfficiencyMonitor::trackY
MonitorElement * trackY
Definition: TrackEfficiencyMonitor.h:93
edm::Run
Definition: Run.h:45
edm::EDGetTokenT< reco::TrackCollection >
TrackEfficiencyMonitor::theSTATracksToken_
edm::EDGetTokenT< reco::TrackCollection > theSTATracksToken_
Definition: TrackEfficiencyMonitor.h:78
TrackEfficiencyMonitor::checkSemiCylinder
SemiCylinder checkSemiCylinder(const Track &)
Definition: TrackEfficiencyMonitor.cc:553
TrackEfficiencyMonitor::histname
std::string histname
Definition: TrackEfficiencyMonitor.h:64
TrackEfficiencyMonitor::trackX
MonitorElement * trackX
Definition: TrackEfficiencyMonitor.h:92
DQMStore.h
TrackEfficiencyMonitor::analyze
void analyze(const edm::Event &, const edm::EventSetup &) override
Definition: TrackEfficiencyMonitor.cc:276
dqm::legacy::MonitorElement
Definition: MonitorElement.h:461
EDAnalyzer.h
NavigationSchool
Definition: NavigationSchool.h:18
reco
fixed size matrix
Definition: AlignmentAlgorithmBase.h:45
TrackEfficiencyMonitor::theTracker
edm::ESHandle< GeometricSearchTracker > theTracker
Definition: TrackEfficiencyMonitor.h:115
TrackEfficiencyMonitor::theMaxZ_
double theMaxZ_
Definition: TrackEfficiencyMonitor.h:70
TrackEfficiencyMonitor::~TrackEfficiencyMonitor
~TrackEfficiencyMonitor() override
Definition: TrackEfficiencyMonitor.cc:67
edm::Handle
Definition: AssociativeIterator.h:50
TrackEfficiencyMonitor::TrackCollection
reco::TrackCollection TrackCollection
Definition: TrackEfficiencyMonitor.h:43
TrackEfficiencyMonitor::trackD0
MonitorElement * trackD0
Definition: TrackEfficiencyMonitor.h:97
TrackEfficiencyMonitor::signDeltaY
MonitorElement * signDeltaY
Definition: TrackEfficiencyMonitor.h:103
TrackEfficiencyMonitor::bField
edm::ESHandle< MagneticField > bField
Definition: TrackEfficiencyMonitor.h:116
TrackEfficiencyMonitor::TrackEfficiencyMonitor
TrackEfficiencyMonitor(const edm::ParameterSet &)
Definition: TrackEfficiencyMonitor.cc:47
TrackEfficiencyMonitor::muonY
MonitorElement * muonY
Definition: TrackEfficiencyMonitor.h:85
TrajectoryStateOnSurface
Definition: TrajectoryStateOnSurface.h:16
MakerMacros.h
TrackEfficiencyMonitor::trackZ
MonitorElement * trackZ
Definition: TrackEfficiencyMonitor.h:94
dqm::legacy::DQMStore
Definition: DQMStore.h:727
MuonSelectors.h
Service.h
MuonFwd.h
TrackEfficiencyMonitor::testTrackerTracks
void testTrackerTracks(edm::Handle< TrackCollection > tkTracks, edm::Handle< TrackCollection > staTracks, const NavigationSchool &navigationSchool)
Definition: TrackEfficiencyMonitor.cc:365
TrackEfficiencyMonitor::signDeltaX
MonitorElement * signDeltaX
Definition: TrackEfficiencyMonitor.h:102
reco::Track
Definition: Track.h:27
edm::ESHandle< GeometricSearchTracker >
TrackEfficiencyMonitor::Track
reco::Track Track
Definition: TrackEfficiencyMonitor.h:42
DirectTrackerNavigation.h
TrackEfficiencyMonitor::StandaloneMuonPtEtaPhiHighPt
MonitorElement * StandaloneMuonPtEtaPhiHighPt
Definition: TrackEfficiencyMonitor.h:107
TrackEfficiencyMonitor::findNextLayer
std::pair< TrajectoryStateOnSurface, const DetLayer * > findNextLayer(TrajectoryStateOnSurface startTSOS, const std::vector< const DetLayer * > &trackCompatibleLayers, bool isUpMuon)
Definition: TrackEfficiencyMonitor.cc:675
TrackEfficiencyMonitor::bookHistograms
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
Definition: TrackEfficiencyMonitor.cc:72
EDGetToken.h
DQMEDAnalyzer.h
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
TrackEfficiencyMonitor::thePropagator
edm::ESHandle< Propagator > thePropagator
Definition: TrackEfficiencyMonitor.h:112
TrackEfficiencyMonitor::testSTATracks
void testSTATracks(edm::Handle< TrackCollection > tkTracks, edm::Handle< TrackCollection > staTracks)
Definition: TrackEfficiencyMonitor.cc:485
DQMEDAnalyzer
Definition: DQMEDAnalyzer.py:1
TrackEfficiencyMonitor::deltaX
MonitorElement * deltaX
Definition: TrackEfficiencyMonitor.h:100
TrackEfficiencyMonitor::muonToken_
edm::EDGetTokenT< edm::View< reco::Muon > > muonToken_
Definition: TrackEfficiencyMonitor.h:110
TransientTrackBuilder.h
edm::ParameterSet
Definition: ParameterSet.h:47
TrackEfficiencyMonitor::theGeometricSearchTracker
edm::ESHandle< GeometricSearchTracker > theGeometricSearchTracker
Definition: TrackEfficiencyMonitor.h:111
Event.h
TrackEfficiencyMonitor::theRadius_
double theRadius_
Definition: TrackEfficiencyMonitor.h:69
TrackEfficiencyMonitor::dqmStore_
DQMStore * dqmStore_
Definition: TrackEfficiencyMonitor.h:66
TrackEfficiencyMonitor::theSTATracksLabel_
edm::InputTag theSTATracksLabel_
Definition: TrackEfficiencyMonitor.h:76
TrackEfficiencyMonitor::muonEta
MonitorElement * muonEta
Definition: TrackEfficiencyMonitor.h:87
TrackEfficiencyMonitor::muonD0
MonitorElement * muonD0
Definition: TrackEfficiencyMonitor.h:89
DirectTrackerNavigation
Definition: DirectTrackerNavigation.h:26
TrackEfficiencyMonitor::theMuonServiceProxy
MuonServiceProxy * theMuonServiceProxy
Definition: TrackEfficiencyMonitor.h:109
edm::EventSetup
Definition: EventSetup.h:57
muonTagProbeFilters_cff.staTracks
staTracks
Definition: muonTagProbeFilters_cff.py:29
TrackEfficiencyMonitor::conf_
edm::ParameterSet conf_
Definition: TrackEfficiencyMonitor.h:67
TrackEfficiencyMonitor::failedToPropagate
int failedToPropagate
Definition: TrackEfficiencyMonitor.h:80
TrackEfficiencyMonitor
Definition: TrackEfficiencyMonitor.h:40
TrackEfficiencyMonitor::trackEta
MonitorElement * trackEta
Definition: TrackEfficiencyMonitor.h:95
TrackEfficiencyMonitor_cfi.theRadius
theRadius
Definition: TrackEfficiencyMonitor_cfi.py:10
TrackEfficiencyMonitor::StandaloneMuonPtEtaPhiLowPt
MonitorElement * StandaloneMuonPtEtaPhiLowPt
Definition: TrackEfficiencyMonitor.h:105
TrackEfficiencyMonitor::SemiCylinder
SemiCylinder
Definition: TrackEfficiencyMonitor.h:50
TrackEfficiencyMonitor::theTTrackBuilder
edm::ESHandle< TransientTrackBuilder > theTTrackBuilder
Definition: TrackEfficiencyMonitor.h:114
TrackEfficiencyMonitor::measurementTrackerHandle
edm::ESHandle< MeasurementTracker > measurementTrackerHandle
Definition: TrackEfficiencyMonitor.h:118
TrackEfficiencyMonitor::muonCompatibleLayers
MonitorElement * muonCompatibleLayers
Definition: TrackEfficiencyMonitor.h:90
Frameworkfwd.h
TrackEfficiencyMonitor::trackEfficiency_
bool trackEfficiency_
Definition: TrackEfficiencyMonitor.h:72
MuonServiceProxy.h
TrackEfficiencyMonitor::Down
Definition: TrackEfficiencyMonitor.h:50
TrackEfficiencyMonitor::theTKTracksLabel_
edm::InputTag theTKTracksLabel_
Definition: TrackEfficiencyMonitor.h:75
TrackEfficiencyMonitor_cfi.theMaxZ
theMaxZ
Definition: TrackEfficiencyMonitor_cfi.py:11
dqm::implementation::IBooker
Definition: DQMStore.h:43
TrackEfficiencyMonitor::Up
Definition: TrackEfficiencyMonitor.h:50
TrackEfficiencyMonitor::isBFieldOff_
bool isBFieldOff_
Definition: TrackEfficiencyMonitor.h:71
TrackEfficiencyMonitor::findDetLayer
bool findDetLayer
Definition: TrackEfficiencyMonitor.h:82
TrackEfficiencyMonitor::GlobalMuonPtEtaPhiHighPt
MonitorElement * GlobalMuonPtEtaPhiHighPt
Definition: TrackEfficiencyMonitor.h:106
ParameterSet.h
MuonServiceProxy
Definition: MuonServiceProxy.h:38
TrackEfficiencyMonitor::theNavigation
const DirectTrackerNavigation * theNavigation
Definition: TrackEfficiencyMonitor.h:108
TrackEfficiencyMonitor::deltaY
MonitorElement * deltaY
Definition: TrackEfficiencyMonitor.h:101
edm::Event
Definition: Event.h:73
TrackEfficiencyMonitor::trackCompatibleLayers
MonitorElement * trackCompatibleLayers
Definition: TrackEfficiencyMonitor.h:98
edm::InputTag
Definition: InputTag.h:15
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:560
MeasurementTracker.h
TrackEfficiencyMonitor::nCompatibleLayers
int nCompatibleLayers
Definition: TrackEfficiencyMonitor.h:81