![Logo](../../ATLAS-Logo-Square-Blue-RGB.png) |
ATLAS Offline Software
|
#include <MdtCalibInput.h>
Definition at line 27 of file MdtCalibInput.h.
◆ BFieldComp
◆ MdtCalibInput() [1/4]
Constructor taking the MdtDigits – Typically used inside digitization or RDO -> PRD conversion Given that digits don't have intrinsically any readout element attached, the detector manager needs to parsed for fetching the proper element.
Definition at line 22 of file MdtCalibInput.cxx.
◆ MdtCalibInput() [2/4]
◆ MdtCalibInput() [3/4]
◆ MdtCalibInput() [4/4]
◆ adc()
int MdtCalibInput::adc |
( |
| ) |
const |
◆ closestApproach()
Returns the point of closest approach to the wire.
Definition at line 69 of file MdtCalibInput.cxx.
◆ decriptor()
◆ distanceToTrack()
double MdtCalibInput::distanceToTrack |
( |
| ) |
const |
◆ globalPos()
◆ idealSurface()
Returns the assocaited ideal surface (Throw exception if no legacy RE is available)
Definition at line 102 of file MdtCalibInput.cxx.
104 std::stringstream except{};
105 except<<__FILE__<<
":"<<__LINE__<<
" idealSurface() can only be called together with the legacy readout geometry";
106 throw std::runtime_error(except.str());
◆ identify()
◆ isMasked()
bool MdtCalibInput::isMasked |
( |
| ) |
const |
Returns whether the constructing digit has been masked.
Definition at line 67 of file MdtCalibInput.cxx.
◆ legacyDescriptor()
◆ projectMagneticField()
Splits the B-field into the components that point along the transverse track direction & along the tube wire.
Rotate the B-field into the rest frame of the tube (Z-axis along the wire)
In the local coordinate system, the wire points along the z-axis
Convert kilo tesla into tesla... Waaait whaat?
Definition at line 90 of file MdtCalibInput.cxx.
96 const double perpendComp = locTrkDir.block<2,1>(0,0).
dot(locBField.block<2,1>(0,0))
98 const double paralelComp = locBField.z();
◆ readOutSide()
double MdtCalibInput::readOutSide |
( |
| ) |
const |
Returns the sign of the readout position in local coordinates.
By convention the new readout geometry points along the negative z-axis
Definition at line 148 of file MdtCalibInput.cxx.
151 else if (
m_RE)
return -1.;
◆ releaseSurface()
Releases the sagged line surface (Can be a nullptr)
Definition at line 74 of file MdtCalibInput.cxx.
◆ saggedSurface()
Returns the surface modeling the wire sagging at the point of the closest approach (Throw exceptions if no legacy RE is available)
Definition at line 110 of file MdtCalibInput.cxx.
112 std::stringstream except{};
113 except<<__FILE__<<
":"<<__LINE__<<
" saggedSurface() can only be called together with the legacy readout geometry";
114 throw std::runtime_error(except.str());
123 std::unique_ptr<Trk::StraightLineSurface> sagged{surf.correctedSurface(*locApproach)};
◆ saggedSurfCenter()
Returns the center of the sagged line surface.
Definition at line 88 of file MdtCalibInput.cxx.
◆ setClosestApproach()
◆ setTimeOfFlight()
void MdtCalibInput::setTimeOfFlight |
( |
const double |
toF | ) |
|
Sets the time of flight (Usually globPos.mag() * inverseSpeed of light)
Definition at line 80 of file MdtCalibInput.cxx.
◆ setTrackDirection()
Sets the track direction if it's given from an external seed.
Definition at line 78 of file MdtCalibInput.cxx.
◆ setTriggerTime()
void MdtCalibInput::setTriggerTime |
( |
const double |
trigTime | ) |
|
◆ signalPropagationDistance()
double MdtCalibInput::signalPropagationDistance |
( |
| ) |
const |
Calculates the distance that the signal has to travel along the wire.
Definition at line 131 of file MdtCalibInput.cxx.
◆ surfaceCenter()
◆ tdc()
int MdtCalibInput::tdc |
( |
| ) |
const |
◆ timeOfFlight()
double MdtCalibInput::timeOfFlight |
( |
| ) |
const |
◆ trackDirection()
◆ triggerTime()
double MdtCalibInput::triggerTime |
( |
| ) |
const |
◆ tubeLength()
double MdtCalibInput::tubeLength |
( |
| ) |
const |
◆ m_adc
int MdtCalibInput::m_adc {0} |
|
private |
◆ m_approach
◆ m_distToTrack
double MdtCalibInput::m_distToTrack {0.} |
|
private |
◆ m_gctx
◆ m_globPos
◆ m_globToLoc
◆ m_hash
◆ m_id
◆ m_isMasked
bool MdtCalibInput::m_isMasked {false} |
|
private |
◆ m_legRE
Pointer to the readout elements of the legacy geometry.
Definition at line 119 of file MdtCalibInput.h.
◆ m_RE
◆ m_saggedSurf
◆ m_tdc
int MdtCalibInput::m_tdc {0} |
|
private |
◆ m_ToF
◆ m_trackDir
◆ m_trigTime
double MdtCalibInput::m_trigTime {0.} |
|
private |
◆ s_inverseSpeed
constexpr double MdtCalibInput::s_inverseSpeed {1. / Gaudi::Units::c_light} |
|
staticconstexprprivate |
The documentation for this class was generated from the following files:
double tubeLength(const int tubeLayer, const int tube) const
virtual const Amg::Vector3D & center(const Identifier &) const override final
Return the center of the surface associated with this identifier In the case of silicon it returns th...
Eigen::Matrix< double, 2, 1 > Vector2D
double tubeLength(const IdentifierHash &hash) const
static IdentifierHash measurementHash(unsigned int layerNumber, unsigned int tubeNumber)
Transform the layer and tube number to the measurementHash.
double RODistanceFromTubeCentre(const Identifier &id) const
T * set(std::unique_ptr< T > elt) const
Atomically set the element.
Amg::Transform3D globalToLocalTrans(const ActsGeometryContext &ctx) const
Transformations to translate between local <-> global coordinates.
const Amg::Vector3D & center() const
Returns the center position of the Surface.
int adc() const
Returns the ADC (typically range is 0 to 250)
std::unique_ptr< T > release() noexcept
Transfer ownership from the element: return the current value as a unique_ptr, leaving the element nu...
double distanceFromRO(const Amg::Vector3D &GlobalHitPosition, const Identifier &id) const
Amg::Transform3D globalToLocalTransf(const int tubeLayer, const int tube) const
const MdtReadoutElement * getMdtReadoutElement(const Identifier &id) const
access via extended identifier (requires unpacking)
Amg::Vector3D center(const ActsGeometryContext &ctx) const
Returns the detector center (Which is the same as the detector center of the first measurement layer)
virtual const Amg::Vector3D & globalPosition() const
Returns the global position of the CENTER of the drift tube (i.e.
def dot(G, fn, nodesToHighlight=[])
Identifier identify() const
return the identifier
int tdc() const
Returns the TDC (typically range is 0 to 2500).
double distanceToReadout(const ActsGeometryContext &ctx, const Identifier &measId, const Amg::Vector3D &globPoint) const
Returns the distance along the wire from the readout card The distance is given as the delta z of the...
Eigen::Matrix< double, 3, 1 > Vector3D
Amg::Vector3D tubeFrame_localROPos(const int tubelayer, const int tube) const
virtual bool globalToLocal(const Amg::Vector3D &glob, const Amg::Vector3D &mom, Amg::Vector2D &loc) const =0
Specified by each surface type: GlobalToLocal method without dynamic memory allocation - boolean chec...
virtual const Trk::Surface & surface() const override final
Return surface associated with this detector element.
virtual const MuonGM::MdtReadoutElement * detectorElement() const override
Returns the detector element corresponding to this PRD.