Class to calibrate the Acts track states with uncalibrated Trk::PrepRaw data objects.
More...
#include <TrkPrepRawDataCalibrator.h>
|
| | TrkPrepRawDataCalibrator ()=default |
| | Empty constructor not configuring any tool -> crash if not later overwritten.
|
| | TrkPrepRawDataCalibrator (const ActsTrk::IActsToTrkConverterTool *convTool, const Trk::IRIO_OnTrackCreator *rotCreator) |
| | Constructor taking the Acts <-> Trk conversion tool & a preconfigured rot creator to calibrate the measurements.
|
| template<typename trajectory_t> |
| void | calibrate (const Acts::GeometryContext &gctx, const Acts::CalibrationContext &cctx, const Acts::SourceLink &sl, TrackState_t< trajectory_t > trackState) const |
| | Calibrator delegate implementation to calibrate the ActsTrk fit from Trk::PrepRawData objects.
|
| template<typename trackstate_t> |
| std::unique_ptr< Trk::RIO_OnTrack > | createROT (const Acts::GeometryContext &gctx, const Acts::CalibrationContext &cctx, const Acts::SourceLink &sl, const trackstate_t &trackState) const |
| | Create a Track Raw Input object (ROT) from the source link to the PRD measurement and the predicted track parameters of the track state.
|
| 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.
|
|
| static SourceLink_t | unpack (const Acts::SourceLink &sl) |
| | Unpack the prepraw data measurement from the source link.
|
| static Acts::SourceLink | pack (const SourceLink_t prd) |
| | Pack the PrepRaw data measurement into a source link.
|
|
| static constexpr std::array< Acts::BoundSubspaceIndices, 6 > | s_boundSpaceIndices |
| | Array to map the Projector types to the bound index configurations used by the ATLAS detector measurements.
|
Class to calibrate the Acts track states with uncalibrated Trk::PrepRaw data objects.
Essentially, this class is reproducing the calibration work flow during the ATLAS fit.
Definition at line 17 of file TrkPrepRawDataCalibrator.h.
◆ ConstTrackState_t
template<typename trajectory_t>
◆ SourceLink_t
◆ TrackState_t
template<typename trajectory_t>
◆ ProjectorType
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.
29 {
30 e1DimNoTime = 0,
31 e1DimRotNoTime = 1,
33 e2DimNoTime = 2,
34 e1DimWithTime = 3,
35 e1DimRotWithTime = 4,
36 e2DimWithTime = 5,
37 };
◆ TrkPrepRawDataCalibrator() [1/2]
| ActsTrk::detail::TrkPrepRawDataCalibrator::TrkPrepRawDataCalibrator |
( |
| ) |
|
|
default |
Empty constructor not configuring any tool -> crash if not later overwritten.
◆ TrkPrepRawDataCalibrator() [2/2]
Constructor taking the Acts <-> Trk conversion tool & a preconfigured rot creator to calibrate the measurements.
- Parameters
-
| convTool | Pointer to the configured track conversion tool |
| rotCreator | Pointer to the configured ROT creator |
Definition at line 7 of file TrkPrepRawDataCalibrator.cxx.
8 :
const Trk::IRIO_OnTrackCreator * m_rotCreator
ROT creator.
const ActsTrk::IActsToTrkConverterTool * m_convTool
Pointer to the track conversion tool.
◆ calibrate()
template<typename trajectory_t>
| void ActsTrk::detail::TrkPrepRawDataCalibrator::calibrate |
( |
const Acts::GeometryContext & | gctx, |
|
|
const Acts::CalibrationContext & | cctx, |
|
|
const Acts::SourceLink & | sl, |
|
|
TrackState_t< trajectory_t > | trackState ) const |
Calibrator delegate implementation to calibrate the ActsTrk fit from Trk::PrepRawData objects.
- Template Parameters
-
| trajectory_t | Tepmlate parameter of the underlying MultTrajectory container backend |
- Parameters
-
| gctx | Geometry context to access the alignment of the surface |
| cctx | Calibration context to access the calibration constants from the conditions store |
| sl | Reference to the packed ATLASSourceLink (a.k.a Trk::MeasurementBase) |
| trackState | Reference to the multi trajectory track state to fill |
◆ createROT()
template<typename trackstate_t>
| std::unique_ptr< Trk::RIO_OnTrack > ActsTrk::detail::TrkPrepRawDataCalibrator::createROT |
( |
const Acts::GeometryContext & | gctx, |
|
|
const Acts::CalibrationContext & | cctx, |
|
|
const Acts::SourceLink & | sl, |
|
|
const trackstate_t & | trackState ) const |
Create a Track Raw Input object (ROT) from the source link to the PRD measurement and the predicted track parameters of the track state.
- Template Parameters
-
| trajectory_t | Tepmlate parameter of the underlying MultTrajectory container backend |
- Parameters
-
| gctx | Geometry context to access the alignment of the surface |
| cctx | Calibration context to access the calibration constants from the conditions store |
| sl | Reference to the packed ATLASSourceLink (a.k.a Trk::MeasurementBase) |
| trackState | Reference to the multi trajectory track state to read the predicted parameters from. |
◆ pack()
| Acts::SourceLink ActsTrk::detail::TrkPrepRawDataCalibrator::pack |
( |
const SourceLink_t | prd | ) |
|
|
static |
Pack the PrepRaw data measurement into a source link.
- Parameters
-
| prd | Pointer to the prep data measurement to pack |
Definition at line 17 of file TrkPrepRawDataCalibrator.cxx.
17 {
18 return Acts::SourceLink{prd};
19 }
◆ setState()
template<std::size_t Dim, typename trajectory_t, typename pos_t, typename cov_t>
| void ActsTrk::detail::MeasurementCalibratorBase::setState |
( |
const ProjectorType | projector, |
|
|
const pos_t & | locpos, |
|
|
const cov_t & | cov, |
|
|
Acts::SourceLink | link, |
|
|
TrackState_t< trajectory_t > & | trackState ) const |
|
inherited |
Copy the local position & covariance into the Acts track state proxy.
- Template Parameters
-
| 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 |
- Parameters
-
| 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. |
◆ unpack()
Unpack the prepraw data measurement from the source link.
- Parameters
-
| sl | Reference to the source link to unpack |
Definition at line 12 of file TrkPrepRawDataCalibrator.cxx.
12 {
14 assert(prd != nullptr);
15 return prd;
16 }
const Trk::PrepRawData * SourceLink_t
abrivation of the underlying source link type
T * get(TKey *tobj)
get a TObject* from a TKey* (why can't a TObject be a TKey?)
◆ m_convTool
◆ m_rotCalib
◆ m_rotCreator
◆ s_boundSpaceIndices
| std::array<Acts::BoundSubspaceIndices, 6> ActsTrk::detail::MeasurementCalibratorBase::s_boundSpaceIndices |
|
staticconstexprprivateinherited |
Initial value:{
Acts::BoundSubspaceIndices{Acts::eBoundLoc0},
Acts::BoundSubspaceIndices{Acts::eBoundLoc1},
Acts::BoundSubspaceIndices{Acts::eBoundLoc0, Acts::eBoundLoc1},
Acts::BoundSubspaceIndices{Acts::eBoundLoc0, Acts::eBoundTime},
Acts::BoundSubspaceIndices{Acts::eBoundLoc1, Acts::eBoundTime},
Acts::BoundSubspaceIndices{Acts::eBoundLoc0, Acts::eBoundLoc1, Acts::eBoundTime}
}
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.
66 {
67 Acts::BoundSubspaceIndices{Acts::eBoundLoc0},
68 Acts::BoundSubspaceIndices{Acts::eBoundLoc1},
69 Acts::BoundSubspaceIndices{Acts::eBoundLoc0, Acts::eBoundLoc1},
70 Acts::BoundSubspaceIndices{Acts::eBoundLoc0, Acts::eBoundTime},
71 Acts::BoundSubspaceIndices{Acts::eBoundLoc1, Acts::eBoundTime},
72 Acts::BoundSubspaceIndices{Acts::eBoundLoc0, Acts::eBoundLoc1, Acts::eBoundTime}
73 };
The documentation for this class was generated from the following files: