14 double sinAngle =
sin(angle);
15 double cosAngle =
cos(angle);
17 double residual = cosAngle * (tsosChamberPos.
x() - hitChamberPos.
x()) + sinAngle * (tsosChamberPos.
y() - hitChamberPos.
y());
22 double weight = 1. / (xx*cosAngle*cosAngle + 2.*xy*sinAngle*cosAngle + yy*sinAngle*sinAngle);
24 double layerPosition = tsosChamberPos.
z();
39 m_trackx_xx += weight * layerPosition * layerPosition;
40 m_trackx_xy += weight * layerPosition * tsosChamberPos.
x();
46 m_tracky_xx += weight * layerPosition * layerPosition;
47 m_tracky_xy += weight * layerPosition * tsosChamberPos.
y();
std::vector< double > m_individual_y
LocalPoint localPosition() const
Sin< T >::type sin(const T &t)
std::vector< double > m_individual_x
std::vector< DetId > m_localIDs
align::RotationType toLocal(const align::RotationType &) const
Return in local frame a rotation given in global frame.
std::vector< double > m_localResids
Cos< T >::type cos(const T &t)
AlignableDetOrUnitPtr m_chamberAlignable
const AlignableSurface & surface() const
Return the Surface (global position and orientation) of the object.
int nearestStrip(const LocalPoint &lp) const
Basic2DVector< T > xy() const
virtual LocalError localPositionError() const =0
void addResidual(const TrajectoryStateOnSurface *tsos, const TransientTrackingRecHit *hit)
const CSCLayer * layer(CSCDetId id) const
Return the layer corresponding to given DetId.
edm::ESHandle< GlobalTrackingGeometry > m_globalGeometry
DetId geographicalId() const
virtual LocalPoint localPosition() const =0
std::vector< double > m_individual_weight
float stripAngle(int strip) const
const CSCLayerGeometry * geometry() const
T angle(T x1, T y1, T z1, T x2, T y2, T z2)