#include <CSCStripTopology.h>
Public Member Functions | |
virtual CSCStripTopology * | clone () const =0 |
CSCStripTopology (int ns, float aw, float dh, float r, float aoff, float ymid) | |
std::pair< float, float > | equationOfStrip (float strip) const |
virtual std::ostream & | put (std::ostream &) const =0 |
std::pair< float, float > | yLimitsOfStripPlane () const |
~CSCStripTopology () override | |
Public Member Functions inherited from OffsetRadialStripTopology | |
virtual int | channel (int strip) const =0 |
int | channel (const LocalPoint &lp) const override=0 |
LocalPoint | localPosition (float strip) const override |
LocalPoint | localPosition (const MeasurementPoint &) const override |
MeasurementPoint | measurementPosition (const LocalPoint &) const override |
OffsetRadialStripTopology (int numberOfStrips, float stripPhiPitch, float detectorHeight, float radialDistance, float stripOffset, float yCentre) | |
float | strip (const LocalPoint &) const override |
float | stripAngle (float strip) const override |
virtual float | stripOffset (void) const |
~OffsetRadialStripTopology () override | |
Public Member Functions inherited from CSCRadialStripTopology | |
float | angularWidth () const override |
float | centreToIntersection () const override |
CSCRadialStripTopology (int ns, float aw, float dh, float r, float yAx=1.f, float yMid=0.) | |
float | detHeight () const override |
LocalError | localError (float strip, float stripErr2) const override |
LocalError | localError (const MeasurementPoint &, const MeasurementError &) const override |
float | localPitch (const LocalPoint &) const override |
float | localStripLength (const LocalPoint &) const override |
MeasurementError | measurementError (const LocalPoint &, const LocalError &) const override |
int | nearestStrip (const LocalPoint &) const override |
int | nstrips () const override |
float | originToIntersection () const override |
float | phiOfOneEdge () const override |
float | phiPitch (void) const override |
float | stripLength () const override |
float | xOfStrip (int strip, float y) const override |
float | yAxisOrientation () const override |
float | yCentreOfStripPlane () const override |
float | yDistanceToIntersection (float y) const override |
float | yExtentOfStripPlane () const override |
~CSCRadialStripTopology () override | |
Public Member Functions inherited from RadialStripTopology | |
virtual LocalError | localError (float strip, float stripErr2) const=0 |
virtual LocalError | localError (float strip, float stripErr2, const Topology::LocalTrackPred &) const |
conversion taking also the angle from the predicted track state More... | |
virtual LocalPoint | localPosition (float strip) const=0 |
virtual LocalPoint | localPosition (float strip, const Topology::LocalTrackPred &) const |
conversion taking also the predicted track state More... | |
float | pitch () const final |
~RadialStripTopology () override | |
Public Member Functions inherited from StripTopology | |
virtual float | coveredStrips (const LocalPoint &lp1, const LocalPoint &lp2) const |
virtual LocalError | localError (float strip, float stripErr2, const Topology::LocalTrackPred &) const |
conversion taking also the angle from the predicted track state More... | |
virtual LocalError | localError (const MeasurementPoint &, const MeasurementError &) const=0 |
virtual LocalError | localError (const MeasurementPoint &mp, const MeasurementError &me, const LocalTrackPred &) const |
conversion taking also the angle from the predicted track state More... | |
virtual float | localPitch (const LocalPoint &lp, const Topology::LocalTrackAngles &) const |
conversion taking also the angle from the track state (LocalTrajectoryParameters) More... | |
virtual LocalPoint | localPosition (const MeasurementPoint &) const=0 |
virtual LocalPoint | localPosition (const MeasurementPoint &mp, const LocalTrackPred &) const |
conversion taking also the angle from the predicted track state More... | |
virtual LocalPoint | localPosition (float strip, const Topology::LocalTrackPred &) const |
conversion taking also the predicted track state More... | |
virtual float | localStripLength (const LocalPoint &lp, const Topology::LocalTrackAngles &) const |
conversion taking also the angle from the track state (LocalTrajectoryParameters) More... | |
virtual float | strip (const LocalPoint &lp, const Topology::LocalTrackAngles &) const |
conversion taking also the angle from the track state (LocalTrajectoryParameters) More... | |
~StripTopology () override | |
Public Member Functions inherited from Topology | |
virtual int | channel (const LocalPoint &lp, const LocalTrackAngles &) const |
conversion taking also the angle from the track state More... | |
virtual LocalError | localError (const MeasurementPoint &mp, const MeasurementError &me, const LocalTrackPred &) const |
conversion taking also the angle from the predicted track state More... | |
virtual LocalPoint | localPosition (const MeasurementPoint &mp, const LocalTrackPred &) const |
conversion taking also the angle from the predicted track state More... | |
virtual MeasurementError | measurementError (const LocalPoint &lp, const LocalError &le, const LocalTrackAngles &) const |
conversion taking also the angle from the track state More... | |
virtual MeasurementPoint | measurementPosition (const LocalPoint &lp, const LocalTrackAngles &) const |
conversion taking also the angle from the track state More... | |
virtual | ~Topology () |
Friends | |
std::ostream & | operator<< (std::ostream &s, const CSCStripTopology &r) |
Additional Inherited Members | |
Public Types inherited from Topology | |
typedef Point2DBase< double, LocalTag > | Local2DPoint |
typedef Vector2D::MathVector | MathVector2D |
typedef Basic2DVector< double > | Vector2D |
ABC interface for all endcap muon CSC radial strip topologies.
In the Endcap Muon CSCs, the cathode strips are strictly fan-shaped, each subtending a constant azimuthal angle, and project to a point. In every station and ring except for ME13 the nominal (perfect) geometry has this point of intersection (approximately) on the beam line. That constraint is unused as far as possible in order to allow non-perfect geometry and misalignment scenarios.
Note that the base class RST is concrete but this class is again abstract (for both historical and operational reasons.)
Alternate strip layers in each CSC are relatively offset by half-a-strip width (except in ME11) so the CSCStripTopology must be an OffsetRadialStripTopology, rather than a simple RadialStripTopology in which the long symmetry axis of the plane of strips is aligned with the local y axis of the detector.
Definition at line 28 of file CSCStripTopology.h.
CSCStripTopology::CSCStripTopology | ( | int | ns, |
float | aw, | ||
float | dh, | ||
float | r, | ||
float | aoff, | ||
float | ymid | ||
) |
Constructor
ns | number of strips |
aw | angular width of a strip |
dh | detector height (extent of strip plane along long symmetry axis)) |
r | radial distance from symmetry centre of strip plane to the point at which the outer edges of the two extreme strips (projected) intersect. |
aoff | offset of y symmetry axis from local y as fraction of angular strip width. |
ymid | local y of symmetry centre of strip plane before it is offset. |
Definition at line 4 of file CSCStripTopology.cc.
|
override |
Definition at line 7 of file CSCStripTopology.cc.
|
pure virtual |
Implemented in CSCGangedStripTopology, and CSCUngangedStripTopology.
Referenced by CSCLayerGeometry::CSCLayerGeometry(), and CSCLayerGeometry::operator=().
std::pair< float, float > CSCStripTopology::equationOfStrip | ( | float | strip | ) | const |
Return slope and intercept of straight line representing (centre-line of) a strip in 2-dim local coordinates.
The return value is a pair p with p.first = m, p.second = c, where y=mx+c.
Definition at line 9 of file CSCStripTopology.cc.
References callgraph::cs, LogTrace, M_PI_2, CSCRadialStripTopology::originToIntersection(), OffsetRadialStripTopology::strip(), OffsetRadialStripTopology::stripAngle(), and funct::tan().
Referenced by CSCLayerGeometry::intersectionOfStripAndWire().
|
pure virtual |
Virtual output function which is used to implement op<<
Implemented in CSCGangedStripTopology, and CSCUngangedStripTopology.
Referenced by operator<<().
std::pair< float, float > CSCStripTopology::yLimitsOfStripPlane | ( | ) | const |
Return local y limits of strip plane
Definition at line 27 of file CSCStripTopology.cc.
References CSCRadialStripTopology::yCentreOfStripPlane(), and CSCRadialStripTopology::yExtentOfStripPlane().
Referenced by CSCLayerGeometry::yLimitsOfStripPlane().
|
friend |
Definition at line 39 of file CSCStripTopology.cc.