ATLAS Offline Software
Loading...
Searching...
No Matches
ActsTrk::KalmanFitterTool Class Reference

#include <KalmanFitterTool.h>

Inheritance diagram for ActsTrk::KalmanFitterTool:

Public Member Functions

virtual ~KalmanFitterTool ()=default
virtual StatusCode initialize () override
virtual std::unique_ptr< ActsTrk::MutableTrackContainerfit (const std::vector< const xAOD::UncalibratedMeasurement * > &clusterList, const Acts::BoundTrackParameters &initialParams, const Acts::GeometryContext &tgContext, const Acts::MagneticFieldContext &mfContext, const Acts::CalibrationContext &calContext, const Acts::Surface *targetSurface=nullptr) const override
 fit a set of xAOD uncalibrated Measurements
virtual std::unique_ptr< ActsTrk::MutableTrackContainerfit (const ActsTrk::Seed &seed, const Acts::BoundTrackParameters &initialParams, const Acts::GeometryContext &tgContext, const Acts::MagneticFieldContext &mfContext, const Acts::CalibrationContext &calContext, const Acts::Surface &targetSurface) const override
 Acts seed fit.
virtual StatusCode fit (const EventContext &ctx, const ActsTrk::TrackContainer::ConstTrackProxy &track, ActsTrk::MutableTrackContainer &trackContainer, const Acts::PerigeeSurface &pSurface) const override
virtual std::unique_ptr< ActsTrk::MutableTrackContainerfit (const std::vector< Acts::SourceLink > &sourceLinks, const Acts::BoundTrackParameters &initialParams, const Acts::GeometryContext &tgContext, const Acts::MagneticFieldContext &mfContext, const Acts::CalibrationContext &calContext, const Acts::Surface *targetSurface=nullptr) const override
 Fit a set of source links.

Private Types

using TrackState_t = MutableTrackStateBackend::TrackStateProxy
 Abrivate the track state proxy.
using FitterExtension_t = Acts::KalmanFitterExtensions<MutableTrackStateBackend>
 Abbrivation of the fitter extensions.
using FitterOptions_t = Acts::KalmanFitterOptions<MutableTrackStateBackend>
 Abbrivation of the configuration to launch the fit.
using xAODItkCalibrator_t = detail::OnTrackCalibrator<ActsTrk::MutableTrackStateBackend>
 Calibrator of the ID / ITk measurements.
using Fitter = Acts::KalmanFitter<Acts::Propagator<Acts::SympyStepper, Acts::Navigator>, ActsTrk::MutableTrackStateBackend>
 Type erased track fitter function.
using DirectFitter = Acts::KalmanFitter<Acts::Propagator<Acts::SympyStepper, Acts::DirectNavigator>, ActsTrk::MutableTrackStateBackend>

Private Member Functions

FitterOptions_t configureFit (const Acts::GeometryContext &tgContext, const Acts::MagneticFieldContext &mfContext, const Acts::CalibrationContext &calContext, const Acts::Surface *surface, detail::SourceLinkType slType) const
 Helper method to pack the last information (Calibration, Alignment, B-Field, etc.) for the fit.
const Acts::Logger & logger () const
 Private access to the logger.

Private Attributes

ServiceHandle< ITrackingGeometrySvcm_trackingGeometrySvc {this, "TrackingGeometrySvc", "ActsTrackingGeometrySvc"}
PublicToolHandle< IGeometryRealmConvToolm_geometryConvTool {this, "GeometryRealmConvTool", ""}
ToolHandle< MuonR4::ISpacePointCalibratorm_muonCalibrator {this, "MuonCalibrationTool", ""}
ToolHandle< Trk::IRIO_OnTrackCreatorm_ROTcreator {this, "RotCreatorTool", ""}
Gaudi::Property< double > m_option_outlierChi2Cut
Gaudi::Property< double > m_option_ReverseFilteringPt
Gaudi::Property< int > m_option_maxPropagationStep
Gaudi::Property< bool > m_useDirectNavigation
detail::TrkMeasurementCalibrator m_trkCalibrator {}
 Calibrator for the Trk::MeasurementBase track states (legacy EDM).
