CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
MuonCSCChamberResidual.h
Go to the documentation of this file.
1 #ifndef Alignment_MuonAlignmentAlgorithms_MuonCSCChamberResidual_H
2 #define Alignment_MuonAlignmentAlgorithms_MuonCSCChamberResidual_H
3 
11 
13 public:
15  : MuonChamberResidual(globalGeometry, navigator, chamberId, chamberAlignable)
16  {};
17 
18  int type() const { return MuonChamberResidual::kCSC; };
19 
20  // for CSC, the residual is chamber local x, projected by the strip measurement direction
21  // for CSC, the resslope is dresx/dz, or tan(phi_y)
23 
24  double signConvention(const unsigned int rawId=0) const {
25  DetId id = m_chamberId;
26  if (rawId != 0) id = DetId(rawId);
27  GlobalVector zDirection(0., 0., 1.);
28  return (m_globalGeometry->idToDet(id)->toLocal(zDirection).z() > 0. ? 1. : -1.);
29  };
30 };
31 
32 #endif // Alignment_MuonAlignmentAlgorithms_MuonCSCChamberResidual_H
AlignableDetOrUnitPtr chamberAlignable() const
Definition: DetId.h:20
double signConvention(const unsigned int rawId=0) const
MuonCSCChamberResidual(edm::ESHandle< GlobalTrackingGeometry > globalGeometry, AlignableNavigator *navigator, DetId chamberId, AlignableDetOrUnitPtr chamberAlignable)
void addResidual(const TrajectoryStateOnSurface *tsos, const TransientTrackingRecHit *hit)
edm::ESHandle< GlobalTrackingGeometry > m_globalGeometry
DetId chamberId() const