![]() |
ATLAS Offline Software
|
#include <SpacePointCalibrator.h>
Public Types | |
enum | ProjectorType { ProjectorType::e1DimNoTime = 0, ProjectorType::e1DimRotNoTime = 1, ProjectorType::e2DimNoTime = 2, ProjectorType::e1DimWithTime = 3, ProjectorType::e1DimRotWithTime = 4, ProjectorType::e2DimWithTime = 5 } |
Enum encoding the possible projectors used in ATLAS. More... | |
template<typename trajectory_t > | |
using | TrackState_t = typename Acts::MultiTrajectory< trajectory_t >::TrackStateProxy |
Abbrivation of the track state proxy type. More... | |
template<typename trajectory_t > | |
using | ConstTrackState_t = typename Acts::MultiTrajectory< trajectory_t >::ConstTrackStateProxy |
Abbrivation of the const track state proxy type. More... | |
Public Member Functions | |
StatusCode | initialize () override final |
CalibSpacePointPtr | calibrate (const EventContext &ctx, const SpacePoint *spacePoint, const Amg::Vector3D &seedPosInChamb, const Amg::Vector3D &seedDirInChamb, const double timeDelay) const override final |
CalibSpacePointPtr | calibrate (const EventContext &ctx, const CalibratedSpacePoint &spacePoint, const Amg::Vector3D &seedPosInChamb, const Amg::Vector3D &seedDirInChamb, const double timeDelay) const override final |
CalibSpacePointVec | calibrate (const EventContext &ctx, const std::vector< const SpacePoint * > &spacePoints, const Amg::Vector3D &seedPosInChamb, const Amg::Vector3D &seedDirInChamb, const double timeDelay) const override final |
CalibSpacePointVec | calibrate (const EventContext &ctx, CalibSpacePointVec &&spacePoints, const Amg::Vector3D &seedPosInChamb, const Amg::Vector3D &seedDirInChamb, const double timeDelay) const override final |
double | driftVelocity (const EventContext &ctx, const CalibratedSpacePoint &spacePoint) const override final |
double | driftAcceleration (const EventContext &ctx, const CalibratedSpacePoint &spacePoint) const override final |
void | calibrateSourceLink (const Acts::GeometryContext &geoctx, const Acts::CalibrationContext &cctx, const Acts::SourceLink &link, ActsTrk::MutableTrackContainer::TrackStateProxy state) const override final |
template<std::size_t Dim, typename trajectory_t , typename pos_t , typename cov_t > | |
void | setState (const ProjectorType projector, const pos_t &locpos, const cov_t &cov, Acts::SourceLink link, TrackState_t< trajectory_t > &trackState) const |
Copy the local position & covariance into the Acts track state proxy. More... | |
Private Attributes | |
SG::ReadHandleKey< ActsGeometryContext > | m_geoCtxKey {this, "AlignmentKey", "ActsAlignment", "cond handle key"} |
access to the ACTS geometry context More... | |
ServiceHandle< Muon::IMuonIdHelperSvc > | m_idHelperSvc {this, "MuonIdHelperSvc", "Muon::MuonIdHelperSvc/MuonIdHelperSvc"} |
ToolHandle< IMdtCalibrationTool > | m_mdtCalibrationTool {this, "MdtCalibrationTool", ""} |
ToolHandle< Muon::INSWCalibTool > | m_nswCalibTool {this, "NSWCalibTool", ""} |
ToolHandle< Muon::IMMClusterBuilderTool > | m_clusterBuilderToolMM {this, "MMClusterBuilder", ""} |
const MuonGMR4::MuonDetectorManager * | m_detMgr {nullptr} |
Gaudi::Property< double > | m_muonPropSpeed {this, "PropagationSpeed", 1./ Gaudi::Units::c_light } |
Assumed propagation velocity of the muon through the detector. More... | |
Gaudi::Property< double > | m_rpcSignalVelocity |
How fast does an electron signal travel along an rpc strip More... | |
Gaudi::Property< double > | m_rpcTimeResolution |
Gaudi::Property< bool > | m_useRpcTime {this, "useRpcTime", false} |
Load the Rpc time on the track states for the track fit. More... | |
Gaudi::Property< bool > | m_useTgcTime |
Load the Tgc bunch crossing ID on the track states. More... | |
Static Private Attributes | |
constexpr static std::array< Acts::BoundSubspaceIndices, 6 > | s_boundSpaceIndices |
Array to map the Projector types to the bound index configurations used by the ATLAS detector measurements. More... | |
Definition at line 26 of file SpacePointCalibrator.h.
|
inherited |
Abbrivation of the const track state proxy type.
Definition at line 44 of file MeasurementCalibratorBase.h.
|
inherited |
Abbrivation of the track state proxy type.
Definition at line 41 of file MeasurementCalibratorBase.h.
|
stronginherited |
Enum encoding the possible projectors used in ATLAS.
Their integer representations correspond to the element index in the s_boundSpaceIndices member
Enumerator | |
---|---|
e1DimNoTime | |
e1DimRotNoTime | Project out solely the locX (Applies to Itk strips, Rpc, Tgc, sTgc, Mm) |
e2DimNoTime | Project out solely the locY - Complementary projector if the strip plane is rotated (Applies to Itk endcap strips, Rpc, Tgc, sTgc) |
e1DimWithTime | Project out the two spatial coordinates - (Applies to ITk pixel, BI-Rpc, sTgc pad) |
e1DimRotWithTime | Project out the locX & time coordinate - (Applies to Rpc, Tgc, Mm, sTgc) |
e2DimWithTime | Project out the locY & time coordinate - (Applies to Rpc, Tgc, sTgc) |
Definition at line 29 of file MeasurementCalibratorBase.h.
|
finaloverride |
Definition at line 62 of file SpacePointCalibrator.cxx.
|
finaloverride |
Definition at line 45 of file SpacePointCalibrator.cxx.
|
finaloverride |
In valid drift radius has been created
Transform the space point into the local frame to calculate the propagation time towards the readout
Average the time
Add the difference to the covariance though
TODO: Use also the time of the secondary measurement...
Reminder to myself, we should modify the covariance if the space point is 1D? Probably... dunno
Definition at line 73 of file SpacePointCalibrator.cxx.
|
finaloverride |
Definition at line 256 of file SpacePointCalibrator.cxx.
|
finaloverride |
Construct bound track parameters to fetch the global track position
Vast majority of the measurements are ordinary drift tubes
Invalid drift radius has been created
Twin tube case
Legacy BM / BO chambers
BI clusters
Definition at line 288 of file SpacePointCalibrator.cxx.
|
finaloverride |
Definition at line 278 of file SpacePointCalibrator.cxx.
|
finaloverride |
Definition at line 269 of file SpacePointCalibrator.cxx.
|
finaloverride |
Definition at line 36 of file SpacePointCalibrator.cxx.
|
inherited |
Copy the local position & covariance into the Acts track state proxy.
Dim | Dimension of the measurement |
trajectory_t | Data type of the track state proxy backend |
pos_t | Data type of the [Dim x 1] position vector |
cov_t | Data type of the [Dim x Dim] covariance matrix |
projector | Projector configuration of the measurement |
locpos | Calibrated local postion |
cov | Calibrated local covariance |
link | Source link to associate with the state |
trackState | Refrence to the track state proxy to write. |
|
private |
Definition at line 79 of file SpacePointCalibrator.h.
|
private |
Definition at line 81 of file SpacePointCalibrator.h.
|
private |
access to the ACTS geometry context
Definition at line 71 of file SpacePointCalibrator.h.
|
private |
Definition at line 73 of file SpacePointCalibrator.h.
|
private |
Definition at line 75 of file SpacePointCalibrator.h.
|
private |
Assumed propagation velocity of the muon through the detector.
Needs to be replaced by the proper time estimate once the calibrator is exposed to the Acts propagator
Definition at line 86 of file SpacePointCalibrator.h.
|
private |
Definition at line 77 of file SpacePointCalibrator.h.
|
private |
How fast does an electron signal travel along an rpc strip
Definition at line 89 of file SpacePointCalibrator.h.
|
private |
Definition at line 92 of file SpacePointCalibrator.h.
|
private |
Load the Rpc time on the track states for the track fit.
Definition at line 96 of file SpacePointCalibrator.h.
|
private |
Load the Tgc bunch crossing ID on the track states.
Definition at line 98 of file SpacePointCalibrator.h.
|
staticconstexprprivateinherited |
Array to map the Projector types to the bound index configurations used by the ATLAS detector measurements.
Definition at line 66 of file MeasurementCalibratorBase.h.