detail::TrkMeasSurfaceAccessor m_trkSurfAcc {}
 Accessor to fetch surfaces from the Trk::MeasurementBase track states (legacy EDM).
detail::TrkPrepRawDataCalibrator m_prdCalibrator {}
 Calibrator for the Trk::PrepRawData track states (legacy EDM).
detail::TrkPrepRawDataSurfaceAcc m_prdSurfAcc {}
 Surface accessor for the Trk::PrepRawData track states (legacy EDM).
detail::xAODUncalibMeasSurfAcc m_unalibMeasSurfAcc {}
 Accessor to fetch surfaces from the xAOD::UncalibratedMeasurements (Phase-II EDM).
detail::xAODUncalibMeasCalibrator m_uncalibMeasCalibrator {}
 Calibrator for the uncalibrated xAOD::UnCalibratedMeasurement objects.
xAODItkCalibrator_t m_idCalibrator {}
std::unique_ptr< Fitterm_fitter {nullptr}
std::unique_ptr< DirectFitterm_directFitter {nullptr}
std::array< FitterExtension_t, s_nExtensionsm_kfExtensions {}
ActsTrk::detail::FitterHelperFunctions::ATLASOutlierFinder m_outlierFinder {0}
ActsTrk::detail::FitterHelperFunctions::ReverseFilteringLogic m_reverseFilteringLogic {0}
std::unique_ptr< const Acts::Logger > m_logger
 logging instance

Static Private Attributes

static constexpr unsigned s_nExtensions = static_cast<unsigned>(detail::SourceLinkType::nTypes)
 Array of all configured fitter extensions depending on which source link type is in use.

Detailed Description

Definition at line 45 of file KalmanFitterTool.h.

Member Typedef Documentation

◆ DirectFitter

using ActsTrk::KalmanFitterTool::DirectFitter = Acts::KalmanFitter<Acts::Propagator<Acts::SympyStepper, Acts::DirectNavigator>, ActsTrk::MutableTrackStateBackend>
private

Definition at line 155 of file KalmanFitterTool.h.

◆ Fitter

using ActsTrk::KalmanFitterTool::Fitter = Acts::KalmanFitter<Acts::Propagator<Acts::SympyStepper, Acts::Navigator>, ActsTrk::MutableTrackStateBackend>
private

Type erased track fitter function.

Definition at line 152 of file KalmanFitterTool.h.

◆ FitterExtension_t

using ActsTrk::KalmanFitterTool::FitterExtension_t = Acts::KalmanFitterExtensions<MutableTrackStateBackend>
private

Abbrivation of the fitter extensions.

Definition at line 99 of file KalmanFitterTool.h.

◆ FitterOptions_t

using ActsTrk::KalmanFitterTool::FitterOptions_t = Acts::KalmanFitterOptions<MutableTrackStateBackend>
private

Abbrivation of the configuration to launch the fit.

Definition at line 101 of file KalmanFitterTool.h.

◆ TrackState_t

using ActsTrk::KalmanFitterTool::TrackState_t = MutableTrackStateBackend::TrackStateProxy
private

Abrivate the track state proxy.

Definition at line 97 of file KalmanFitterTool.h.

◆ xAODItkCalibrator_t

Constructor & Destructor Documentation

◆ ~KalmanFitterTool()

virtual ActsTrk::KalmanFitterTool::~KalmanFitterTool ( )
virtualdefault

Member Function Documentation

◆ configureFit()

KalmanFitterTool::FitterOptions_t ActsTrk::KalmanFitterTool::configureFit ( const Acts::GeometryContext & tgContext,
const Acts::MagneticFieldContext & mfContext,
const Acts::CalibrationContext & calContext,
const Acts::Surface * surface,
detail::SourceLinkType slType ) const
private

Helper method to pack the last information (Calibration, Alignment, B-Field, etc.) for the fit.

The parsed context objects need to prevail the call of the fit

