|
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef INDETREADOUTGEOMETRY_STRIPANNULUSDESIGN_H
6 #define INDETREADOUTGEOMETRY_STRIPANNULUSDESIGN_H
31 #include "CLHEP/Geometry/Vector3D.h"
32 #include "CLHEP/Geometry/Transform3D.h"
38 class RectangleBounds;
43 class SiDiodesParameters;
54 const double &stripStart,
55 const double &stripEnd);
70 double &phiDist)
const;
79 std::pair<SiLocalPosition, SiLocalPosition>
endsOfStrip(
108 std::vector<SiCellId> &neighbours)
const;
123 double width()
const;
199 throw std::runtime_error(
"Call to phiMeasureSegment, DEPRECATED, not implemented.");
206 throw std::runtime_error(
207 "Call to distanceToDetectorEdge which is Deprecated and not yet implemented");
231 #endif // INDETREADOUTGEOMETRY_STRIPANNULUSDESIGN_H
bool swapHitEtaReadoutDirection() const
bool inActiveArea(const SiLocalPosition &chargePos, bool checkBondGap=false) const
check if the position is in active area
double thickness() const
Method which returns thickness of the silicon wafer.
std::unique_ptr< Trk::RectangleBounds > m_bounds
StripAnnulusDesign(const SiDetectorDesign::Axis &stripDirection, const SiDetectorDesign::Axis &thicknessDirection, const double &thickness, const int &readoutSide, const InDetDD::CarrierType &carrier, const int &nStrips, const double &pitch, const double &stripStart, const double &stripEnd)
double length() const
Method to calculate length of a module.
void distanceToDetectorEdge(const SiLocalPosition &localPosition, double &etaDist, double &phiDist) const
DEPRECATED: Unused (2014)
int readoutSide() const
ReadoutSide.
SiCellId cellIdOfPosition(const SiLocalPosition &localPos) const
position -> id
~StripAnnulusDesign()=default
int phiIndex() const
Get phi index. Equivalent to strip().
StripAnnulusDesign & operator=(const StripAnnulusDesign &design)
SiCellId cellIdInRange(const SiCellId &) const
Check if cell is in range.
double deadAreaUpperBoundary() const
DEPRECATED for StripAnnulusDesign; no dead area.
HepGeom::Vector3D< double > phiMeasureSegment(const SiLocalPosition &position) const
Helper method for stereo angle computation, DEPRECATED.
Amg::Vector3D sensorCenter() const
Return the centre of a sensor in the local reference frame.
SiLocalPosition localPositionOfCluster(const SiCellId &cellId, int clusterSize) const
double phiPitch() const
Pitch in phi direction.
double m_stripStartRadius
SiReadoutCellId readoutIdOfCell(const SiCellId &cellId) const
diode id -> readout id
double scaledDistanceToNearestDiode(const SiLocalPosition &chargePos) const
give distance to the nearest diode in units of pitch, from 0.0 to 0.5, this method should be fast as ...
Eigen::Affine3d Transform3D
double minWidth() const
Method to calculate minimum width of a module.
SiDiodesParameters parameters(const SiCellId &cellId) const
Return strip width, centre, length etc. Hard to find if this is used or not.
double width() const
Method to calculate average width of a module.
void neighboursOfCell(const SiCellId &cellId, std::vector< SiCellId > &neighbours) const
Get the neighbouring diodes of a given diode: Cell for which the neighbours must be found List of cel...
int nStrips(const MuonGM::TgcReadoutElement &readoutEle, int layer)
Ensure that the ATLAS eigen extensions are properly loaded.
StripAnnulusDesign(const StripAnnulusDesign &design)
double deadAreaLength() const
give length of dead area
SiLocalPosition positionFromStrip(const SiCellId &cellId) const
Eigen::Matrix< double, 3, 1 > Vector3D
double stripLength(const SiCellId &cellId) const
double pitch(const SiCellId &cellId) const
bool nearBondGap(const SiLocalPosition &, double) const
Test if near bond gap within tolerances, only relevant for SCT.
std::pair< SiLocalPosition, SiLocalPosition > endsOfStrip(const SiLocalPosition &position) const
Give end points of the strip that covers the given position.
double deadAreaLowerBoundary() const
give lower boundary of dead area
static const Amg::Transform3D SiHitToGeoModel()
double stripPitch() const
give the strip pitch (For Forward returns pitch at center)
const Trk::SurfaceBounds & bounds() const
Element boundary.
double maxWidth() const
Method to calculate maximum width of a module.
SiLocalPosition localPositionOfCell(const SiCellId &cellId) const
id -> position
bool swapHitPhiReadoutDirection() const
Return true if hit local direction is the same as readout direction.