ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
InnerDetector
InDetConfig
python
TRT_ElectronPidToolsConfig.py
Go to the documentation of this file.
1
# Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
2
from
AthenaConfiguration.ComponentAccumulator
import
ComponentAccumulator
3
from
AthenaConfiguration.ComponentFactory
import
CompFactory
4
5
6
def
TRT_LocalOccupancyCfg
(flags, name="TRT_LocalOccupancy", **kwargs):
7
acc = ComponentAccumulator()
8
from
TRT_ConditionsServices.TRT_ConditionsServicesConfig
import
TRT_CalDbToolCfg
9
CalDbTool = acc.popToolsAndMerge(TRT_CalDbToolCfg(flags))
10
acc.addPublicTool(CalDbTool)
# public as it is has many clients to save some memory
11
kwargs.setdefault(
"TRTCalDbTool"
, CalDbTool)
12
13
from
TRT_ConditionsAlgs.TRT_ConditionsAlgsConfig
import
TRTStrawStatusCondAlgCfg, TRTStrawCondAlgCfg
14
acc.merge(TRTStrawStatusCondAlgCfg(flags))
15
acc.merge(TRTStrawCondAlgCfg(flags))
16
17
kwargs.setdefault(
"isTrigger"
,
False
)
18
19
if
"TRT_DriftCircleCollection"
not
in
kwargs:
20
# TODO: Drift circles
21
pass
22
23
acc.setPrivateTools(CompFactory.InDet.TRT_LocalOccupancy(name, **kwargs))
24
return
acc
25
26
def
TrigTRT_LocalOccupancyCfg
(flags, name="TrigTRT_LocalOccupancy", **kwargs):
27
acc = ComponentAccumulator()
28
29
kwargs.setdefault(
"isTrigger"
,
True
)
30
kwargs.setdefault(
"TRT_DriftCircleCollection"
,
"TRT_TrigDriftCircles"
)
31
32
acc.setPrivateTools(acc.popToolsAndMerge(
TRT_LocalOccupancyCfg
(flags,name,**kwargs)))
33
return
acc
34
35
36
def
TRT_OverlayLocalOccupancyCfg
(flags, name="TRT_OverlayLocalOccupancy", **kwargs):
37
"""Return a ComponentAccumulator for overlay TRT_LocalOccupancy Tool"""
38
kwargs.setdefault(
"TRT_DriftCircleCollection"
,
""
)
39
from
TRT_ConditionsAlgs.TRT_ConditionsAlgsConfig
import
TRTStrawStatusCondAlgCfg
40
acc = TRTStrawStatusCondAlgCfg(flags, StrawStatusHTSummaryWriteKey=
""
)
41
acc.setPrivateTools(acc.popToolsAndMerge(
TRT_LocalOccupancyCfg
(flags, name, **kwargs)))
42
return
acc
43
44
45
def
TRTOccupancyIncludeCfg
(flags, name="TRTOccupancyInclude", **kwargs):
46
acc = ComponentAccumulator()
47
tool = acc.popToolsAndMerge(
TRT_LocalOccupancyCfg
(flags))
48
acc.addPublicTool(tool)
49
kwargs.setdefault(
"TRT_LocalOccupancyTool"
, tool)
50
acc.addEventAlgo(CompFactory.TRTOccupancyInclude(name, **kwargs))
51
return
acc
52
53
54
def
__TRT_dEdxToolBaseCfg
(flags, name, **kwargs):
55
"""internal function to avoid code duplication,
56
it does not deal with LumiBlockMuWriterCfg dependancy correctly
57
"""
58
59
from
TRT_ConditionsAlgs.TRT_ConditionsAlgsConfig
import
TRTToTCondAlgCfg
60
acc = TRTToTCondAlgCfg(flags)
61
62
kwargs.setdefault(
"TRT_dEdx_isData"
,
not
flags.Input.isMC)
63
64
acc.setPrivateTools(CompFactory.TRT_ToT_dEdx(name,**kwargs))
65
return
acc
66
67
68
def
TRT_dEdxToolCfg
(flags, name="TRT_dEdxTool", **kwargs):
69
acc = ComponentAccumulator()
70
71
if
not
flags.Input.isMC:
72
from
LumiBlockComps.LumiBlockMuWriterConfig
import
LumiBlockMuWriterCfg
73
acc.merge(LumiBlockMuWriterCfg(flags))
74
75
if
"TRT_LocalOccupancyTool"
not
in
kwargs:
76
kwargs.setdefault(
"TRT_LocalOccupancyTool"
, acc.popToolsAndMerge(
77
TRT_LocalOccupancyCfg
(flags)))
78
79
if
"AssociationTool"
not
in
kwargs:
80
from
InDetConfig.InDetAssociationToolsConfig
import
(
81
InDetPrdAssociationToolCfg)
82
kwargs.setdefault(
"AssociationTool"
, acc.popToolsAndMerge(
83
InDetPrdAssociationToolCfg(flags)))
84
85
if
"TRTStrawSummaryTool"
not
in
kwargs:
86
from
TRT_ConditionsServices.TRT_ConditionsServicesConfig
import
TRT_StrawStatusSummaryToolCfg
87
kwargs.setdefault(
"TRTStrawSummaryTool"
, acc.popToolsAndMerge(TRT_StrawStatusSummaryToolCfg(flags)))
88
89
from
AthenaConfiguration.Enums
import
ProductionStep
90
if
flags.Common.ProductionStep
in
[ProductionStep.MinbiasPreprocessing]:
91
kwargs.setdefault(
"averageInteractionsPerCrossingKey"
, f
"{flags.Overlay.BkgPrefix}EventInfo.averageInteractionsPerCrossing"
)
92
93
acc.setPrivateTools(acc.popToolsAndMerge(
94
__TRT_dEdxToolBaseCfg
(flags, name, **kwargs)))
95
return
acc
96
97
98
def
TrigTRT_dEdxToolCfg
(flags, name="TrigTRT_dEdxTool", **kwargs):
99
"""trigger version should not add LumiBlockMuWriterCfg to views as it is scheduled globally"""
100
101
acc = ComponentAccumulator()
102
103
if
"TRT_LocalOccupancyTool"
not
in
kwargs:
104
kwargs.setdefault(
"TRT_LocalOccupancyTool"
, acc.popToolsAndMerge(
TrigTRT_LocalOccupancyCfg
(flags)))
105
106
if
"AssociationTool"
not
in
kwargs:
107
from
InDetConfig.InDetAssociationToolsConfig
import
TrigPrdAssociationToolCfg
108
kwargs.setdefault(
"AssociationTool"
, acc.popToolsAndMerge(TrigPrdAssociationToolCfg(flags)))
109
110
acc.setPrivateTools(acc.popToolsAndMerge(
__TRT_dEdxToolBaseCfg
(flags, name, **kwargs)))
111
return
acc
112
113
def
TRT_ElectronPidToolCfg
(flags, name="TRT_ElectronPidTool", **kwargs):
114
from
TRT_ConditionsAlgs.TRT_ConditionsAlgsConfig
import
TRTHTCondAlgCfg, TRTPIDNNCondAlgCfg
115
acc = TRTHTCondAlgCfg(flags)
116
117
kwargs.setdefault(
"CalculateNNPid"
,
True
)
118
119
if
kwargs[
"CalculateNNPid"
]:
120
acc.merge(TRTPIDNNCondAlgCfg(flags))
121
122
if
"TRTStrawSummaryTool"
not
in
kwargs:
123
from
TRT_ConditionsServices.TRT_ConditionsServicesConfig
import
TRT_StrawStatusSummaryToolCfg
124
kwargs.setdefault(
"TRTStrawSummaryTool"
, acc.popToolsAndMerge(TRT_StrawStatusSummaryToolCfg(flags)))
125
126
if
"TRT_LocalOccupancyTool"
not
in
kwargs:
127
kwargs.setdefault(
"TRT_LocalOccupancyTool"
, acc.popToolsAndMerge(
TRT_LocalOccupancyCfg
(flags)))
128
129
if
"TRT_ToT_dEdx_Tool"
not
in
kwargs:
130
kwargs.setdefault(
"TRT_ToT_dEdx_Tool"
, acc.popToolsAndMerge(
TRT_dEdxToolCfg
(flags)))
131
132
acc.setPrivateTools(CompFactory.InDet.TRT_ElectronPidToolRun2(name, **kwargs))
133
return
acc
134
135
def
TrigTRT_ElectronPidToolCfg
(flags, name="InDetTrigTRT_ElectronPidTool", **kwargs):
136
137
acc = ComponentAccumulator()
138
139
from
TRT_ConditionsServices.TRT_ConditionsServicesConfig
import
TRT_StrawStatusSummaryToolCfg
140
kwargs.setdefault(
"TRTStrawSummaryTool"
, acc.popToolsAndMerge(TRT_StrawStatusSummaryToolCfg(flags,name=
"InDetTrigTRTStrawStatusSummaryTool"
)))
141
142
kwargs.setdefault(
"TRT_LocalOccupancyTool"
, acc.popToolsAndMerge(
TrigTRT_LocalOccupancyCfg
(flags)))
143
kwargs.setdefault(
"TRT_ToT_dEdx_Tool"
, acc.popToolsAndMerge(
TrigTRT_dEdxToolCfg
(flags)))
144
145
kwargs.setdefault(
"CalculateNNPid"
,
False
)
146
147
acc.setPrivateTools(acc.popToolsAndMerge(
TRT_ElectronPidToolCfg
(flags,name,**kwargs)))
148
return
acc
149
150
def
GSFBuildTRT_ElectronPidToolCfg
(flags, name="GSFBuildTRT_ElectronPidTool", isTrigger=False, **kwargs):
151
kwargs.setdefault(
"CalculateNNPid"
,
False
)
152
kwargs.setdefault(
"MinimumTrackPtForNNPid"
, 0.)
153
if
isTrigger:
154
return
TrigTRT_ElectronPidToolCfg
(flags, name=
"TrigGSFBuildTRT_ElectronPidTool"
, **kwargs)
155
else
:
156
return
TRT_ElectronPidToolCfg
(flags, name, **kwargs)
157
158
python.TRT_ElectronPidToolsConfig.GSFBuildTRT_ElectronPidToolCfg
GSFBuildTRT_ElectronPidToolCfg(flags, name="GSFBuildTRT_ElectronPidTool", isTrigger=False, **kwargs)
Definition
TRT_ElectronPidToolsConfig.py:150
python.TRT_ElectronPidToolsConfig.TRT_LocalOccupancyCfg
TRT_LocalOccupancyCfg(flags, name="TRT_LocalOccupancy", **kwargs)
Definition
TRT_ElectronPidToolsConfig.py:6
python.TRT_ElectronPidToolsConfig.TRTOccupancyIncludeCfg
TRTOccupancyIncludeCfg(flags, name="TRTOccupancyInclude", **kwargs)
Definition
TRT_ElectronPidToolsConfig.py:45
python.TRT_ElectronPidToolsConfig.TrigTRT_dEdxToolCfg
TrigTRT_dEdxToolCfg(flags, name="TrigTRT_dEdxTool", **kwargs)
Definition
TRT_ElectronPidToolsConfig.py:98
python.TRT_ElectronPidToolsConfig.TrigTRT_ElectronPidToolCfg
TrigTRT_ElectronPidToolCfg(flags, name="InDetTrigTRT_ElectronPidTool", **kwargs)
Definition
TRT_ElectronPidToolsConfig.py:135
python.TRT_ElectronPidToolsConfig.__TRT_dEdxToolBaseCfg
__TRT_dEdxToolBaseCfg(flags, name, **kwargs)
Definition
TRT_ElectronPidToolsConfig.py:54
python.TRT_ElectronPidToolsConfig.TRT_OverlayLocalOccupancyCfg
TRT_OverlayLocalOccupancyCfg(flags, name="TRT_OverlayLocalOccupancy", **kwargs)
Definition
TRT_ElectronPidToolsConfig.py:36
python.TRT_ElectronPidToolsConfig.TRT_ElectronPidToolCfg
TRT_ElectronPidToolCfg(flags, name="TRT_ElectronPidTool", **kwargs)
Definition
TRT_ElectronPidToolsConfig.py:113
python.TRT_ElectronPidToolsConfig.TrigTRT_LocalOccupancyCfg
TrigTRT_LocalOccupancyCfg(flags, name="TrigTRT_LocalOccupancy", **kwargs)
Definition
TRT_ElectronPidToolsConfig.py:26
python.TRT_ElectronPidToolsConfig.TRT_dEdxToolCfg
TRT_dEdxToolCfg(flags, name="TRT_dEdxTool", **kwargs)
Definition
TRT_ElectronPidToolsConfig.py:68
Generated on
for ATLAS Offline Software by
1.17.0