Parameters
tgContextReference to the geometry context
mfContextReference to the passed magnetic field context
calContextReference to the calibration context
surfaceTarget surface on which the fit result is expressed.
slTypeSwitch of which source link type shall be used to access the surfaces from the measurements & for calibration

Definition at line 122 of file KalmanFitterTool.cxx.

126 {
127
128
129 const auto& kfExtensions = m_kfExtensions[Acts::toUnderlying(slType)];
130
131 Acts::PropagatorPlainOptions propagationOption(tgContext, mfContext);
132 propagationOption.maxSteps = m_option_maxPropagationStep;
133 // Set the KalmanFitter options
134 return FitterOptions_t{tgContext, mfContext, calContext,
135 kfExtensions, propagationOption,
136 surface};
137}
std::array< FitterExtension_t, s_nExtensions > m_kfExtensions
Acts::KalmanFitterOptions< MutableTrackStateBackend > FitterOptions_t
Abbrivation of the configuration to launch the fit.
Gaudi::Property< int > m_option_maxPropagationStep

◆ fit() [1/4]

std::unique_ptr< MutableTrackContainer > ActsTrk::KalmanFitterTool::fit ( const ActsTrk::Seed & seed,
const Acts::BoundTrackParameters & initialParams,
const Acts::GeometryContext & tgContext,
const Acts::MagneticFieldContext & mfContext,
const Acts::CalibrationContext & calContext,
const Acts::Surface & targetSurface ) const
overridevirtual

Acts seed fit.

Definition at line 159 of file KalmanFitterTool.cxx.

164 {
165
166 std::vector<const xAOD::UncalibratedMeasurement*> measList;
167 measList.reserve(6);
168
169 const auto& sps = seed.sp();
170 for (const xAOD::SpacePoint* sp : sps) {
171 const auto& measurements = sp->measurements();
172 for (const xAOD::UncalibratedMeasurement *umeas : measurements) {
173 measList.push_back(umeas);
174 }
175 }
176 return fit(measList, initialParams, tgContext, mfContext, calContext, &targetSurface);
177}
static Double_t sp
virtual std::unique_ptr< ActsTrk::MutableTrackContainer > fit(const std::vector< const xAOD::UncalibratedMeasurement * > &clusterList, const Acts::BoundTrackParameters &initialParams, const Acts::GeometryContext &tgContext, const Acts::MagneticFieldContext &mfContext, const Acts::CalibrationContext &calContext, const Acts::Surface *targetSurface=nullptr) const override
fit a set of xAOD uncalibrated Measurements
UncalibratedMeasurement_v1 UncalibratedMeasurement
Define the version of the uncalibrated measurement class.

◆ fit() [2/4]

virtual StatusCode ActsTrk::KalmanFitterTool::fit ( const EventContext & ctx,
const ActsTrk::TrackContainer::ConstTrackProxy & track,
ActsTrk::MutableTrackContainer & trackContainer,
const Acts::PerigeeSurface & pSurface ) const
overridevirtual

◆ fit() [3/4]

std::unique_ptr< MutableTrackContainer > ActsTrk::KalmanFitterTool::fit ( const std::vector< Acts::SourceLink > & sourceLinks,
const Acts::BoundTrackParameters & initialParams,
const Acts::GeometryContext & tgContext,
const Acts::MagneticFieldContext & mfContext,
const Acts::CalibrationContext & calContext,
const Acts::Surface * targetSurface = nullptr ) const
overridevirtual

Fit a set of source links.

Definition at line 190 of file KalmanFitterTool.cxx.

195 {
196
197 if (sourceLinks.empty()) {
198 ATH_MSG_DEBUG("No measurements given. Nothing to do");
199 return nullptr;
200 }
201
202 // Construct a perigee surface as the target surface if none is provided
203 std::shared_ptr<Acts::Surface> pSurface{nullptr};
204 if (!targetSurface){
205 pSurface = Acts::Surface::makeShared<Acts::PerigeeSurface>(Acts::Vector3::Zero());
206 targetSurface = pSurface.get();
207 }
208
210
211 Acts::KalmanFitterOptions kfOptions = configureFit(tgContext, mfContext, calContext,
212 targetSurface, slType);
213
214 ActsTrk::MutableTrackBackend trackContainerBackEnd;
215 ActsTrk::MutableTrackStateBackend multiTrajBackEnd;
216 auto tracks = std::make_unique<MutableTrackContainer>(std::move(trackContainerBackEnd),
217 std::move(multiTrajBackEnd));
218
219 bool fitSuccess = false;
221
222 std::vector<const Acts::Surface*> surfaces;
223 surfaces.reserve(sourceLinks.size());
224 switch (slType) {
226 std::ranges::for_each(sourceLinks, [this, &surfaces](const Acts::SourceLink& sl) {
227 surfaces.push_back(m_trkSurfAcc(sl));
228 });
229 break;
230 }
232 std::ranges::for_each(sourceLinks, [this, &surfaces](const Acts::SourceLink& sl) {
233 surfaces.push_back(m_prdSurfAcc(sl));
234 });
235 break;
236 }
238 std::ranges::for_each(sourceLinks, [this, &surfaces](const Acts::SourceLink& sl) {
239 surfaces.push_back(m_unalibMeasSurfAcc(sl));
240 });
241 break;
242 }
243 default:
244 ATH_MSG_ERROR("Unsupported source link type for KalmanFitterTool::fit");
245 return nullptr;
246 }
247
248 fitSuccess = m_directFitter->fit(sourceLinks.begin(), sourceLinks.end(),
249 initialParams, kfOptions, surfaces, *tracks.get()).ok();
250
251 } else {
252
253 fitSuccess = m_fitter->fit(sourceLinks.begin(), sourceLinks.end(),
254 initialParams, kfOptions, *tracks.get()).ok();
255 }
256
257 if (!fitSuccess) {
258 ATH_MSG_VERBOSE("Kalman Fitter on Seed has failed");
259 return nullptr;
260 }
261
263 for (auto trkProxy : *tracks) {
265 }
266
267 return tracks;
268}
#define ATH_MSG_ERROR(x)
#define ATH_MSG_VERBOSE(x)
#define ATH_MSG_DEBUG(x)
Gaudi::Property< bool > m_useDirectNavigation
detail::TrkPrepRawDataSurfaceAcc m_prdSurfAcc
Surface accessor for the Trk::PrepRawData track states (legacy EDM).
detail::xAODUncalibMeasSurfAcc m_unalibMeasSurfAcc
Accessor to fetch surfaces from the xAOD::UncalibratedMeasurements (Phase-II EDM).
std::unique_ptr< Fitter > m_fitter
detail::TrkMeasSurfaceAccessor m_trkSurfAcc
Accessor to fetch surfaces from the Trk::MeasurementBase track states (legacy EDM).
std::unique_ptr< DirectFitter > m_directFitter
FitterOptions_t configureFit(const Acts::GeometryContext &tgContext, const Acts::MagneticFieldContext &mfContext, const Acts::CalibrationContext &calContext, const Acts::Surface *surface, detail::SourceLinkType slType) const
Helper method to pack the last information (Calibration, Alignment, B-Field, etc.) for the fit.
static SourceLinkType getType(const Acts::SourceLink &sl)
Returns the enumeration corresponding to the object type cached within the Acts::SourceLink.
SourceLinkType
Enumeration to distinguish between the ATLAS EDM -> Acts::SourceLink variants.
@ xAODUnCalibMeas
UnCalibrated Trk::PrepRawData objects.
@ TrkPrepRawData
Calibrated Trk::MeasurementBase objects.
Acts::VectorMultiTrajectory MutableTrackStateBackend
Acts::VectorTrackContainer MutableTrackBackend
@ KalmanFitter
tracks produced by the Kalman Fitter
static void addFitterTypeProperty(track_container_t &tracksContainer)
add fitter column to the track container
static void setFitterType(trackproxy_t &trackProxy, xAOD::TrackFitter fitterType)
set fitter type of a track

◆ fit() [4/4]

std::unique_ptr< MutableTrackContainer > ActsTrk::KalmanFitterTool::fit ( const std::vector< const xAOD::UncalibratedMeasurement * > & clusterList,
const Acts::BoundTrackParameters & initialParams,
const Acts::GeometryContext & tgContext,
const Acts::MagneticFieldContext & mfContext,
const Acts::CalibrationContext & calContext,
const Acts::Surface * targetSurface = nullptr ) const
overridevirtual

fit a set of xAOD uncalibrated Measurements

Definition at line 142 of file KalmanFitterTool.cxx.

147 {
148 ATH_MSG_DEBUG("--> entering KalmanFitter::fit(xAODMeasure...things,TP,)");
149
150 std::vector<Acts::SourceLink> sourceLinks;
151 sourceLinks.reserve(clusterList.size());
152
153 detail::MeasurementCalibratorBase::pack(clusterList, sourceLinks);
154
155 return fit(sourceLinks, initialParams, tgContext, mfContext, calContext, targetSurface);
156}
static Acts::SourceLink pack(const Ptr_t &measurement)
Pack the measurement type pointer to an Acts::SourceLink including the intermediate conversion into a...

◆ initialize()

StatusCode ActsTrk::KalmanFitterTool::initialize ( )
overridevirtual

Configure the fit extensions for Trk::MeasuremenBase pass through fits.

Configure the fit extensions for the Trk::PrepRawData fits

Configure the fit extensions for the uncalibrated measurement fits

Connect the muon types with the muon calibrator

Definition at line 31 of file KalmanFitterTool.cxx.

