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

#include <GlobalChiSquareFitterTool.h>

Inheritance diagram for ActsTrk::GlobalChiSquareFitterTool:

Public Types

using StraightPropagator_t = Acts::Propagator<Acts::StraightLineStepper, Acts::Navigator>
 Type erased track fitter function.
using CurvedPropagator_t = Acts::Propagator<Acts::EigenStepper<>, Acts::Navigator>
using StraightFitter_t = Acts::Experimental::Gx2Fitter<StraightPropagator_t, MutableTrackStateBackend>
using CurvedFitter_t = Acts::Experimental::Gx2Fitter<CurvedPropagator_t, MutableTrackStateBackend>
using Gx2FitterOptions_t = Acts::Experimental::Gx2FitterOptions<MutableTrackStateBackend>
 Abbrivation of the configuration to launch the fit.
using Gx2FitterExtension_t = Acts::Experimental::Gx2FitterExtensions<MutableTrackStateBackend>
 Abbrivation of the fitter extensions.

Public Member Functions

virtual ~GlobalChiSquareFitterTool ()=default
virtual StatusCode initialize () override
virtual std::unique_ptr< 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< MutableTrackContainerfit (const 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 TrackContainer::ConstTrackProxy &track, MutableTrackContainer &trackContainer, const Acts::PerigeeSurface &pSurface) const override
virtual std::unique_ptr< 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 xAODItkCalibrator_t = detail::OnTrackCalibrator<ActsTrk::MutableTrackStateBackend>
 Calibrator of the ID / ITk measurements.

Private Member Functions

Gx2FitterOptions_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< ActsTrk::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 {this, "OutlierChi2Cut", 12.5}
 Chi2 cut used by the outlier finder.
Gaudi::Property< unsigned > m_option_maxPropagationStep {this, "MaxPropagationStep", 5000}
 Maximum number of steps per propagation call.
Gaudi::Property< unsigned > m_option_maxNavSurfaces {this, "MaxSurfacesPerNavStep", 100}
 Number of maximum surfaces to be tried before the navigrator aborts.
Gaudi::Property< bool > m_option_includeELoss {this, "IncludeELoss", true}
 Consider particle's energy loss in the fit.
Gaudi::Property< bool > m_option_includeScat {this, "IncludeScattering", true}
 Consider multiple scattering of the particle.
Gaudi::Property< bool > m_doStraightLine {this, "DoStraightLine" , false}
 Option to toggle whether a straight line fitter shall be used.
Gaudi::Property< bool > m_doJacobianCorr {this, "DoFreeToBoundCorrection", false }
 Account for non linear effects from free -> bound jacobian.
Gaudi::Property< unsigned > m_nIterMax {this, "MaxIterations", 5}
 Number of iterations a fit may take.
detail::TrkMeasurementCalibrator m_trkMeasCalibrator {}
 Pass through calibrator of the Trk::MeasurementBase objects from the TrackState container.
detail::TrkPrepRawDataCalibrator m_prdCalibrator {}
 Calibrator of the uncalibrated Trk::PrepRawData objects to RIO_OnTrack objects.
detail::TrkMeasSurfaceAccessor m_trkMeasSurfAcc {}
 Surface accessor delegate for Trk::MeasurementBase objects.
detail::TrkPrepRawDataSurfaceAcc m_prdSurfaceAcc {}
 Surface accessor delegate for Trk::PrepRawData objects.
detail::xAODUncalibMeasSurfAcc m_unalibMeasSurfAcc {}
 Surface accessor delegate for xAOD::UncalibratedMeasurement objects.
detail::xAODUncalibMeasCalibrator m_uncalibMeasCalibrator {}
 Calibrator for the uncalibrated xAOD::UnCalibratedMeasurement objects.
xAODItkCalibrator_t m_idCalibrator {}
std::array< Gx2FitterExtension_t, s_nExtensionsm_gx2fExtensions {}
std::unique_ptr< CurvedFitter_tm_fitter {nullptr}
 The underlying curved Acts fitter.
