ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Tracking
TrkExtrapolation
TrkExEngine
TrkExEngine
MaterialEffectsEngine.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
// MaterialEffectsEngine.h, (c) ATLAS Detector software
8
9
#ifndef TRKEXINTERFACES_MATERIAKEFFECTSENGINE_H
10
#define TRKEXINTERFACES_MATERIAKEFFECTSENGINE_H
11
12
// Gaudi
13
#include "
AthenaBaseComps/AthAlgTool.h
"
14
// Trk
15
#include "
TrkExInterfaces/IMaterialEffectsEngine.h
"
16
#include "
TrkExInterfaces/ExtrapolationMacros.h
"
17
#include "
TrkExUtils/ExtrapolationCell.h
"
18
#include "
TrkExUtils/MaterialInteraction.h
"
19
#include "
TrkExUtils/MaterialUpdateMode.h
"
20
#include "
TrkEventPrimitives/PropDirection.h
"
21
#include "
TrkParameters/TrackParameters.h
"
22
#include "
TrkNeutralParameters/NeutralParameters.h
"
23
#include "
CxxUtils/checker_macros.h
"
24
namespace
Trk
{
25
26
class
Layer
;
27
38
class
MaterialEffectsEngine
:
public
AthAlgTool
,
virtual
public
IMaterialEffectsEngine
{
39
public
:
40
42
MaterialEffectsEngine
(
const
std::string&,
const
std::string&,
const
IInterface*);
43
45
~MaterialEffectsEngine
();
46
48
StatusCode
initialize
();
49
51
StatusCode
finalize
();
52
54
virtual
ExtrapolationCode
handleMaterial
(
ExCellCharged
& ecCharged,
55
PropDirection
dir=
alongMomentum
,
56
MaterialUpdateStage
matupstage=
fullUpdate
)
const
;
57
59
virtual
ExtrapolationCode
handleMaterial
(
ExCellNeutral
& ecNeutral,
60
PropDirection
dir=
alongMomentum
,
61
MaterialUpdateStage
matupstage=
fullUpdate
)
const
;
62
63
protected
:
65
TrackParameters
*
updateTrackParameters
(
Trk::TrackParameters
& parameters,
66
Trk::ExCellCharged
& eCell,
67
Trk::PropDirection
dir,
68
Trk::MaterialUpdateStage
matupstage)
const
;
69
70
MaterialInteraction
m_interactionFormulae
;
71
BooleanProperty
m_eLossCorrection
{
this
,
"EnergyLossCorrection"
,
true
,
72
"apply the energy loss correction"
};
73
BooleanProperty
m_eLossMpv
{
this
,
"MostProbableEnergyLoss"
,
true
,
74
"apply the energy loss correction as most probable value"
};
75
BooleanProperty
m_mscCorrection
{
this
,
"MultipleScatteringCorrection"
,
true
,
76
"apply the multiple (coulomb) scattering correction"
};
77
78
StringProperty
m_sopPrefix_prop
{
this
,
"OutputPrefix"
,
""
};
79
StringProperty
m_sopPostfix_prop
{
this
,
"OutputPostfix"
,
""
};
80
81
};
82
83
84
}
// end of namespace
85
86
#endif
// TRKEXINTERFACES_MATERIAKEFFECTSENGINE_H
87
AthAlgTool.h
ExtrapolationCell.h
ExtrapolationMacros.h
IMaterialEffectsEngine.h
MaterialInteraction.h
MaterialUpdateMode.h
NeutralParameters.h
PropDirection.h
TrackParameters.h
checker_macros.h
Define macros for attributes used to control the static checker.
AthAlgTool::AthAlgTool
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
Definition
AthAlgTool.cxx:16
Trk::ExtrapolationCode
Definition
ExtrapolationCell.h:105
Trk::IMaterialEffectsEngine
Material effects engine interface for charged and neutral (fast track simulation) ,...
Definition
IMaterialEffectsEngine.h:40
Trk::Layer
Base Class for a Detector Layer in the Tracking realm.
Definition
Layer.h:72
Trk::MaterialEffectsEngine::m_interactionFormulae
MaterialInteraction m_interactionFormulae
the formulas concentrated
Definition
MaterialEffectsEngine.h:70
Trk::MaterialEffectsEngine::handleMaterial
virtual ExtrapolationCode handleMaterial(ExCellCharged &ecCharged, PropDirection dir=alongMomentum, MaterialUpdateStage matupstage=fullUpdate) const
charged extrapolation
Definition
MaterialEffectsEngine.cxx:92
Trk::MaterialEffectsEngine::initialize
StatusCode initialize()
AlgTool initialize method.
Definition
MaterialEffectsEngine.cxx:29
Trk::MaterialEffectsEngine::~MaterialEffectsEngine
~MaterialEffectsEngine()
Destructor.
Trk::MaterialEffectsEngine::finalize
StatusCode finalize()
AlgTool finalize method.
Definition
MaterialEffectsEngine.cxx:39
Trk::MaterialEffectsEngine::MaterialEffectsEngine
MaterialEffectsEngine(const std::string &, const std::string &, const IInterface *)
Constructor.
Definition
MaterialEffectsEngine.cxx:17
Trk::MaterialEffectsEngine::m_mscCorrection
BooleanProperty m_mscCorrection
Definition
MaterialEffectsEngine.h:75
Trk::MaterialEffectsEngine::m_eLossMpv
BooleanProperty m_eLossMpv
Definition
MaterialEffectsEngine.h:73
Trk::MaterialEffectsEngine::updateTrackParameters
TrackParameters * updateTrackParameters(Trk::TrackParameters ¶meters, Trk::ExCellCharged &eCell, Trk::PropDirection dir, Trk::MaterialUpdateStage matupstage) const
charged extrapolation
Definition
MaterialEffectsEngine.cxx:108
Trk::MaterialEffectsEngine::m_sopPostfix_prop
StringProperty m_sopPostfix_prop
Definition
MaterialEffectsEngine.h:79
Trk::MaterialEffectsEngine::m_sopPrefix_prop
StringProperty m_sopPrefix_prop
Definition
MaterialEffectsEngine.h:78
Trk::MaterialEffectsEngine::m_eLossCorrection
BooleanProperty m_eLossCorrection
Definition
MaterialEffectsEngine.h:71
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition
FakeTrackBuilder.h:9
Trk::PropDirection
PropDirection
PropDirection, enum for direction of the propagation.
Definition
PropDirection.h:19
Trk::alongMomentum
@ alongMomentum
Definition
PropDirection.h:20
Trk::MaterialUpdateStage
MaterialUpdateStage
This is a steering enum to tell which material update stage:
Definition
PropDirection.h:40
Trk::fullUpdate
@ fullUpdate
Definition
PropDirection.h:43
Trk::ExCellCharged
ExtrapolationCell< TrackParameters > ExCellCharged
Definition
IExtrapolationEngine.h:24
Trk::TrackParameters
ParametersBase< TrackParametersDim, Charged > TrackParameters
Definition
Tracking/TrkEvent/TrkParameters/TrkParameters/TrackParameters.h:27
Trk::ExCellNeutral
ExtrapolationCell< NeutralParameters > ExCellNeutral
Definition
IExtrapolationEngine.h:25
Trk::MaterialInteraction
Collection of parametrizations used in the Tracking realm.
Definition
MaterialInteraction.h:25
Generated on
for ATLAS Offline Software by
1.17.0