31 {
32
33 ATH_MSG_DEBUG(name() << "::" << __FUNCTION__);
35 ATH_CHECK(m_geometryConvTool.retrieve());
36 ATH_CHECK(m_ROTcreator.retrieve(EnableTool{!m_ROTcreator.empty()}));
37 ATH_CHECK(m_muonCalibrator.retrieve(EnableTool{!m_muonCalibrator.empty()}));
38 m_logger = makeActsAthenaLogger(this, "KalmanRefit");
39
40 auto field = std::make_shared<ATLASMagneticFieldWrapper>();
41
42 // Fitter
43 Acts::SympyStepper stepper(field);
45 // Direct Fitter
46 Acts::DirectNavigator directNavigator( logger().cloneWithSuffix("DirectNavigator") );
47 Acts::Propagator<Acts::SympyStepper, Acts::DirectNavigator> directPropagator(std::move(stepper),
48 std::move(directNavigator),
49 logger().cloneWithSuffix("DirectPropagator"));
50
51 m_directFitter = std::make_unique<DirectFitter>(std::move(directPropagator),
52 logger().cloneWithSuffix("DirectKalmanFitter"));
53
54 } else {
55 Acts::Navigator navigator( Acts::Navigator::Config{ m_trackingGeometrySvc->trackingGeometry() },
56 logger().cloneWithSuffix("Navigator"));
57 Acts::Propagator<Acts::SympyStepper, Acts::Navigator> propagator(stepper,
58 std::move(navigator),
59 logger().cloneWithSuffix("Prop"));
60
61 m_fitter = std::make_unique<Fitter>(std::move(propagator),
62 logger().cloneWithSuffix("KalmanFitter"));
63 }
64
66 m_outlierFinder.StateChiSquaredPerNumberDoFCut = m_option_outlierChi2Cut;
68
69 FitterExtension_t extensionTemplate{};
70 extensionTemplate.outlierFinder.connect<&detail::FitterHelperFunctions::ATLASOutlierFinder::operator()<MutableTrackStateBackend>>(&m_outlierFinder);
71 extensionTemplate.reverseFilteringLogic.connect<&detail::FitterHelperFunctions::ReverseFilteringLogic::operator()<MutableTrackStateBackend>>(&m_reverseFilteringLogic);
74
76 {
77 m_trkSurfAcc = detail::TrkMeasSurfaceAccessor{m_geometryConvTool.get()};
78
80 configureMe = extensionTemplate;
82 configureMe.surfaceAccessor.connect<&detail::TrkMeasSurfaceAccessor::operator()>(&m_trkSurfAcc);
83 }
85 {
86 m_prdSurfAcc = detail::TrkPrepRawDataSurfaceAcc{m_geometryConvTool.get()};
87 m_prdCalibrator = detail::TrkPrepRawDataCalibrator{m_geometryConvTool.get(), m_ROTcreator.get()};
88
90 configureMe = extensionTemplate;
92 configureMe.surfaceAccessor.connect<&detail::TrkPrepRawDataSurfaceAcc::operator()>(&m_prdSurfAcc);
93 }
95 {
96 m_unalibMeasSurfAcc = detail::xAODUncalibMeasSurfAcc{m_trackingGeometrySvc.get()};
97
98
100
102 using enum xAOD::UncalibMeasType;
103 if (m_muonCalibrator.isEnabled()) {
106 }
107 }
108 for (const auto idType: {PixelClusterType, StripClusterType, HGTDClusterType}) {
110 }
111
113 configureMe = extensionTemplate;
114 configureMe.surfaceAccessor.connect<&detail::xAODUncalibMeasSurfAcc::operator()>(&m_unalibMeasSurfAcc);
116 }
117 return StatusCode::SUCCESS;
118}
#define ATH_CHECK
Evaluate an expression and check for errors.
std::unique_ptr< const Acts::Logger > makeActsAthenaLogger(IMessageSvc *svc, const std::string &name, int level, std::optional< std::string > parent_name)
ActsTrk::detail::FitterHelperFunctions::ReverseFilteringLogic m_reverseFilteringLogic
Acts::KalmanFitterExtensions< MutableTrackStateBackend > FitterExtension_t
Abbrivation of the fitter extensions.
ToolHandle< MuonR4::ISpacePointCalibrator > m_muonCalibrator
detail::TrkPrepRawDataCalibrator m_prdCalibrator
Calibrator for the Trk::PrepRawData track states (legacy EDM).
detail::xAODUncalibMeasCalibrator m_uncalibMeasCalibrator
Calibrator for the uncalibrated xAOD::UnCalibratedMeasurement objects.
std::unique_ptr< const Acts::Logger > m_logger
logging instance
ActsTrk::detail::FitterHelperFunctions::ATLASOutlierFinder m_outlierFinder
ToolHandle< Trk::IRIO_OnTrackCreator > m_ROTcreator
PublicToolHandle< IGeometryRealmConvTool > m_geometryConvTool
xAODItkCalibrator_t m_idCalibrator
Gaudi::Property< double > m_option_outlierChi2Cut
ServiceHandle< ITrackingGeometrySvc > m_trackingGeometrySvc
const Acts::Logger & logger() const
Private access to the logger.
detail::TrkMeasurementCalibrator m_trkCalibrator
Calibrator for the Trk::MeasurementBase track states (legacy EDM).
Gaudi::Property< double > m_option_ReverseFilteringPt
void calibrate(const Acts::GeometryContext &geoctx, const Acts::CalibrationContext &cctx, const Acts::SourceLink &link, TrackStateProxy state) const
static OnTrackCalibrator NoCalibration(const ActsTrk::ITrackingGeometrySvc *trackGeoSvc)
void calibrate(const Acts::GeometryContext &gctx, const Acts::CalibrationContext &cctx, const Acts::SourceLink &sl, proxy_t trackState) const
Calibrator delegate implementation to calibrate the ActsTrk fit from Trk::MeasurementBase objects.
void calibrate(const Acts::GeometryContext &gctx, const Acts::CalibrationContext &cctx, const Acts::SourceLink &sl, proxy_t trackState) const
Calibrator delegate implementation to calibrate the ActsTrk fit from Trk::PrepRawData objects.
void calibrate(const Acts::GeometryContext &gctx, const Acts::CalibrationContext &cctx, const Acts::SourceLink &sl, const MutableTrackStateBackend::TrackStateProxy trackState) const
: Interface method for the Acts fitter to calibrate the trajectory track states from the source link ...
virtual void calibrateSourceLink(const Acts::GeometryContext &geoctx, const Acts::CalibrationContext &cctx, const Acts::SourceLink &link, ActsTrk::MutableTrackStateBackend::TrackStateProxy state) const =0
Function that's hooked to the calibration delegate of the implemented Acts fitters.
Acts::Result< void > gainMatrixUpdate(const Acts::GeometryContext &gctx, typename trajectory_t::TrackStateProxy trackState, const Acts::Logger &logger)
Acts::Result< void > mbfSmoother(const Acts::GeometryContext &gctx, trajectory_t &trajectory, size_t entryIndex, const Acts::Logger &logger)
UncalibMeasType
Define the type of the uncalibrated measurement.

