CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
TrackAnalyzer.h
Go to the documentation of this file.
1 #ifndef TrackAnalyzer_H
2 #define TrackAnalyzer_H
3 // -*- C++ -*-
4 //
5 //
9 // Original Author: Suchandra Dutta, Giorgia Mila
10 // Created: Thu 28 22:45:30 CEST 2008
11 
12 #include <memory>
13 #include <fstream>
23 
27 
28 class DQMStore;
29 
30 class BeamSpot;
32 {
33  public:
36  virtual ~TrackAnalyzer();
37  virtual void beginJob(DQMStore * dqmStore_);
38  virtual void beginRun(DQMStore * dqmStore_);
39 
40  virtual void analyze(const edm::Event& iEvent, const edm::EventSetup& iSetup, const reco::Track& track);
41 
42  void doSoftReset (DQMStore * dqmStore_);
43  void doReset (DQMStore * dqmStore_);
44  void undoSoftReset(DQMStore * dqmStore_);
45  void setLumiFlag();
46 
47  private:
48  void initHistos();
49  void fillHistosForState(const edm::EventSetup& iSetup, const reco::Track & track, std::string sname);
50  void bookHistosForState(std::string sname,DQMStore * dqmStore_);
51  void bookHistosForHitProperties(DQMStore * dqmStore_);
52  void bookHistosForLScertification(DQMStore * dqmStore_);
53  void bookHistosForBeamSpot(DQMStore * dqmStore_);
54  void bookHistosForTrackerSpecific(DQMStore * dqmStore_);
55  void fillHistosForHitProperties(const edm::EventSetup& iSetup, const reco::Track & track, std::string sname);
56  void fillHistosForLScertification(const edm::EventSetup& iSetup, const reco::Track & track, std::string sname);
57  void fillHistosForTrackerSpecific(const reco::Track & track);
58 
59  // ----------member data ---------------------------
61 
64 
66 
69  bool doBSPlots_;
70  bool doPVPlots_;
76  // ADD by Mia
82  // ADD by Mia in order to clean the tracking MEs
83  // do not plot *Theta* and TrackPx* and TrackPy*
86  // ADD by Mia in order to not plot DistanceOfClosestApproach w.r.t. (0,0,0)
87  // the DistanceOfClosestApproach w.r.t. the beam-spot is already shown in DistanceOfClosestApproachToBS
90 
92 
93  // ADD by Mia in order to turnON test MEs
95 
96  struct TkParameterMEs {
98  TrackP(NULL)
99  , TrackPx(NULL)
100  , TrackPy(NULL)
101  , TrackPz(NULL)
102  , TrackPt(NULL)
103 
104  , TrackPxErr(NULL)
105  , TrackPyErr(NULL)
106  , TrackPzErr(NULL)
107  , TrackPtErr(NULL)
108  , TrackPErr(NULL)
109 
111 
112  , TrackQ(NULL)
113 
114  , TrackPhi(NULL)
115  , TrackEta(NULL)
116  , TrackTheta(NULL)
117 
118  , TrackPhiErr(NULL)
119  , TrackEtaErr(NULL)
121 
126 
131 
135 
139 
143  {}
144 
150 
156 
158 
160 
164 
168 
173 
178 
182 
186 
190 
191  };
192  std::map<std::string, TkParameterMEs> TkParameterMEMap;
193 
194 
198 
203 
208 
210 
214 
216 
220 
224 
228 
251  // TESTING MEs
254 
255  // add by Mia in order to deal w/ LS transitions
258 
259 
267 
270  };
271  std::map<std::string, TkRecHitsPerSubDetMEs> TkRecHitsPerSubDetMEMap;
272 
273 
274 
275  std::string histname; //for naming the histograms according to algorithm used
276 };
277 #endif
MonitorElement * NumberOfRecHitsPerTrackVsPhi
MonitorElement * NumberOfValidRecHitsPerTrackVsPhi
MonitorElement * Chi2ProbVsPhi
MonitorElement * NumberOfLayersPerTrackVsPhi
MonitorElement * DistanceOfClosestApproachToPVVsPhi
MonitorElement * NumberOfRecHitVsPhiVsEtaPerTrack
bool doTrackerSpecific_
Definition: TrackAnalyzer.h:67
void fillHistosForTrackerSpecific(const reco::Track &track)
MonitorElement * NumberOfRecHitsPerTrackVsEta
MonitorElement * NumberOfValidRecHitsPerTrack
void fillHistosForHitProperties(const edm::EventSetup &iSetup, const reco::Track &track, std::string sname)
MonitorElement * Chi2oNDF_lumiFlag
MonitorElement * xPointOfClosestApproachToPV
MonitorElement * NumberOfLayersPerTrackVsPhi
MonitorElement * NumberOfLostRecHitsPerTrack
edm::ParameterSet conf_
Definition: TrackAnalyzer.h:65
void doReset(DQMStore *dqmStore_)
bool doGeneralPropertiesPlots_
Definition: TrackAnalyzer.h:72
void fillHistosForLScertification(const edm::EventSetup &iSetup, const reco::Track &track, std::string sname)
MonitorElement * Chi2oNDFVsPhi
MonitorElement * Chi2ProbVsPhi
MonitorElement * DistanceOfClosestApproachVsPhi
#define NULL
Definition: scimark2.h:8
std::map< std::string, TkParameterMEs > TkParameterMEMap
MonitorElement * NumberOfRecHitsPerTrackVsTheta
MonitorElement * algorithm
bool doHitPropertiesPlots_
Definition: TrackAnalyzer.h:74
MonitorElement * DistanceOfClosestApproach
bool doRecHitVsPhiVsEtaPerTrack_
Definition: TrackAnalyzer.h:75
MonitorElement * NumberOfLayersPerTrackVsTheta
MonitorElement * NumberOfRecHitsPerTrack_lumiFlag
std::map< std::string, TkRecHitsPerSubDetMEs > TkRecHitsPerSubDetMEMap
MonitorElement * NumberOfValidRecHitVsPhiVsEtaPerTrack
bool doMeasurementStatePlots_
Definition: TrackAnalyzer.h:73
MonitorElement * NumberOfRecHitsPerTrack
void bookHistosForTrackerSpecific(DQMStore *dqmStore_)
void bookHistosForState(std::string sname, DQMStore *dqmStore_)
MonitorElement * TESTDistanceOfClosestApproachToBSVsPhi
MonitorElement * NumberOfValidRecHitsPerTrackVsEta
bool doTrack2DChi2Plots_
Definition: TrackAnalyzer.h:80
virtual void beginJob(DQMStore *dqmStore_)
MonitorElement * Chi2ProbVsTheta
MonitorElement * Chi2oNDFVsEta
int iEvent
Definition: GenABIO.cc:243
MonitorElement * NumberOfRecHitsPerTrackVsPhi
MonitorElement * xPointOfClosestApproachVsZ0wrt000
void bookHistosForHitProperties(DQMStore *dqmStore_)
bool doDCAwrt000Plots_
Definition: TrackAnalyzer.h:89
MonitorElement * NumberOfRecHitsPerTrackVsTheta
MonitorElement * xPointOfClosestApproach
MonitorElement * Chi2oNDFVsTheta
bool doTrackLayersVsPhiVsEtaPerTrack_
Definition: TrackAnalyzer.h:79
MonitorElement * NumberOfValidRecHitsPerTrackVsEta
MonitorElement * NumberOfRecHitsPerTrackVsPhi
std::string TopFolder_
Definition: TrackAnalyzer.h:60
MonitorElement * xPointOfClosestApproachVsZ0wrtBS
MonitorElement * NumberOfValidRecHitsPerTrackVsPhi
MonitorElement * NumberOfValidRecHitVsPhiVsEtaPerTrack
MonitorElement * yPointOfClosestApproachToPV
MonitorElement * Chi2ProbVsTheta
MonitorElement * NumberOfRecHitsPerTrackVsEta
MonitorElement * Chi2oNDFVsTheta
MonitorElement * TrackThetaErr
MonitorElement * DistanceOfClosestApproachVsEta
MonitorElement * zPointOfClosestApproachVsPhi
MonitorElement * NumberOfLayersPerTrackVsEta
MonitorElement * NumberOfLayersPerTrackVsTheta
void fillHistosForState(const edm::EventSetup &iSetup, const reco::Track &track, std::string sname)
virtual void beginRun(DQMStore *dqmStore_)
MonitorElement * Chi2
virtual ~TrackAnalyzer()
bool doLumiAnalysis_
Definition: TrackAnalyzer.h:91
MonitorElement * NumberOfLayersPerTrackVsEta
MonitorElement * NumberOfValidRecHitsPerTrackVsTheta
edm::EDGetTokenT< reco::BeamSpot > beamSpotToken_
Definition: TrackAnalyzer.h:62
virtual void analyze(const edm::Event &iEvent, const edm::EventSetup &iSetup, const reco::Track &track)
MonitorElement * xPointOfClosestApproachVsZ0wrtPV
MonitorElement * yPointOfClosestApproachVsZ0wrtBS
MonitorElement * NumberOfLayersPerTrack
MonitorElement * DistanceOfClosestApproachVsTheta
MonitorElement * NumberOfLayersPerTrackVsEta
bool doDCAwrtPVPlots_
Definition: TrackAnalyzer.h:88
MonitorElement * Chi2ProbVsEta
MonitorElement * zPointOfClosestApproachToPV
MonitorElement * DistanceOfClosestApproachToPV
bool doTrackPxPyPlots_
Definition: TrackAnalyzer.h:85
MonitorElement * NumberOfRecHitVsPhiVsEtaPerTrack
MonitorElement * DistanceOfClosestApproachToBSVsPhi
bool doLayersVsPhiVsEtaPerTrack_
Definition: TrackAnalyzer.h:77
void doSoftReset(DQMStore *dqmStore_)
bool doTrackRecHitVsPhiVsEtaPerTrack_
Definition: TrackAnalyzer.h:78
MonitorElement * yPointOfClosestApproachVsZ0wrt000
MonitorElement * TrackPtErrVsEta
MonitorElement * TESTDistanceOfClosestApproachToBS
MonitorElement * NumberOfRecHitsPerTrackVsEta
MonitorElement * NumberOfValidRecHitsPerTrackVsTheta
MonitorElement * yPointOfClosestApproach
MonitorElement * NumberOfLayersVsPhiVsEtaPerTrack
bool doRecHitsPerTrackProfile_
Definition: TrackAnalyzer.h:81
MonitorElement * Chi2Prob
void bookHistosForBeamSpot(DQMStore *dqmStore_)
MonitorElement * yPointOfClosestApproachVsZ0wrtPV
MonitorElement * zPointOfClosestApproach
TrackAnalyzer(const edm::ParameterSet &)
MonitorElement * Chi2ProbVsEta
MonitorElement * DistanceOfClosestApproachToBS
MonitorElement * Chi2oNDF
std::string histname
MonitorElement * Chi2oNDFVsEta
void bookHistosForLScertification(DQMStore *dqmStore_)
void undoSoftReset(DQMStore *dqmStore_)
MonitorElement * NumberOfLayersPerTrackVsPhi
edm::EDGetTokenT< reco::VertexCollection > pvToken_
Definition: TrackAnalyzer.h:63
MonitorElement * Chi2oNDFVsPhi