ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
InnerDetector
InDetAlignment
InDetAlignConfig
python
AccumulateConfig.py
Go to the documentation of this file.
1
# Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
2
3
# File: InDetAlignConfig/python/AccumulateConfig.py
4
# Author: David Brunner (david.brunner@cern.ch), Thomas Strebler (thomas.strebler@cern.ch)
5
6
from
AthenaConfiguration.ComponentAccumulator
import
ComponentAccumulator
7
from
AthenaConfiguration.ComponentFactory
import
CompFactory
8
9
10
11
def
TrackCollectionProviderCfg
(flags, name = "TrackCollectionProvider", **kwargs):
12
cfg = ComponentAccumulator()
13
14
kwargs.setdefault(
"InputTrkCol"
, flags.InDet.Align.inputTracksCollection)
15
kwargs.setdefault(
"MaxRetrievalErrors"
, 10)
16
17
cfg.setPrivateTools(CompFactory.Trk.TrackCollectionProvider(name, **kwargs))
18
return
cfg
19
20
def
ConstrainedTrackProviderCfg
(flags, name = "ConstrainedTrackProvider", **kwargs):
21
cfg = ComponentAccumulator()
22
23
if
"TrackFitter"
not
in
kwargs:
24
from
TrkConfig.CommonTrackFitterConfig
import
InDetStandaloneTrackFitterCfg
25
kwargs.setdefault(
"TrackFitter"
, cfg.popToolsAndMerge(
26
InDetStandaloneTrackFitterCfg(flags, FillDerivativeMatrix =
True
)))
27
28
kwargs.setdefault(
"MinPt"
, 0.)
29
30
from
PathResolver
import
PathResolver
31
32
kwargs.setdefault(
"MomentumConstraintFileName"
,
PathResolver.FindCalibFile
(
"InDetAlign/nullmap.root"
))
33
kwargs.setdefault(
"MomentumConstraintHistName"
,
"LambdaCorrectionVsEtaPhi"
)
34
kwargs.setdefault(
"ScalePMapToGeV"
,
True
)
35
kwargs.setdefault(
"ReduceConstraintUncertainty"
, 100.)
36
kwargs.setdefault(
"z0ConstraintFileName"
,
""
)
37
kwargs.setdefault(
"z0ConstraintHistName"
,
"z0CorrectionVsEtaPhi"
)
38
kwargs.setdefault(
"d0ConstraintFileName"
,
""
)
39
kwargs.setdefault(
"d0ConstraintHistName"
,
"d0CorrectionVsEtaPhi"
)
40
kwargs.setdefault(
"UseConstraintError"
,
False
)
41
kwargs.setdefault(
"UseConstrainedTrkOnly"
,
True
)
42
kwargs.setdefault(
"InputTracksCollection"
, flags.InDet.Align.inputTracksCollection)
43
44
cfg.setPrivateTools(CompFactory.Trk.ConstrainedTrackProvider(name, **kwargs))
45
return
cfg
46
47
48
def
AnalyticalDerivCalcToolCfg
(flags, name="AnalyticalDerivCalcTool", **kwargs):
49
cfg = ComponentAccumulator()
50
51
if
"AlignModuleTool"
not
in
kwargs:
52
from
InDetAlignConfig.IDAlignToolsConfig
import
InDetAlignModuleToolCfg
53
kwargs.setdefault(
"AlignModuleTool"
, cfg.addPublicTool(cfg.popToolsAndMerge(
54
InDetAlignModuleToolCfg(flags))))
55
56
kwargs.setdefault(
"UseIntrinsicPixelError"
,
True
)
57
kwargs.setdefault(
"UseIntrinsicSCTError"
,
True
)
58
kwargs.setdefault(
"UseIntrinsicTRTError"
,
True
)
59
60
cfg.setPrivateTools(CompFactory.Trk.AnalyticalDerivCalcTool(name, **kwargs))
61
return
cfg
62
63
64
def
AlignTrackDresserCfg
(flags, name="AlignTrackDresser", **kwargs):
65
cfg = ComponentAccumulator()
66
67
if
"DerivCalcTool"
not
in
kwargs:
68
kwargs.setdefault(
"DerivCalcTool"
, cfg.popToolsAndMerge(
69
AnalyticalDerivCalcToolCfg
(flags)))
70
71
cfg.setPrivateTools(CompFactory.Trk.AlignTrackDresser(name, **kwargs))
72
return
cfg
73
74
75
def
SimpleIDNtupleToolCfg
(flags, name="SimpleIDNtupleTool", **kwargs):
76
cfg = ComponentAccumulator()
77
78
if
"AlignModuleTool"
not
in
kwargs:
79
from
InDetAlignConfig.IDAlignToolsConfig
import
InDetAlignModuleToolCfg
80
kwargs.setdefault(
"AlignModuleTool"
, cfg.addPublicTool(cfg.popToolsAndMerge(
81
InDetAlignModuleToolCfg(flags))))
82
83
if
"TrackParticleCreatorTool"
not
in
kwargs:
84
from
TrkConfig.TrkParticleCreatorConfig
import
TrackParticleCreatorToolCfg
85
kwargs.setdefault(
"TrackParticleCreatorTool"
, cfg.popToolsAndMerge(
86
TrackParticleCreatorToolCfg(flags)))
87
88
cfg.setPrivateTools(CompFactory.InDet.SimpleIDNtupleTool(name, **kwargs))
89
return
cfg
90
91
92
def
AlignAlgCfg
(flags, name="AlignAlgAccumulate", **kwargs):
93
cfg = ComponentAccumulator()
94
95
if
"GeometryManagerTool"
not
in
kwargs:
96
from
InDetAlignConfig.IDAlignToolsConfig
import
InDetGeometryManagerToolCfg
97
kwargs.setdefault(
"GeometryManagerTool"
, cfg.addPublicTool(cfg.popToolsAndMerge(
98
InDetGeometryManagerToolCfg(flags))))
99
100
if
"AlignTool"
not
in
kwargs:
101
from
InDetAlignConfig.IDAlignToolsConfig
import
GlobalChi2AlignToolCfg
102
kwargs.setdefault(
"AlignTool"
, cfg.popToolsAndMerge(GlobalChi2AlignToolCfg(flags)))
103
104
if
"AlignDBTool"
not
in
kwargs:
105
from
InDetAlignConfig.IDAlignToolsConfig
import
InDetTrkAlignDBToolCfg
106
kwargs.setdefault(
"AlignDBTool"
, cfg.popToolsAndMerge(InDetTrkAlignDBToolCfg(flags)))
107
108
kwargs.setdefault(
"TrackCollectionProvider"
, cfg.popToolsAndMerge(
109
TrackCollectionProviderCfg
(flags)))
110
111
if
"AlignTrackCreator"
not
in
kwargs:
112
from
InDetAlignConfig.IDAlignToolsConfig
import
AlignTrackCreatorCfg
113
kwargs.setdefault(
"AlignTrackCreator"
, cfg.popToolsAndMerge(
114
AlignTrackCreatorCfg(flags)))
115
116
kwargs.setdefault(
"AlignTrackDresser"
, cfg.popToolsAndMerge(
AlignTrackDresserCfg
(flags)))
117
118
if
"AlignTrackPreProcessor"
not
in
kwargs:
119
from
InDetAlignConfig.IDAlignToolsConfig
import
BeamspotVertexPreProcessorCfg
120
kwargs.setdefault(
"AlignTrackPreProcessor"
, cfg.popToolsAndMerge(
121
BeamspotVertexPreProcessorCfg(flags)))
122
123
kwargs.setdefault(
"WriteNtuple"
, flags.InDet.Align.writeAlignNtuple)
124
125
if
flags.InDet.Align.writeAlignNtuple:
126
kwargs.setdefault(
"FillNtupleTool"
, cfg.popToolsAndMerge(
SimpleIDNtupleToolCfg
(flags)))
127
kwargs.setdefault(
"FilePath"
,
"{flags.InDet.Align.baseDir}/Accumulate"
)
128
kwargs.setdefault(
"FileName"
,
"newIDalign.root"
)
129
130
cfg.addEventAlgo(CompFactory.Trk.AlignAlg(name, **kwargs))
131
132
return
cfg
133
134
def
AccumulateCfg
(flags):
135
cfg =
AlignAlgCfg
(flags)
136
137
if
flags.InDet.Align.doMonitoring:
138
from
InDetAlignmentMonitoringRun3.InDetAlignmentMonitoringRun3Config
import
(
139
InDetAlignmentMonitoringRun3Config)
140
141
cfg.merge(
InDetAlignmentMonitoringRun3Config
(flags, TrackCollectionName = flags.InDet.Align.inputTracksCollection))
142
143
return
cfg
PathResolver::FindCalibFile
static std::string FindCalibFile(const std::string &logical_file_name)
Definition
PathResolver.h:63
AccumulateConfig.AlignAlgCfg
AlignAlgCfg(flags, name="AlignAlgAccumulate", **kwargs)
Definition
AccumulateConfig.py:92
AccumulateConfig.TrackCollectionProviderCfg
TrackCollectionProviderCfg(flags, name="TrackCollectionProvider", **kwargs)
--— Setup of Tools for Trk.AlignAlg --—##
Definition
AccumulateConfig.py:11
AccumulateConfig.SimpleIDNtupleToolCfg
SimpleIDNtupleToolCfg(flags, name="SimpleIDNtupleTool", **kwargs)
Definition
AccumulateConfig.py:75
AccumulateConfig.AlignTrackDresserCfg
AlignTrackDresserCfg(flags, name="AlignTrackDresser", **kwargs)
Definition
AccumulateConfig.py:64
AccumulateConfig.AccumulateCfg
AccumulateCfg(flags)
Definition
AccumulateConfig.py:134
AccumulateConfig.AnalyticalDerivCalcToolCfg
AnalyticalDerivCalcToolCfg(flags, name="AnalyticalDerivCalcTool", **kwargs)
Definition
AccumulateConfig.py:48
AccumulateConfig.ConstrainedTrackProviderCfg
ConstrainedTrackProviderCfg(flags, name="ConstrainedTrackProvider", **kwargs)
Definition
AccumulateConfig.py:20
InDetAlignmentMonitoringRun3Config
Definition
InDetAlignmentMonitoringRun3Config.py:1
Generated on
for ATLAS Offline Software by
1.17.0