ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
MuonSpectrometer
MuonReconstruction
MuonSegmentMakers
MuonSegmentMakerTools
DCMathSegmentMaker
src
MuonSegmentFittingTool.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef MUONSEGMENTFITTINGTOOL_H
6
#define MUONSEGMENTFITTINGTOOL_H
7
8
#include <string>
9
#include <vector>
10
11
#include "
AthenaBaseComps/AthAlgTool.h
"
12
#include "GaudiKernel/ToolHandle.h"
13
#include "
GeoPrimitives/GeoPrimitives.h
"
14
#include "
MuonRecToolInterfaces/IMuonSegmentFittingTool.h
"
15
#include "
MuonRecToolInterfaces/IMuonTrackCleaner.h
"
16
#include "
TrkExInterfaces/IPropagator.h
"
17
#include "
TrkFitterInterfaces/ITrackFitter.h
"
18
#include "
TrkGeometry/MagneticFieldProperties.h
"
19
20
namespace
Trk
{
21
class
PlaneSurface
;
22
class
LocalDirection
;
23
class
MeasurementBase
;
24
}
// namespace Trk
25
26
namespace
Muon
{
27
class
MuonSegment
;
28
}
29
30
namespace
Muon
{
31
38
class
MuonSegmentFittingTool
:
virtual
public
IMuonSegmentFittingTool
,
public
AthAlgTool
{
39
public
:
40
MuonSegmentFittingTool
(
const
std::string&,
const
std::string&,
const
IInterface*);
41
42
virtual
~MuonSegmentFittingTool
() =
default
;
43
44
virtual
StatusCode
initialize
();
45
47
Trk::Track
*
fit
(
const
Amg::Vector3D
& gpos,
const
Amg::Vector3D
& gdir,
const
Trk::PlaneSurface
& surf,
48
const
std::vector<const Trk::MeasurementBase*>& rioVec)
const
;
49
51
Trk::Track
*
fit
(
const
MuonSegment
& segment)
const
;
52
54
void
updateSegmentParameters
(
const
Trk::Track
& track,
const
Trk::PlaneSurface
& surf,
Amg::Vector2D
& segLocPos,
55
Trk::LocalDirection
& segLocDir,
Amg::MatrixX
& locerr)
const
;
56
57
Trk::MagneticFieldProperties
m_magFieldProperties
;
//<! pmagnetic field properties
58
59
ToolHandle<Trk::IPropagator>
m_slPropagator
{
60
this
,
61
"SLPropagator"
,
62
"Trk::RungeKuttaPropagator/AtlasRungeKuttaPropagator"
,
63
};
//<! propagator, always use straightline
64
ToolHandle<Trk::ITrackFitter>
m_slTrackFitter
{
65
this
,
66
"SLFitter"
,
67
"Trk::GlobalChi2Fitter/MCTBSLFitter"
,
68
};
//<! fitter, always use straightline
69
ToolHandle<Trk::ITrackFitter>
m_curvedTrackFitter
{
70
this
,
71
"CurvedFitter"
,
72
"Trk::GlobalChi2Fitter/MCTBFitter"
,
73
};
//<! fitter, curved tracks
74
ToolHandle<Muon::IMuonTrackCleaner>
m_trackCleaner
{
75
this
,
76
"TrackCleaner"
,
77
"Muon::MuonTrackCleaner/MuonTrackCleaner"
,
78
};
79
80
bool
m_updatePrecisionCoordinate
;
//<! flag to select update of precision coordinate in fit
81
};
82
83
}
// namespace Muon
84
#endif
AthAlgTool.h
GeoPrimitives.h
IMuonSegmentFittingTool.h
IMuonTrackCleaner.h
IPropagator.h
ITrackFitter.h
MagneticFieldProperties.h
AthAlgTool::AthAlgTool
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
Definition
AthAlgTool.cxx:16
Muon::IMuonSegmentFittingTool
The IMuonSegmentMaker is a pure virtual interface for tools to find tracks starting from MuonSegmentC...
Definition
IMuonSegmentFittingTool.h:30
Muon::MuonSegmentFittingTool::m_trackCleaner
ToolHandle< Muon::IMuonTrackCleaner > m_trackCleaner
Definition
MuonSegmentFittingTool.h:74
Muon::MuonSegmentFittingTool::updateSegmentParameters
void updateSegmentParameters(const Trk::Track &track, const Trk::PlaneSurface &surf, Amg::Vector2D &segLocPos, Trk::LocalDirection &segLocDir, Amg::MatrixX &locerr) const
update the parameters of the segment using the track information
Definition
MuonSegmentFittingTool.cxx:131
Muon::MuonSegmentFittingTool::MuonSegmentFittingTool
MuonSegmentFittingTool(const std::string &, const std::string &, const IInterface *)
Definition
MuonSegmentFittingTool.cxx:26
Muon::MuonSegmentFittingTool::m_slPropagator
ToolHandle< Trk::IPropagator > m_slPropagator
Definition
MuonSegmentFittingTool.h:59
Muon::MuonSegmentFittingTool::initialize
virtual StatusCode initialize()
Definition
MuonSegmentFittingTool.cxx:32
Muon::MuonSegmentFittingTool::m_magFieldProperties
Trk::MagneticFieldProperties m_magFieldProperties
Definition
MuonSegmentFittingTool.h:57
Muon::MuonSegmentFittingTool::fit
Trk::Track * fit(const Amg::Vector3D &gpos, const Amg::Vector3D &gdir, const Trk::PlaneSurface &surf, const std::vector< const Trk::MeasurementBase * > &rioVec) const
fit segment parameters + hits producing a track
Definition
MuonSegmentFittingTool.cxx:44
Muon::MuonSegmentFittingTool::m_curvedTrackFitter
ToolHandle< Trk::ITrackFitter > m_curvedTrackFitter
Definition
MuonSegmentFittingTool.h:69
Muon::MuonSegmentFittingTool::m_slTrackFitter
ToolHandle< Trk::ITrackFitter > m_slTrackFitter
Definition
MuonSegmentFittingTool.h:64
Muon::MuonSegmentFittingTool::~MuonSegmentFittingTool
virtual ~MuonSegmentFittingTool()=default
Muon::MuonSegmentFittingTool::m_updatePrecisionCoordinate
bool m_updatePrecisionCoordinate
Definition
MuonSegmentFittingTool.h:80
Muon::MuonSegment
This is the common class for 3D segments used in the muon spectrometer.
Definition
MuonSpectrometer/MuonReconstruction/MuonRecEvent/MuonSegment/MuonSegment/MuonSegment.h:45
Trk::LocalDirection
represents the three-dimensional global direction with respect to a planar surface frame.
Definition
LocalDirection.h:81
Trk::MagneticFieldProperties
magnetic field properties to steer the behavior of the extrapolation
Definition
MagneticFieldProperties.h:31
Trk::MeasurementBase
This class is the pure abstract base class for all fittable tracking measurements.
Definition
MeasurementBase.h:58
Trk::PlaneSurface
Class for a planaer rectangular or trapezoidal surface in the ATLAS detector.
Definition
PlaneSurface.h:64
Trk::Track
The ATLAS Track class.
Definition
Tracking/TrkEvent/TrkTrack/TrkTrack/Track.h:73
Amg::MatrixX
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > MatrixX
Dynamic Matrix - dynamic allocation.
Definition
EventPrimitives.h:27
Amg::Vector2D
Eigen::Matrix< double, 2, 1 > Vector2D
Definition
GeoPrimitives.h:48
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition
GeoPrimitives.h:47
Muon
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.
Definition
TrackSystemController.h:46
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition
FakeTrackBuilder.h:9
Generated on
for ATLAS Offline Software by
1.17.0