◆ logger()

const Acts::Logger & ActsTrk::KalmanFitterTool::logger ( ) const
inlineprivate

Private access to the logger.

Definition at line 166 of file KalmanFitterTool.h.

166 {
167 return *m_logger;
168 }

Member Data Documentation

◆ m_directFitter

std::unique_ptr<DirectFitter> ActsTrk::KalmanFitterTool::m_directFitter {nullptr}
private

Definition at line 156 of file KalmanFitterTool.h.

156{nullptr};

◆ m_fitter

std::unique_ptr<Fitter> ActsTrk::KalmanFitterTool::m_fitter {nullptr}
private

Definition at line 153 of file KalmanFitterTool.h.

153{nullptr};

◆ m_geometryConvTool

PublicToolHandle<IGeometryRealmConvTool> ActsTrk::KalmanFitterTool::m_geometryConvTool {this, "GeometryRealmConvTool", ""}
private

Definition at line 118 of file KalmanFitterTool.h.

118{this, "GeometryRealmConvTool", ""};

◆ m_idCalibrator

xAODItkCalibrator_t ActsTrk::KalmanFitterTool::m_idCalibrator {}
private

Definition at line 148 of file KalmanFitterTool.h.

148{};

◆ m_kfExtensions

std::array<FitterExtension_t, s_nExtensions> ActsTrk::KalmanFitterTool::m_kfExtensions {}
private

Definition at line 160 of file KalmanFitterTool.h.

160{};

◆ m_logger

std::unique_ptr<const Acts::Logger> ActsTrk::KalmanFitterTool::m_logger
private

logging instance

Definition at line 171 of file KalmanFitterTool.h.

◆ m_muonCalibrator

ToolHandle<MuonR4::ISpacePointCalibrator> ActsTrk::KalmanFitterTool::m_muonCalibrator {this, "MuonCalibrationTool", ""}
private

Definition at line 120 of file KalmanFitterTool.h.

120{this, "MuonCalibrationTool", ""};

◆ m_option_maxPropagationStep

Gaudi::Property< int > ActsTrk::KalmanFitterTool::m_option_maxPropagationStep
private
Initial value:
{this, "MaxPropagationStep", 5000,
"Maximum number of steps for one propagate call"}

Definition at line 129 of file KalmanFitterTool.h.

129 {this, "MaxPropagationStep", 5000,
130 "Maximum number of steps for one propagate call"};

◆ m_option_outlierChi2Cut

Gaudi::Property< double > ActsTrk::KalmanFitterTool::m_option_outlierChi2Cut
private
Initial value:
{this, "OutlierChi2Cut", 12.5,
"Chi2 cut used by the outlier finder" }

Definition at line 125 of file KalmanFitterTool.h.

125 {this, "OutlierChi2Cut", 12.5,
126 "Chi2 cut used by the outlier finder" };

◆ m_option_ReverseFilteringPt

Gaudi::Property< double > ActsTrk::KalmanFitterTool::m_option_ReverseFilteringPt
private
Initial value:
{this, "ReverseFilteringPt", 1.0 * Acts::UnitConstants::GeV,
"Pt cut used for the ReverseFiltering logic"}

Definition at line 127 of file KalmanFitterTool.h.

