CMS 3D CMS Logo

MuonRecoAnalyzer.h
Go to the documentation of this file.
1 #ifndef DQMOffline_Muon_MuonRecoAnalyzer_h
2 #define DQMOffline_Muon_MuonRecoAnalyzer_h
3 
10 #include <memory>
11 #include <fstream>
18 
21 
28 
30 public:
33 
35  ~MuonRecoAnalyzer() override;
36 
38  void analyze(const edm::Event&, const edm::EventSetup&) override;
39  void bookHistograms(DQMStore::IBooker&, edm::Run const&, edm::EventSetup const&) override;
40 
41  //calculate residual & pull:
42  void GetRes(reco::TrackRef t1, reco::TrackRef t2, std::string par, float& res, float& pull);
43 
44  //Functions needed by the SoftMuon MVA monitoring
45  double getDeltaR(reco::Track track1, reco::Track track2);
46 
47  int getPv(int tidx, const reco::VertexCollection* vc);
48 
49 private:
50  // ----------member data ---------------------------
52 
57 
58  // Switch for verbosity
60  bool doMVA;
61  bool useGEM;
63 
64  //histo binning parameters
65  int etaBin;
66  double etaMin;
67  double etaMax;
68 
69  int thetaBin;
70  double thetaMin;
71  double thetaMax;
72 
73  int phiBin;
74  double phiMin;
75  double phiMax;
76 
77  int chi2Bin;
78  double chi2Min;
79  double chi2Max;
80 
81  int pBin;
82  double pMin;
83  double pMax;
84 
85  int ptBin;
86  double ptMin;
87  double ptMax;
88 
89  int pResBin;
90  double pResMin;
91  double pResMax;
92 
93  int rhBin;
94  double rhMin;
95  double rhMax;
96 
97  int tunePBin;
98  double tunePMin;
99  double tunePMax;
100 
101  //the histos
103  // global muon
104  std::vector<MonitorElement*> etaGlbTrack;
105  std::vector<MonitorElement*> etaResolution;
106  std::vector<MonitorElement*> thetaGlbTrack;
107  std::vector<MonitorElement*> thetaResolution;
108  std::vector<MonitorElement*> phiGlbTrack;
109  std::vector<MonitorElement*> phiResolution;
110  std::vector<MonitorElement*> chi2OvDFGlbTrack;
111  std::vector<MonitorElement*> probchi2GlbTrack;
112  std::vector<MonitorElement*> pGlbTrack;
113  std::vector<MonitorElement*> ptGlbTrack;
114  std::vector<MonitorElement*> qGlbTrack;
115  std::vector<MonitorElement*> qOverpResolution;
116  std::vector<MonitorElement*> qOverptResolution;
117  std::vector<MonitorElement*> oneOverpResolution;
118  std::vector<MonitorElement*> oneOverptResolution;
119  std::vector<MonitorElement*> rhAnalysis;
120  std::vector<MonitorElement*> muVStkSytemRotation;
121  std::vector<MonitorElement*> phiVsetaGlbTrack;
122  std::vector<MonitorElement*> phiVsetaGlbTrack_badlumi;
123 
124  //Soft MVA Muon
156 
158 
166 
167  // tracker muon
176  // sta muon
185  // efficiency
186  std::vector<MonitorElement*> etaEfficiency;
187  std::vector<MonitorElement*> phiEfficiency;
188 
189  bool IsminiAOD;
191 };
192 #endif // DQMOffline_Muon_MuonRecoAnalyzer_h
MonitorElement * NTrkVHitsSoftMuonMVA
MonitorElement * muReco
std::vector< MonitorElement * > oneOverpResolution
MonitorElement * deltaRSoftMuonMVA
MonitorElement * trkRelChi2SoftMuonMVA
MonitorElement * qOverptPull
std::vector< MonitorElement * > ptGlbTrack
std::vector< MonitorElement * > chi2OvDFGlbTrack
std::vector< MonitorElement * > phiVsetaGlbTrack_badlumi
MonitorElement * gNchi2SoftMuonMVA
std::vector< MonitorElement * > phiVsetaGlbTrack
MonitorElement * getMuonHitsPerStationSoftMuonMVA
MonitorElement * segCompSoftMuonMVA
MonitorElement * iValFracSoftMuonMVA
MonitorElement * outerChi2SoftMuonMVA
MonitorElement * etaStaTrack
MonitorElement * vGEMhitsSoftMuonMVA
MonitorElement * vRPChitsSoftMuonMVA
std::vector< Vertex > VertexCollection
collection of Vertex objects
Definition: VertexFwd.h:9
MonitorElement * dzRefSoftMuonMVA
edm::EDGetTokenT< DcsStatusCollection > dcsStatusCollection_
std::vector< MonitorElement * > phiGlbTrack
MonitorElement * LWHSoftMuonMVA
MonitorElement * chi2OvDFStaTrack
MonitorElement * vMuHitsSoftMuonMVA
MonitorElement * phiStaTrack
MonitorElement * vDThitsSoftMuonMVA
std::string theFolder
MonitorElement * qOverpPull
Definition: Electron.h:6
void analyze(const edm::Event &, const edm::EventSetup &) override
Inizialize parameters for histo binning.
std::vector< MonitorElement * > phiEfficiency
MonitorElement * mNuStationsSoftMuonMVA
MonitorElement * etaTrack
MonitorElement * innerChi2SoftMuonMVA
double getDeltaR(reco::Track track1, reco::Track track2)
MonitorElement * chi2OvDFTrack
std::vector< MonitorElement * > qOverptResolution
std::vector< MonitorElement * > etaGlbTrack
std::vector< MonitorElement * > pGlbTrack
std::vector< MonitorElement * > qOverpResolution
MonitorElement * timeAtIpInOutSoftMuonMVA
MonitorElement * oneOverpPull
std::string metname
MonitorElement * valPixHitsSoftMuonMVA
std::vector< MonitorElement * > qGlbTrack
MonitorElement * pTrack
MonitorElement * timeAtIpInOutErrSoftMuonMVA
std::vector< MonitorElement * > probchi2GlbTrack
std::vector< MonitorElement * > etaResolution
edm::EDGetTokenT< reco::BeamSpot > theBeamSpotLabel_
MonitorElement * ptSoftMuonMVA
MonitorElement * oneOverptPull
MonitorElement * tunePResolution
MonitorElement * glbKinkFinderLogSoftMuonMVA
std::vector< MonitorElement * > etaEfficiency
MonitorElement * dxyRefSoftMuonMVA
void GetRes(reco::TrackRef t1, reco::TrackRef t2, std::string par, float &res, float &pull)
MonitorElement * staRelChi2SoftMuonMVA
MonitorElement * thetaStaTrack
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
edm::EDGetTokenT< edm::View< reco::Muon > > theMuonCollectionLabel_
std::vector< MonitorElement * > phiResolution
edm::ParameterSet parameters
MonitorElement * chi2LocMomSoftMuonMVA
std::vector< MonitorElement * > thetaGlbTrack
int getPv(int tidx, const reco::VertexCollection *vc)
MonitorElement * phiPull
MonitorElement * phiTrack
MonitorElement * vCSChitsSoftMuonMVA
std::vector< MonitorElement * > oneOverptResolution
MonitorElement * probchi2Track
std::vector< MonitorElement * > muVStkSytemRotation
MonitorElement * kinkFinderSoftMuonMVA
MonitorElement * ptTrack
MonitorElement * glbKinkFinderSoftMuonMVA
MonitorElement * chi2LocPosSoftMuonMVA
MonitorElement * glbDeltaEtaPhiSoftMuonMVA
MonitorElement * QprodSoftMuonMVA
MonitorElement * probchi2StaTrack
MonitorElement * ptStaTrack
std::vector< MonitorElement * > rhAnalysis
MonitorElement * etaPull
MonitorElement * pStaTrack
~MuonRecoAnalyzer() override
Destructor.
MonitorElement * thetaTrack
std::vector< MonitorElement * > thetaResolution
MonitorElement * glbTrackTailProbSoftMuonMVA
MonitorElement * qTrack
MonitorElement * thetaPull
Definition: Run.h:45
MonitorElement * qStaTrack
MuonRecoAnalyzer(const edm::ParameterSet &)
Constructor.
edm::EDGetTokenT< reco::VertexCollection > theVertexLabel_