std::unique_ptr< StraightFitter_tm_slFitter {nullptr}
 The underlying straight line Acts fitter.
detail::FitterHelperFunctions::ATLASOutlierFinder m_outlierFinder {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 GlobalChiSquareFitterTool.h.

Member Typedef Documentation

◆ CurvedFitter_t

◆ CurvedPropagator_t

using ActsTrk::GlobalChiSquareFitterTool::CurvedPropagator_t = Acts::Propagator<Acts::EigenStepper<>, Acts::Navigator>

Definition at line 98 of file GlobalChiSquareFitterTool.h.

◆ Gx2FitterExtension_t

Abbrivation of the fitter extensions.

Definition at line 106 of file GlobalChiSquareFitterTool.h.

◆ Gx2FitterOptions_t

Abbrivation of the configuration to launch the fit.

Definition at line 104 of file GlobalChiSquareFitterTool.h.

◆ StraightFitter_t

◆ StraightPropagator_t

using ActsTrk::GlobalChiSquareFitterTool::StraightPropagator_t = Acts::Propagator<Acts::StraightLineStepper, Acts::Navigator>

Type erased track fitter function.

Definition at line 97 of file GlobalChiSquareFitterTool.h.

◆ TrackState_t

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

Abrivate the track state proxy.

Definition at line 110 of file GlobalChiSquareFitterTool.h.

◆ xAODItkCalibrator_t

Constructor & Destructor Documentation

◆ ~GlobalChiSquareFitterTool()

virtual ActsTrk::GlobalChiSquareFitterTool::~GlobalChiSquareFitterTool ( )
virtualdefault

Member Function Documentation

◆ configureFit()

GlobalChiSquareFitterTool::Gx2FitterOptions_t ActsTrk::GlobalChiSquareFitterTool::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 107 of file GlobalChiSquareFitterTool.cxx.

111 {
112 Acts::PropagatorPlainOptions propagationOption{tgContext, mfContext};
113 propagationOption.maxSteps = m_option_maxPropagationStep;
114 propagationOption.maxTargetSkipping = m_option_maxNavSurfaces;
115 // Set the Gx2Fitter options
116 return Gx2FitterOptions_t{tgContext, mfContext, calContext,
117 m_gx2fExtensions.at(Acts::toUnderlying(slType)), //slType can be 3
118 std::move(propagationOption),
119 surface, m_option_includeScat,
121 Acts::FreeToBoundCorrection{m_doJacobianCorr},
122 m_nIterMax};
123}
Acts::Experimental::Gx2FitterOptions< MutableTrackStateBackend > Gx2FitterOptions_t
Abbrivation of the configuration to launch the fit.
Gaudi::Property< bool > m_doJacobianCorr
Account for non linear effects from free -> bound jacobian.
std::array< Gx2FitterExtension_t, s_nExtensions > m_gx2fExtensions
Gaudi::Property< unsigned > m_option_maxPropagationStep
Maximum number of steps per propagation call.
Gaudi::Property< bool > m_option_includeScat
Consider multiple scattering of the particle.
Gaudi::Property< bool > m_option_includeELoss
Consider particle's energy loss in the fit.
Gaudi::Property< unsigned > m_option_maxNavSurfaces
Number of maximum surfaces to be tried before the navigrator aborts.
Gaudi::Property< unsigned > m_nIterMax
Number of iterations a fit may take.

◆ fit() [1/4]

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

Definition at line 159 of file GlobalChiSquareFitterTool.cxx.

164{
165 ATH_MSG_ERROR("Track refit method not implemented in GlobalChiSquareFitterTool yet");
166 return StatusCode::FAILURE;
167}
#define ATH_MSG_ERROR(x)

◆ fit() [2/4]

std::unique_ptr< MutableTrackContainer > ActsTrk::GlobalChiSquareFitterTool::fit ( const 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 141 of file GlobalChiSquareFitterTool.cxx.

147 {
148
149 std::vector<const xAOD::UncalibratedMeasurement*> sourceLinks;
150 sourceLinks.reserve(6);
151
152 for (const xAOD::SpacePoint* sp : seed.sp()) {
153 sourceLinks.insert(sourceLinks.end(), sp->measurements().begin(), sp->measurements().end());
154 }
155 return fit(sourceLinks, initialParams, tgContext, mfContext, calContext, &targetSurface);
156}
static Double_t sp
virtual std::unique_ptr< 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

◆ fit() [3/4]

std::unique_ptr< MutableTrackContainer > ActsTrk::GlobalChiSquareFitterTool::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 170 of file GlobalChiSquareFitterTool.cxx.

175 {
176 if (sourceLinks.empty()) {
177 ATH_MSG_DEBUG("No measurements given. Nothing to do");
178 return nullptr;
179 }
180 // Construct a perigee surface as the target surface
181 std::shared_ptr<Acts::Surface> pSurface{};
182 if (!targetSurface) {
183 pSurface = Acts::Surface::makeShared<Acts::PerigeeSurface>(Acts::Vector3::Zero());
184 targetSurface = pSurface.get();
185 }
186
188
189 Gx2FitterOptions_t kfOptions = configureFit(tgContext, mfContext, calContext,
190 targetSurface, slType);
191
192 ActsTrk::MutableTrackBackend trackContainerBackEnd;
193 ActsTrk::MutableTrackStateBackend multiTrajBackEnd;
194 auto tracks = std::make_unique<MutableTrackContainer>(std::move(trackContainerBackEnd),
195 std::move(multiTrajBackEnd));
196
197 // Perform the fit
198 auto result = ATH_LIKELY(m_fitter)
199 ? m_fitter->fit(sourceLinks.begin(), sourceLinks.end(), initialParams, kfOptions, *tracks)
200 : m_slFitter->fit(sourceLinks.begin(), sourceLinks.end(), initialParams, kfOptions, *tracks);
201
202 if (not result.ok()) {
203 ATH_MSG_VERBOSE("Global chi2 fit failed");
204 return nullptr;
205 }
206
208 for (auto trkProxy : *tracks) {
210 }
211
212 return tracks;
213}
#define ATH_MSG_VERBOSE(x)
#define ATH_MSG_DEBUG(x)
#define ATH_LIKELY(x)
std::unique_ptr< StraightFitter_t > m_slFitter
The underlying straight line Acts fitter.
std::unique_ptr< CurvedFitter_t > m_fitter
The underlying curved Acts fitter.
Gx2FitterOptions_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.
Acts::VectorMultiTrajectory MutableTrackStateBackend
Acts::VectorTrackContainer MutableTrackBackend
@ GlobalChi2Fitter
Track's from Thijs' global chi^2 fitter or the ACTS implementation.
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::GlobalChiSquareFitterTool::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 127 of file GlobalChiSquareFitterTool.cxx.

133 {
134
135 std::vector<Acts::SourceLink> sourceLinks{};
136 detail::MeasurementCalibratorBase::pack(measList, sourceLinks);
137
138 return fit(sourceLinks, initialParams, tgContext, mfContext, calContext, targetSurface);
139}
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::GlobalChiSquareFitterTool::initialize ( )
overridevirtual

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

Configure the fit extensions for Trk::PrepRawData fits

Needs to be filled with live.

Connect the muon types with the muon calibrator

Definition at line 25 of file GlobalChiSquareFitterTool.cxx.

25 {
26
27 ATH_MSG_DEBUG(name() << "::" << __FUNCTION__);
29 ATH_CHECK(m_ROTcreator.retrieve(EnableTool{!m_ROTcreator.empty()}));
30 ATH_CHECK(m_geometryConvTool.retrieve());
31 ATH_CHECK(m_muonCalibrator.retrieve(EnableTool{!m_muonCalibrator.empty()}));
32
33 m_logger = makeActsAthenaLogger(this, "Gx2fRefit");
34 if (!m_doStraightLine){
35 // Fitter
36 CurvedPropagator_t::Stepper stepper{std::make_shared<ATLASMagneticFieldWrapper>()};
37 Acts::Navigator::Config navConfig{m_trackingGeometrySvc->trackingGeometry()};
38 Acts::Navigator navigator(std::move(navConfig), logger().cloneWithSuffix("Navigator"));
39 CurvedPropagator_t propagator{stepper, std::move(navigator), logger().cloneWithSuffix("Prop")};
40
41 m_fitter = std::make_unique<CurvedFitter_t>(std::move(propagator),
42 logger().cloneWithSuffix("GlobalChiSquareFitter"));
43 } else {
44 Acts::StraightLineStepper stepper{};
45 Acts::Navigator::Config navConfig{m_trackingGeometrySvc->trackingGeometry()};
46 Acts::Navigator navigator(std::move(navConfig), logger().cloneWithSuffix("Navigator"));
47 StraightPropagator_t propagator{stepper, std::move(navigator), logger().cloneWithSuffix("Prop")};
48
49 m_slFitter = std::make_unique<StraightFitter_t>(std::move(propagator),
50 logger().cloneWithSuffix("GlobalChiSquareFitter"));
51 }
52
53
54 m_outlierFinder.StateChiSquaredPerNumberDoFCut = m_option_outlierChi2Cut;
55
56 Gx2FitterExtension_t extensionTemplate{};
57 extensionTemplate.outlierFinder.connect<&detail::FitterHelperFunctions::ATLASOutlierFinder::operator()
60
62 {
63 m_trkMeasCalibrator = detail::TrkMeasurementCalibrator{};
64 m_trkMeasSurfAcc = detail::TrkMeasSurfaceAccessor{m_geometryConvTool.get()};
65
67 configureMe = extensionTemplate;
69 configureMe.surfaceAccessor.connect<&detail::TrkMeasSurfaceAccessor::operator()>(&m_trkMeasSurfAcc);
70 }
72 {
73 m_prdCalibrator = detail::TrkPrepRawDataCalibrator{m_geometryConvTool.get(), m_ROTcreator.get()};
74 m_prdSurfaceAcc = detail::TrkPrepRawDataSurfaceAcc{m_geometryConvTool.get()};
75
77 configureMe = extensionTemplate;
79 configureMe.surfaceAccessor.connect<&detail::TrkPrepRawDataSurfaceAcc::operator()>(&m_prdSurfaceAcc);
80 }
81 {
82 m_unalibMeasSurfAcc = detail::xAODUncalibMeasSurfAcc{m_trackingGeometrySvc.get()};
83
86 configureMe = extensionTemplate;
87 configureMe.surfaceAccessor.connect<&detail::xAODUncalibMeasSurfAcc::operator()>(&m_unalibMeasSurfAcc);
90
92 using enum xAOD::UncalibMeasType;
93 if (m_muonCalibrator.isEnabled()) {
96 }
97 }
98 for (const auto idType: {PixelClusterType, StripClusterType, HGTDClusterType}) {
100 }
101
102 }
103 return StatusCode::SUCCESS;
104}
#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)
Gaudi::Property< double > m_option_outlierChi2Cut
Chi2 cut used by the outlier finder.
std::unique_ptr< const Acts::Logger > m_logger
logging instance
detail::TrkMeasSurfaceAccessor m_trkMeasSurfAcc
Surface accessor delegate for Trk::MeasurementBase objects.
detail::TrkPrepRawDataCalibrator m_prdCalibrator
Calibrator of the uncalibrated Trk::PrepRawData objects to RIO_OnTrack objects.
Acts::Propagator< Acts::StraightLineStepper, Acts::Navigator > StraightPropagator_t
Type erased track fitter function.
const Acts::Logger & logger() const
Private access to the logger.
ServiceHandle< ActsTrk::ITrackingGeometrySvc > m_trackingGeometrySvc
ToolHandle< MuonR4::ISpacePointCalibrator > m_muonCalibrator
Acts::Experimental::Gx2FitterExtensions< MutableTrackStateBackend > Gx2FitterExtension_t
Abbrivation of the fitter extensions.
detail::FitterHelperFunctions::ATLASOutlierFinder m_outlierFinder
PublicToolHandle< IGeometryRealmConvTool > m_geometryConvTool
detail::TrkPrepRawDataSurfaceAcc m_prdSurfaceAcc
Surface accessor delegate for Trk::PrepRawData objects.
ToolHandle< Trk::IRIO_OnTrackCreator > m_ROTcreator
detail::TrkMeasurementCalibrator m_trkMeasCalibrator
Pass through calibrator of the Trk::MeasurementBase objects from the TrackState container.
detail::xAODUncalibMeasSurfAcc m_unalibMeasSurfAcc
Surface accessor delegate for xAOD::UncalibratedMeasurement objects.
Acts::Propagator< Acts::EigenStepper<>, Acts::Navigator > CurvedPropagator_t
Gaudi::Property< bool > m_doStraightLine
Option to toggle whether a straight line fitter shall be used.
detail::xAODUncalibMeasCalibrator m_uncalibMeasCalibrator
Calibrator for the uncalibrated xAOD::UnCalibratedMeasurement objects.
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)
@ xAODUnCalibMeas
UnCalibrated Trk::PrepRawData objects.
@ TrkPrepRawData
Calibrated Trk::MeasurementBase objects.
UncalibMeasType
Define the type of the uncalibrated measurement.

