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 {
54 public:
55  // residuals from global muon trajectories
59  edm::ESHandle<DetIdAssociator> muonDetIdAssociator_,
61  const Trajectory *traj,
62  const reco::Track* recoTrack,
64  double maxResidual );
65 
66  // residuals from tracker muons
68  const reco::Muon *recoMuon,
69  AlignableNavigator *navigator,
70  double maxResidual);
71 
73 
74  void clear();
75 
76  const reco::Track *getTrack() { return m_recoTrack; }
77  const reco::Muon *getMuon() { return m_recoMuon; }
78 
79  int trackerNumHits() const { return m_tracker_numHits; }
80 
81  double trackerChi2() const { return m_tracker_chi2; }
82  double trackerRedChi2() const;
83  double normalizedChi2() const;
84 
85  bool contains_TIDTEC() const { return m_contains_TIDTEC; }
86 
87  const std::vector<DetId> chamberIds() const { return m_chamberIds; }
88 
90 
91  TMatrixDSym covMatrix(DetId chamberId);
92  TMatrixDSym corrMatrix(DetId chamberId);
93  TMatrixD choleskyCorrMatrix(DetId chamberId);
94 
95 private:
97 
101 
102  std::vector<DetId> m_chamberIds;
103  std::map<DetId,MuonChamberResidual*> m_dt13, m_dt2, m_csc;
104  std::map<DetId,TMatrixDSym> m_trkCovMatrix;
105 
107 
108  // pointer to its track
110 
111  // track muon
113 };
114 
115 #endif // Alignment_MuonAlignmentAlgorithms_MuonResidualsFromTrack_H
type
Definition: HCALResponse.h:21
std::vector< DetId > m_chamberIds
std::map< DetId, MuonChamberResidual * > m_dt2
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)
std::map< DetId, MuonChamberResidual * > m_csc
const std::vector< DetId > chamberIds() const
const reco::Muon * getMuon()
const reco::Track * getTrack()
TMatrixDSym corrMatrix(DetId chamberId)
Definition: DetId.h:18
const reco::Track * m_recoTrack
std::map< DetId, TMatrixDSym > m_trkCovMatrix
TMatrixD choleskyCorrMatrix(DetId chamberId)
void addTrkCovMatrix(DetId, TrajectoryStateOnSurface &)
std::map< DetId, MuonChamberResidual * > m_dt13
TrajectoryStateCombiner m_tsoscomb
MuonChamberResidual * chamberResidual(DetId chamberId, int type)