ATLAS Offline Software
Loading...
Searching...
No Matches
FitterTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4#ifndef MUONTRACKFINDINGTOOLS_FITTERTOOL_H
5#define MUONTRACKFINDINGTOOLS_FITTERTOOL_H
6
7
10
15
18
19
20// ACTS
21#include "Acts/EventData/BoundTrackParameters.hpp"
22#include "Acts/EventData/VectorTrackContainer.hpp"
23#include "Acts/Geometry/GeometryIdentifier.hpp"
24#include "Acts/Propagator/Navigator.hpp"
25#include "Acts/Propagator/Propagator.hpp"
26#include "Acts/Propagator/StraightLineStepper.hpp"
27#include "Acts/Propagator/EigenStepper.hpp"
28
29
32
33namespace MuonR4 {
34 class FitterTool : public extends<AthAlgTool, ActsTrk::IFitterTool> {
35 public:
36 using base_class::base_class;
37 virtual StatusCode initialize() override final;
39 virtual std::unique_ptr<ActsTrk::MutableTrackContainer>
40 fit(const ActsTrk::Seed &seed,
41 const Acts::BoundTrackParameters& initialParams,
42 const Acts::GeometryContext& tgContext,
43 const Acts::MagneticFieldContext& mfContext,
44 const Acts::CalibrationContext& calContext,
45 const Acts::Surface& targetSurface) const override final;
46
48 virtual std::unique_ptr<ActsTrk::MutableTrackContainer >
49 fit(const std::vector<const xAOD::UncalibratedMeasurement* > & measList,
50 const Acts::BoundTrackParameters& initialParams,
51 const Acts::GeometryContext& tgContext,
52 const Acts::MagneticFieldContext& mfContext,
53 const Acts::CalibrationContext& calContext,
54 const Acts::Surface* targetSurface = nullptr) const override final;
56 virtual std::unique_ptr<ActsTrk::MutableTrackContainer >
57 fit(const std::vector<Acts::SourceLink>& sourceLinks,
58 const Acts::BoundTrackParameters& initialParams,
59 const Acts::GeometryContext& tgContext,
60 const Acts::MagneticFieldContext& mfContext,
61 const Acts::CalibrationContext& calContext,
62 const Acts::Surface* targetSurface = nullptr) const override final;
64 virtual StatusCode fit(const EventContext& ctx,
65 const ActsTrk::TrackContainer::ConstTrackProxy& track,
66 ActsTrk::MutableTrackContainer& trackContainer,
67 const Acts::PerigeeSurface& pSurface) const override final;
68
70 using StraightPropagator_t = Acts::Propagator<Acts::StraightLineStepper, Acts::Navigator>;
72 using CurvedPropagator_t = Acts::Propagator<Acts::EigenStepper<>, Acts::Navigator>;
77
82 private:
84 Gaudi::Property<bool> m_doStraightLineFit{this, "doStraightLine", false};
86 Gaudi::Property<unsigned> m_doMaxSteps{this, "maxSteps", 1000000 };
88 Gaudi::Property<unsigned> m_maxSurfaces{this, "maxSurfaces", 10000};
90 Gaudi::Property<unsigned> m_maxIter{this, "nIterMax" , 250};
92 Gaudi::Property<bool> m_doEnergyLoss{this, "doEnergyLoss" , false};
94 Gaudi::Property<bool> m_doScattering{this, "doScattering" , false};
97 "ActsTrackingGeometrySvc"};
98
99 ToolHandle<MuonR4::ISpacePointCalibrator> m_muonCalibrator{this, "MuonCalibrationTool", ""};
100
105
107
108 using Fitter_t = std::variant<std::monostate,
112
113
114
115
116 };
117}
118#endif
Source link calibrator implementation for xAOD::Uncalibrated measurements.
Helper class to access the Acts::surface associated with an Uncalibrated xAOD measurement.
Global Chi Square fitter (GX2F) implementation.
Definition Chi2Fitter.h:713
virtual std::unique_ptr< ActsTrk::MutableTrackContainer > 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 override final
Tries to fit a short-line track from an initial ITk/ID seed made up out of three spacepoints.
ToolHandle< MuonR4::ISpacePointCalibrator > m_muonCalibrator
Tool handle to calibrate the muon measurmeents.
Definition FitterTool.h:99
Acts::Propagator< Acts::EigenStepper<>, Acts::Navigator > CurvedPropagator_t
Abrivation for the curved standard propagator.
Definition FitterTool.h:72
Gaudi::Property< bool > m_doStraightLineFit
Do the straight line fit.
Definition FitterTool.h:84
Acts::Propagator< Acts::StraightLineStepper, Acts::Navigator > StraightPropagator_t
Abrivation for the straight line propagator.
Definition FitterTool.h:70
MuonExperimental::Gx2Fitter< StraightPropagator_t, ActsTrk::MutableTrackStateBackend > StraightFitter_t
Abrivation of the fitter using the straight line propagator.
Definition FitterTool.h:74
Gaudi::Property< bool > m_doEnergyLoss
Do energy loss modelling in the fit.
Definition FitterTool.h:92
Gaudi::Property< bool > m_doScattering
Increase the nuissances by introducing scattering angles.
Definition FitterTool.h:94
MuonExperimental::Gx2FitterExtensions< ActsTrk::MutableTrackStateBackend > Gx2FitterExtension_t
Abbrivation of the fitter extensions.
Definition FitterTool.h:81
MuonExperimental::Gx2FitterOptions< ActsTrk::MutableTrackStateBackend > Gx2FitterOptions_t
Abbrivation of the configuration to launch the fit.
Definition FitterTool.h:79
ActsTrk::detail::xAODUncalibMeasSurfAcc m_unalibMeasSurfAcc
Surface accessor delegate for xAOD::UncalibratedMeasurement objects.
Definition FitterTool.h:102
virtual StatusCode initialize() override final
ServiceHandle< ActsTrk::ITrackingGeometrySvc > m_trackingGeometrySvc
Tracking geometry service.
Definition FitterTool.h:96
Gx2FitterExtension_t m_extensions
Definition FitterTool.h:106
std::variant< std::monostate, StraightFitter_t, CurvedFitter_t > Fitter_t
Definition FitterTool.h:108
Gaudi::Property< unsigned > m_maxSurfaces
How many surfaces to try.
Definition FitterTool.h:88
Gaudi::Property< unsigned > m_doMaxSteps
How ,many steps to go.
Definition FitterTool.h:86
Gaudi::Property< unsigned > m_maxIter
How many iterations to use in the fit.
Definition FitterTool.h:90
ActsTrk::detail::xAODUncalibMeasCalibrator m_uncalibMeasCalibrator
Calibrator for the uncalibrated xAOD::UnCalibratedMeasurement objects.
Definition FitterTool.h:104
MuonExperimental::Gx2Fitter< CurvedPropagator_t, ActsTrk::MutableTrackStateBackend > CurvedFitter_t
Abrivation of the fitter using the curved line propagator.
Definition FitterTool.h:76
Acts::TrackContainer< MutableTrackBackend, MutableTrackStateBackend, Acts::detail::ValueHolder > MutableTrackContainer
This header ties the generic definitions in this package.
Extension struct which holds delegates to customise the GX2F behaviour.
Definition Chi2Fitter.h:228
Combined options for the Global-Chi-Square fitter.
Definition Chi2Fitter.h:290