◆ logger()

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

Private access to the logger.

Definition at line 176 of file GlobalChiSquareFitterTool.h.

176{ return *m_logger; }

Member Data Documentation

◆ m_doJacobianCorr

Gaudi::Property<bool> ActsTrk::GlobalChiSquareFitterTool::m_doJacobianCorr {this, "DoFreeToBoundCorrection", false }
private

Account for non linear effects from free -> bound jacobian.

Definition at line 146 of file GlobalChiSquareFitterTool.h.

146{this, "DoFreeToBoundCorrection", false };

◆ m_doStraightLine

Gaudi::Property<bool> ActsTrk::GlobalChiSquareFitterTool::m_doStraightLine {this, "DoStraightLine" , false}
private

Option to toggle whether a straight line fitter shall be used.

Definition at line 144 of file GlobalChiSquareFitterTool.h.

144{this, "DoStraightLine" , false};

◆ m_fitter

std::unique_ptr<CurvedFitter_t> ActsTrk::GlobalChiSquareFitterTool::m_fitter {nullptr}
private

The underlying curved Acts fitter.

Definition at line 169 of file GlobalChiSquareFitterTool.h.

169{nullptr};

◆ m_geometryConvTool

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

Definition at line 127 of file GlobalChiSquareFitterTool.h.