127 {this, "ReverseFilteringPt", 1.0 * Acts::UnitConstants::GeV,
128 "Pt cut used for the ReverseFiltering logic"};

◆ m_outlierFinder

ActsTrk::detail::FitterHelperFunctions::ATLASOutlierFinder ActsTrk::KalmanFitterTool::m_outlierFinder {0}
private

Definition at line 162 of file KalmanFitterTool.h.

162{0};

◆ m_prdCalibrator

detail::TrkPrepRawDataCalibrator ActsTrk::KalmanFitterTool::m_prdCalibrator {}
private

Calibrator for the Trk::PrepRawData track states (legacy EDM).

Definition at line 139 of file KalmanFitterTool.h.

139{};

◆ m_prdSurfAcc

detail::TrkPrepRawDataSurfaceAcc ActsTrk::KalmanFitterTool::m_prdSurfAcc {}
private

Surface accessor for the Trk::PrepRawData track states (legacy EDM).

Definition at line 141 of file KalmanFitterTool.h.

141{};

◆ m_reverseFilteringLogic

ActsTrk::detail::FitterHelperFunctions::ReverseFilteringLogic ActsTrk::KalmanFitterTool::m_reverseFilteringLogic {0}
private

Definition at line 163 of file KalmanFitterTool.h.

163{0};

◆ m_ROTcreator

ToolHandle<Trk::IRIO_OnTrackCreator> ActsTrk::KalmanFitterTool::m_ROTcreator {this, "RotCreatorTool", ""}
private

Definition at line 122 of file KalmanFitterTool.h.

122{this, "RotCreatorTool", ""};

◆ m_trackingGeometrySvc

ServiceHandle<ITrackingGeometrySvc> ActsTrk::KalmanFitterTool::m_trackingGeometrySvc {this, "TrackingGeometrySvc", "ActsTrackingGeometrySvc"}
private

Definition at line 117 of file KalmanFitterTool.h.

117{this, "TrackingGeometrySvc", "ActsTrackingGeometrySvc"};

◆ m_trkCalibrator

detail::TrkMeasurementCalibrator ActsTrk::KalmanFitterTool::m_trkCalibrator {}
private

Calibrator for the Trk::MeasurementBase track states (legacy EDM).

Definition at line 135 of file KalmanFitterTool.h.

135{};

◆ m_trkSurfAcc

detail::TrkMeasSurfaceAccessor ActsTrk::KalmanFitterTool::m_trkSurfAcc {}
private

Accessor to fetch surfaces from the Trk::MeasurementBase track states (legacy EDM).

Definition at line 137 of file KalmanFitterTool.h.

137{};

◆ m_unalibMeasSurfAcc

detail::xAODUncalibMeasSurfAcc ActsTrk::KalmanFitterTool::m_unalibMeasSurfAcc {}
private

Accessor to fetch surfaces from the xAOD::UncalibratedMeasurements (Phase-II EDM).

Definition at line 143 of file KalmanFitterTool.h.

143{};

◆ m_uncalibMeasCalibrator

detail::xAODUncalibMeasCalibrator ActsTrk::KalmanFitterTool::m_uncalibMeasCalibrator {}
private

Calibrator for the uncalibrated xAOD::UnCalibratedMeasurement objects.

Definition at line 145 of file KalmanFitterTool.h.

145{};

◆ m_useDirectNavigation

Gaudi::Property<bool> ActsTrk::KalmanFitterTool::m_useDirectNavigation
private
Initial value:
{this, "UseDirectNavigation", true,
"GSF with direct navigation when refitting measurements"}

Definition at line 131 of file KalmanFitterTool.h.

131 {this, "UseDirectNavigation", true,
132 "GSF with direct navigation when refitting measurements"};

◆ s_nExtensions

unsigned ActsTrk::KalmanFitterTool::s_nExtensions = static_cast<unsigned>(detail::SourceLinkType::nTypes)
staticconstexprprivate

Array of all configured fitter extensions depending on which source link type is in use.

Definition at line 159 of file KalmanFitterTool.h.


The documentation for this class was generated from the following files: