 |
ATLAS Offline Software
|
Go to the documentation of this file.
10 #ifndef MUONREADOUTGEOMETRY_RPCREADOUTELEMENT_H
11 #define MUONREADOUTGEOMETRY_RPCREADOUTELEMENT_H
20 class ReadoutGeomCnvAlg;
240 std::array<double, s_maxphipanels>
m_etastrip_s{make_array<double, s_maxphipanels>(-9999.)};
242 std::array<double, s_nLayers>
m_gasGap_xPos{make_array<double,s_nLayers>(-9999.)};
258 #endif // MUONREADOUTGEOMETRY_RPCREADOUTELEMENT_H
double m_first_etastrip_z
static constexpr int s_nLayers
double StripPanelDead(bool measphi) const
returns strip panel dead area for the phi or eta plane
const Amg::Vector3D REcenter() const
center of an RPC RE is not trivially the center of the first surface, overloading MuonClusterReadoutE...
const RpcIdHelper & m_idHelper
Ensure that the Athena extensions are properly loaded.
Amg::Vector3D gasGapPos(int doubletPhi, int gasGap) const
Returns the centre of the gasGap.
int NphiStripPanels() const
returns the number of phi strip panels (1 or 2)
double gasGapZsize() const
returns the gas gap Z size
virtual double distanceToReadout(const Amg::Vector2D &pos, const Identifier &id) const override final
distance to readout.
double stripPanelSsize(bool measphi) const
returns strip panel S size for the phi or eta plane
double StripLength(bool measphi) const
returns the strip length for the phi or eta plane
std::array< double, s_maxphipanels > m_first_phistrip_s
double stripPanelZsize(bool measphi) const
returns strip panel Z size for the phi or eta plane
int nGasGapPerLay() const
returns the number of gasgaps
Eigen::Matrix< double, 2, 1 > Vector2D
RpcReadoutElement(GeoVFullPhysVol *pv, const std::string &stName, int zi, int fi, bool is_mirrored, MuonDetectorManager *mgr)
constructor
void setDoubletR(int doubletR)
Amg::Transform3D globalToLocalTransf(const Identifier &id) const
~RpcReadoutElement()
destructor
double localStripZCoord(bool measphi, int strip) const
virtual int stripNumber(const Amg::Vector2D &pos, const Identifier &id) const override final
strip number corresponding to local position.
virtual bool spacePointPosition(const Identifier &phiId, const Identifier &etaId, Amg::Vector2D &pos) const override final
space point position for a given pair of phi and eta identifiers The LocalPosition is expressed in th...
An RpcReadoutElement corresponds to a single RPC module; therefore typicaly a barrel muon station con...
double localStripSCoord(int doubletPhi, bool measphi, int strip) const
bool const RAWDATA *ch2 const
bool hasDEDontop() const
return whether the RPC is 'up-side-down'
virtual bool measuresPhi(const Identifier &id) const override final
returns whether the current identifier corresponds to a phi measurement
void initDesign()
initialize the design classes for this readout element
virtual int boundaryHash(const Identifier &id) const override final
returns the hash function to be used to look up the surface boundary for a given identifier
Amg::Vector3D globalToLocalCoords(const Amg::Vector3D &x, const Identifier &id) const
virtual int numberOfStrips(const Identifier &layerId) const override final
number of strips per layer
const Muon::IMuonIdHelperSvc * idHelperSvc() const
std::array< double, s_maxphipanels > m_etastrip_s
std::vector< MuonStripDesign > m_etaDesigns
Amg::Vector3D localToGlobalCoords(const Amg::Vector3D &x, const Identifier &id) const
Attention: these transformations do not represent the tracking transformations as obtained by the tra...
Amg::Transform3D localToGlobalTransf(const Identifier &id) const
int getDoubletR() const
return DoubletR value for the given readout element
The ReadoutGeomCnvAlg converts the Run4 Readout geometry build from the GeoModelXML into the legacy M...
double distanceToPhiReadout(const Amg::Vector3D &P) const
bool inTheRibs() const
returns whether the RE is in the ribs of the muon spectrometer
int NphiStrips() const
returns the number of phi strips
Eigen::Affine3d Transform3D
void setNumberOfLayers(const int=2)
int getDoubletPhi() const
return DoubletPhi value for the given readout element, be aware that one RE can contain two DoubletPh...
const MuonStripDesign * getDesign(const Identifier &id) const
returns the MuonStripDesign class for the given identifier
void setDoubletPhi(int doubletPhi)
int NetaStrips() const
returns the number of eta strips
void setZTranslation(const double z)
void setYTranslation(const double y)
void setDoubletZ(int dobuletZ)
Amg::Vector3D localStripPos(int doubletPhi, int gasGap, bool measphi, int strip) const
Returns the local strip position in the AMDB frame.
virtual bool containsId(const Identifier &id) const override
function to be used to check whether a given Identifier is contained in the readout element
Definition of ATLAS Math & Geometry primitives (Amg)
virtual bool stripPosition(const Identifier &id, Amg::Vector2D &pos) const override final
strip position If the strip number is outside the range of valid strips, the function will return fal...
bool rotatedRpcModule() const
std::vector< MuonStripDesign > m_phiDesigns
virtual int surfaceHash(const Identifier &id) const override final
returns the hash to be used to look up the surface and transform in the MuonClusterReadoutElement tra...
Amg::Vector3D stripPos(const Identifier &id) const
Amg::Vector3D localGasGapPos(const Identifier &id) const
Returns the position of the gasGap w.r.t. rest frame of the chamber.
virtual int layerHash(const Identifier &id) const override final
returns the hash to be used to look up the normal and center in the MuonClusterReadoutElement trackin...
double StripPitch(bool measphi) const
returns the strip pitch for the phi or eta plane
Eigen::Matrix< double, 3, 1 > Vector3D
virtual int numberOfLayers(bool measphi=true) const override final
number of layers in phi/eta projection, same for eta/phi planes
static constexpr int s_maxphipanels
bool isDescrAtNegZ() const
double StripWidth(bool measphi) const
returns the strip width for the phi or eta plane
virtual void fillCache() override final
function to fill tracking cache
std::array< double, s_nLayers > m_gasGap_xPos
Array caching the distance of the gasGap center to the origin plane in global radial direction.
The MuonDetectorManager stores the transient representation of the Muon Spectrometer geometry and pro...
double gasGapSsize() const
returns the gas gap S size
int Nstrips(bool measphi) const
returns the number of strips for the phi or eta plane
double distanceToEtaReadout(const Amg::Vector3D &P) const
int getDoubletZ() const
return DoubletZ value for the given readout element
virtual const RpcIdHelper & rpcIdHelper() const =0
access to RpcIdHelper