127{this, "GeometryRealmConvTool", ""};

◆ m_gx2fExtensions

std::array<Gx2FitterExtension_t, s_nExtensions> ActsTrk::GlobalChiSquareFitterTool::m_gx2fExtensions {}
private

Definition at line 167 of file GlobalChiSquareFitterTool.h.

167{};

◆ m_idCalibrator

xAODItkCalibrator_t ActsTrk::GlobalChiSquareFitterTool::m_idCalibrator {}
private

Definition at line 163 of file GlobalChiSquareFitterTool.h.

163{};

◆ m_logger

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

logging instance

Definition at line 179 of file GlobalChiSquareFitterTool.h.

◆ m_muonCalibrator

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

Definition at line 129 of file GlobalChiSquareFitterTool.h.

129{this, "MuonCalibrationTool", ""};

◆ m_nIterMax

Gaudi::Property<unsigned> ActsTrk::GlobalChiSquareFitterTool::m_nIterMax {this, "MaxIterations", 5}
private

Number of iterations a fit may take.

Definition at line 148 of file GlobalChiSquareFitterTool.h.

148{this, "MaxIterations", 5};

◆ m_option_includeELoss

Gaudi::Property<bool> ActsTrk::GlobalChiSquareFitterTool::m_option_includeELoss {this, "IncludeELoss", true}
private

