CMS 3D CMS Logo

MuonChamberResidual.h
Go to the documentation of this file.
1 #ifndef Alignment_MuonAlignmentAlgorithms_MuonChamberResidual_H
2 #define Alignment_MuonAlignmentAlgorithms_MuonChamberResidual_H
3 
23 
25 
27 public:
28  enum { kDT13, kDT2, kCSC };
29 
34 
35  virtual ~MuonChamberResidual() {}
36 
37  // has to be implemented for rechit based residuals
38  virtual void addResidual(
39  edm::ESHandle<Propagator> prop, const TrajectoryStateOnSurface *, const TrackingRecHit *, double, double) = 0;
40 
41  // has to be implemented for track muon segment residuals
42  virtual void setSegmentResidual(const reco::MuonChamberMatch *, const reco::MuonSegmentMatch *) = 0;
43 
44  int type() const { return m_type; }
45 
46  virtual double signConvention() const { return m_sign; }
47 
48  DetId chamberId() const { return m_chamberId; }
49 
51 
52  int numHits() const { return m_numHits; }
53 
54  double residual() const { return m_residual; }
55  double residual_error() const { return m_residual_error; }
56  double resslope() const { return m_resslope; }
57  double resslope_error() const { return m_resslope_error; }
58 
59  double chi2() const { return m_chi2; }
60  int ndof() const { return m_ndof; }
61 
62  double trackdxdz() const { return m_trackdxdz; }
63  double trackdydz() const { return m_trackdydz; }
64  double trackx() const { return m_trackx; }
65  double tracky() const { return m_tracky; }
66 
67  double ChambW() const { return m_ChambW; }
68  double Chambl() const { return m_Chambl; }
69 
70  double segdxdz() const { return m_segdxdz; }
71  double segdydz() const { return m_segdydz; }
72  double segx() const { return m_segx; }
73  double segy() const { return m_segy; }
74 
77  double global_residual() const;
78  double global_resslope() const;
79  double global_hitresid(int i) const;
80 
81  // individual hit methods
82  double hitresid(int i) const;
83  int hitlayer(int i) const;
84  double hitposition(int i) const;
85  DetId localid(int i) const { return m_localIDs[i]; }
86 
87 protected:
92 
93  int m_numHits;
94  std::vector<DetId> m_localIDs;
95  std::vector<double> m_localResids;
96  std::vector<double> m_individual_x;
97  std::vector<double> m_individual_y;
98  std::vector<double> m_individual_weight;
99 
100  int m_type;
101  double m_sign;
102  double m_chi2;
103  int m_ndof;
104  double m_residual;
106  double m_resslope;
108  double m_trackdxdz;
109  double m_trackdydz;
110  double m_trackx;
111  double m_tracky;
112  double m_segdxdz;
113  double m_segdydz;
114  double m_segx;
115  double m_segy;
116  double m_ChambW;
117  double m_Chambl;
118 };
119 
120 #endif // Alignment_MuonAlignmentAlgorithms_MuonChamberResidual_H
MuonChamberResidual::m_navigator
AlignableNavigator * m_navigator
Definition: MuonChamberResidual.h:89
Propagator.h
MuonChamberResidual::m_resslope_error
double m_resslope_error
Definition: MuonChamberResidual.h:107
MuonChamberResidual::resslope
double resslope() const
Definition: MuonChamberResidual.h:56
TrajectoryStateOnSurface.h
MuonChamberResidual::m_chamberId
DetId m_chamberId
Definition: MuonChamberResidual.h:90
mps_fire.i
i
Definition: mps_fire.py:355
Muon.h
MuonChamberResidual::m_localIDs
std::vector< DetId > m_localIDs
Definition: MuonChamberResidual.h:94
MuonChamberResidual::type
int type() const
Definition: MuonChamberResidual.h:44
MuonChamberResidual::m_segy
double m_segy
Definition: MuonChamberResidual.h:115
MuonChamberResidual::m_segdxdz
double m_segdxdz
Definition: MuonChamberResidual.h:112
ESHandle.h
MuonChamberResidual::global_hitresid
double global_hitresid(int i) const
Definition: MuonChamberResidual.cc:53
MuonChamberResidual::m_segx
double m_segx
Definition: MuonChamberResidual.h:114
MuonChamberResidual::m_residual
double m_residual
Definition: MuonChamberResidual.h:104
MuonChamberResidual::m_chi2
double m_chi2
Definition: MuonChamberResidual.h:102
MuonChamberResidual::setSegmentResidual
virtual void setSegmentResidual(const reco::MuonChamberMatch *, const reco::MuonSegmentMatch *)=0
TransientTrackingRecHit.h
MuonChamberResidual::segx
double segx() const
Definition: MuonChamberResidual.h:72
MuonChamberResidual::chamberId
DetId chamberId() const
Definition: MuonChamberResidual.h:48
MuonChamberResidual::segdydz
double segdydz() const
Definition: MuonChamberResidual.h:71
AlignableDetOrUnitPtr
Definition: AlignableDetOrUnitPtr.h:30
MuonChamberResidual::global_stubpos
align::GlobalPoint global_stubpos()
Definition: MuonChamberResidual.cc:45
MuonChamberResidual::segy
double segy() const
Definition: MuonChamberResidual.h:73
MuonChamberResidual::trackdxdz
double trackdxdz() const
Definition: MuonChamberResidual.h:62
AlignmentParameters.h
MuonChamberResidual::global_residual
double global_residual() const
Definition: MuonChamberResidual.cc:49
DetId
Definition: DetId.h:17
MuonChamberResidual::residual
double residual() const
Definition: MuonChamberResidual.h:54
TrajectoryStateOnSurface
Definition: TrajectoryStateOnSurface.h:16
MuonChamberResidual::addResidual
virtual void addResidual(edm::ESHandle< Propagator > prop, const TrajectoryStateOnSurface *, const TrackingRecHit *, double, double)=0
reco::MuonSegmentMatch
Definition: MuonSegmentMatch.h:12
MuonChamberResidual::m_segdydz
double m_segdydz
Definition: MuonChamberResidual.h:113
MuonChamberResidual::residual_error
double residual_error() const
Definition: MuonChamberResidual.h:55
HLT_2018_cff.navigator
navigator
Definition: HLT_2018_cff.py:11734
MuonFwd.h
edm::ESHandle< GlobalTrackingGeometry >
MuonChamberResidual::chi2
double chi2() const
Definition: MuonChamberResidual.h:59
MuonChamberResidual::hitposition
double hitposition(int i) const
Definition: MuonChamberResidual.cc:72
Point3DBase< Scalar, GlobalTag >
AlignableNavigator.h
AlignableNavigator
Definition: AlignableNavigator.h:25
MuonChamberResidual::MuonChamberResidual
MuonChamberResidual(edm::ESHandle< GlobalTrackingGeometry > globalGeometry, AlignableNavigator *navigator, DetId chamberId, AlignableDetOrUnitPtr chamberAlignable)
Definition: MuonChamberResidual.cc:13
MuonChamberResidual::hitlayer
int hitlayer(int i) const
Definition: MuonChamberResidual.cc:60
MuonChamberResidual::kDT2
Definition: MuonChamberResidual.h:28
MuonChamberResidual::numHits
int numHits() const
Definition: MuonChamberResidual.h:52
MuonChamberResidual::m_trackdydz
double m_trackdydz
Definition: MuonChamberResidual.h:109
MuonChamberResidual::chamberAlignable
AlignableDetOrUnitPtr chamberAlignable() const
Definition: MuonChamberResidual.h:50
MuonChamberResidual::trackx
double trackx() const
Definition: MuonChamberResidual.h:64
MuonChamberResidual::m_type
int m_type
Definition: MuonChamberResidual.h:100
MuonChamberResidual::signConvention
virtual double signConvention() const
Definition: MuonChamberResidual.h:46
MuonChamberResidual::m_ndof
int m_ndof
Definition: MuonChamberResidual.h:103
MuonChamberResidual
Definition: MuonChamberResidual.h:26
MuonChamberResidual::m_trackx
double m_trackx
Definition: MuonChamberResidual.h:110
MuonChamberResidual::m_sign
double m_sign
Definition: MuonChamberResidual.h:101
MuonChamberResidual::~MuonChamberResidual
virtual ~MuonChamberResidual()
Definition: MuonChamberResidual.h:35
MuonChamberResidual::kCSC
Definition: MuonChamberResidual.h:28
reco::MuonChamberMatch
Definition: MuonChamberMatch.h:10
MuonChamberResidual::m_individual_weight
std::vector< double > m_individual_weight
Definition: MuonChamberResidual.h:98
MuonChamberResidual::m_resslope
double m_resslope
Definition: MuonChamberResidual.h:106
MuonChamberResidual::m_individual_x
std::vector< double > m_individual_x
Definition: MuonChamberResidual.h:96
MuonChamberResidual::global_trackpos
align::GlobalPoint global_trackpos()
Definition: MuonChamberResidual.cc:41
TrackingRecHit
Definition: TrackingRecHit.h:21
MuonChamberResidual::m_ChambW
double m_ChambW
Definition: MuonChamberResidual.h:116
MuonChamberResidual::segdxdz
double segdxdz() const
Definition: MuonChamberResidual.h:70
Trajectory.h
MuonChamberResidual::m_individual_y
std::vector< double > m_individual_y
Definition: MuonChamberResidual.h:97
MuonChamberResidual::m_tracky
double m_tracky
Definition: MuonChamberResidual.h:111
MuonChamberResidual::m_globalGeometry
edm::ESHandle< GlobalTrackingGeometry > m_globalGeometry
Definition: MuonChamberResidual.h:88
MuonChamberResidual::ChambW
double ChambW() const
Definition: MuonChamberResidual.h:67
MuonChamberResidual::trackdydz
double trackdydz() const
Definition: MuonChamberResidual.h:63
MuonChamberResidual::tracky
double tracky() const
Definition: MuonChamberResidual.h:65
DetId.h
MuonChamberResidual::m_localResids
std::vector< double > m_localResids
Definition: MuonChamberResidual.h:95
MuonChamberResidual::m_numHits
int m_numHits
Definition: MuonChamberResidual.h:93
Alignable.h
MuonChamberResidual::m_chamberAlignable
AlignableDetOrUnitPtr m_chamberAlignable
Definition: MuonChamberResidual.h:91
MuonChamberResidual::hitresid
double hitresid(int i) const
Definition: MuonChamberResidual.cc:55
MuonChamberResidual::m_residual_error
double m_residual_error
Definition: MuonChamberResidual.h:105
MuonChamberResidual::ndof
int ndof() const
Definition: MuonChamberResidual.h:60
MuonChamberResidual::m_trackdxdz
double m_trackdxdz
Definition: MuonChamberResidual.h:108
GlobalTrackingGeometry.h
MuonChamberResidual::kDT13
Definition: MuonChamberResidual.h:28
MuonChamberResidual::global_resslope
double global_resslope() const
Definition: MuonChamberResidual.cc:51
MuonChamberResidual::Chambl
double Chambl() const
Definition: MuonChamberResidual.h:68
MuonChamberResidual::resslope_error
double resslope_error() const
Definition: MuonChamberResidual.h:57
MuonChamberResidual::localid
DetId localid(int i) const
Definition: MuonChamberResidual.h:85
MuonChamberResidual::m_Chambl
double m_Chambl
Definition: MuonChamberResidual.h:117