CMS 3D CMS Logo

MuonResidualsFromTrack.h
Go to the documentation of this file.
1 #ifndef Alignment_MuonAlignmentAlgorithms_MuonResidualsFromTrack_H
2 #define Alignment_MuonAlignmentAlgorithms_MuonResidualsFromTrack_H
3 
24 
28 
32 
37 //#include "TrackingTools/PatternTools/interface/Trajectory.h"
39 
43 
44 #include "TMatrixDSym.h"
45 #include "TMatrixD.h"
46 
47 #include <vector>
48 #include <map>
49 
51 
53 public:
54  // residuals from global muon trajectories
58  edm::ESHandle<DetIdAssociator> muonDetIdAssociator_,
60  const Trajectory *traj,
61  const reco::Track *recoTrack,
63  double maxResidual);
64 
65  // residuals from tracker muons
67  const reco::Muon *recoMuon,
68  AlignableNavigator *navigator,
69  double maxResidual);
70 
72 
73  void clear();
74 
75  const reco::Track *getTrack() { return m_recoTrack; }
76  const reco::Muon *getMuon() { return m_recoMuon; }
77 
78  int trackerNumHits() const { return m_tracker_numHits; }
79 
80  double trackerChi2() const { return m_tracker_chi2; }
81  double trackerRedChi2() const;
82  double normalizedChi2() const;
83 
84  bool contains_TIDTEC() const { return m_contains_TIDTEC; }
85 
86  const std::vector<DetId> chamberIds() const { return m_chamberIds; }
87 
89 
90  TMatrixDSym covMatrix(DetId chamberId);
91  TMatrixDSym corrMatrix(DetId chamberId);
92  TMatrixD choleskyCorrMatrix(DetId chamberId);
93 
94 private:
96 
100 
101  std::vector<DetId> m_chamberIds;
102  std::map<DetId, MuonChamberResidual *> m_dt13, m_dt2, m_csc;
103  std::map<DetId, TMatrixDSym> m_trkCovMatrix;
104 
106 
107  // pointer to its track
109 
110  // track muon
112 };
113 
114 #endif // Alignment_MuonAlignmentAlgorithms_MuonResidualsFromTrack_H
std::map< DetId, MuonChamberResidual * > m_csc
type
Definition: HCALResponse.h:21
std::vector< DetId > m_chamberIds
std::map< DetId, TMatrixDSym > m_trkCovMatrix
TMatrixDSym covMatrix(DetId chamberId)
MuonResidualsFromTrack(const edm::EventSetup &iSetup, edm::ESHandle< MagneticField > magneticField, edm::ESHandle< GlobalTrackingGeometry > globalGeometry, edm::ESHandle< DetIdAssociator > muonDetIdAssociator_, edm::ESHandle< Propagator > prop, const Trajectory *traj, const reco::Track *recoTrack, AlignableNavigator *navigator, double maxResidual)
const std::vector< DetId > chamberIds() const
std::map< DetId, MuonChamberResidual * > m_dt2
const reco::Muon * getMuon()
const reco::Track * getTrack()
TMatrixDSym corrMatrix(DetId chamberId)
Definition: DetId.h:17
const reco::Track * m_recoTrack
TMatrixD choleskyCorrMatrix(DetId chamberId)
void addTrkCovMatrix(DetId, TrajectoryStateOnSurface &)
std::map< DetId, MuonChamberResidual * > m_dt13
TrajectoryStateCombiner m_tsoscomb
MuonChamberResidual * chamberResidual(DetId chamberId, int type)