Consider particle's energy loss in the fit.

Definition at line 140 of file GlobalChiSquareFitterTool.h.

140{this, "IncludeELoss", true};

◆ m_option_includeScat

Gaudi::Property<bool> ActsTrk::GlobalChiSquareFitterTool::m_option_includeScat {this, "IncludeScattering", true}
private

Consider multiple scattering of the particle.

Definition at line 142 of file GlobalChiSquareFitterTool.h.

142{this, "IncludeScattering", true};

◆ m_option_maxNavSurfaces

Gaudi::Property<unsigned> ActsTrk::GlobalChiSquareFitterTool::m_option_maxNavSurfaces {this, "MaxSurfacesPerNavStep", 100}
private

Number of maximum surfaces to be tried before the navigrator aborts.

Definition at line 138 of file GlobalChiSquareFitterTool.h.

138{this, "MaxSurfacesPerNavStep", 100};

◆ m_option_maxPropagationStep

Gaudi::Property<unsigned> ActsTrk::GlobalChiSquareFitterTool::m_option_maxPropagationStep {this, "MaxPropagationStep", 5000}
private

Maximum number of steps per propagation call.

Definition at line 136 of file GlobalChiSquareFitterTool.h.

136{this, "MaxPropagationStep", 5000};

◆ m_option_outlierChi2Cut

Gaudi::Property<double> ActsTrk::GlobalChiSquareFitterTool::m_option_outlierChi2Cut {this, "OutlierChi2Cut", 12.5}
private

Chi2 cut used by the outlier finder.

Definition at line 134 of file GlobalChiSquareFitterTool.h.

134{this, "OutlierChi2Cut", 12.5};

◆ m_outlierFinder

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

Definition at line 173 of file GlobalChiSquareFitterTool.h.

173{0};

◆ m_prdCalibrator

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

Calibrator of the uncalibrated Trk::PrepRawData objects to RIO_OnTrack objects.

Definition at line 152 of file GlobalChiSquareFitterTool.h.

152{};

◆ m_prdSurfaceAcc

detail::TrkPrepRawDataSurfaceAcc ActsTrk::GlobalChiSquareFitterTool::m_prdSurfaceAcc {}
private

Surface accessor delegate for Trk::PrepRawData objects.

Definition at line 156 of file GlobalChiSquareFitterTool.h.

156{};

◆ m_ROTcreator

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

Definition at line 131 of file GlobalChiSquareFitterTool.h.

131{this, "RotCreatorTool", ""};

◆ m_slFitter

std::unique_ptr<StraightFitter_t> ActsTrk::GlobalChiSquareFitterTool::m_slFitter {nullptr}
private

The underlying straight line Acts fitter.

Definition at line 171 of file GlobalChiSquareFitterTool.h.

171{nullptr};

◆ m_trackingGeometrySvc

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

Definition at line 126 of file GlobalChiSquareFitterTool.h.

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

◆ m_trkMeasCalibrator

detail::TrkMeasurementCalibrator ActsTrk::GlobalChiSquareFitterTool::m_trkMeasCalibrator {}
private

Pass through calibrator of the Trk::MeasurementBase objects from the TrackState container.

Definition at line 150 of file GlobalChiSquareFitterTool.h.

150{};

◆ m_trkMeasSurfAcc

detail::TrkMeasSurfaceAccessor ActsTrk::GlobalChiSquareFitterTool::m_trkMeasSurfAcc {}
private

Surface accessor delegate for Trk::MeasurementBase objects.

Definition at line 154 of file GlobalChiSquareFitterTool.h.

154{};

◆ m_unalibMeasSurfAcc

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

Surface accessor delegate for xAOD::UncalibratedMeasurement objects.

Definition at line 158 of file GlobalChiSquareFitterTool.h.

158{};

◆ m_uncalibMeasCalibrator

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

Calibrator for the uncalibrated xAOD::UnCalibratedMeasurement objects.

Definition at line 160 of file GlobalChiSquareFitterTool.h.

160{};

◆ s_nExtensions

unsigned ActsTrk::GlobalChiSquareFitterTool::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 166 of file GlobalChiSquareFitterTool.h.


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