ATLAS Offline Software
InDetTrackSelectorToolConfig.py
Go to the documentation of this file.
1 # Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
2 # Configuration of InDetTrackSelectorTool package
3 
4 from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
5 from AthenaConfiguration.ComponentFactory import CompFactory
6 from AthenaConfiguration.Enums import LHCPeriod, BeamType
7 
8 def InDetConversionTrackSelectorToolCfg(flags, name="TrackSelector", **kwargs):
10 
11  if "Extrapolator" not in kwargs:
12  from TrkConfig.AtlasExtrapolatorConfig import AtlasExtrapolatorCfg
13  kwargs.setdefault("Extrapolator", acc.popToolsAndMerge(
14  AtlasExtrapolatorCfg(flags)))
15 
16  kwargs.setdefault("RatioCut1", flags.Egamma.PhotonConv.TrkSel.RatioCut1)
17  kwargs.setdefault("RatioCut2", flags.Egamma.PhotonConv.TrkSel.RatioCut2)
18  kwargs.setdefault("RatioCut3", flags.Egamma.PhotonConv.TrkSel.RatioCut3)
19  kwargs.setdefault("TRTTrksBinnedRatioTRT",
20  flags.Egamma.PhotonConv.TrkSel.TRTTrksBinnedRatioTRT)
21  kwargs.setdefault("TRTTrksEtaBins",
22  flags.Egamma.PhotonConv.TrkSel.TRTTrksEtaBins)
23  kwargs.setdefault("RatioTRT", flags.Egamma.PhotonConv.TrkSel.RatioTRT)
24  kwargs.setdefault("minPt", flags.Egamma.PhotonConv.TrkSel.minPt)
25 
26  kwargs.setdefault("maxSiD0", 10000.)
27  kwargs.setdefault("maxSiZ0", 10000.)
28  kwargs.setdefault("maxTrtD0", 10000.)
29  kwargs.setdefault("maxTrtZ0", 10000.)
30  kwargs.setdefault("significanceD0_Si", -1.)
31  kwargs.setdefault("RatioV0", -1.)
32  kwargs.setdefault("IsConversion", True)
33 
34  acc.setPrivateTools(
35  CompFactory.InDet.InDetConversionTrackSelectorTool(name, **kwargs))
36  return acc
37 
38 def V0InDetConversionTrackSelectorToolCfg(flags, name='InDetV0VxTrackSelector', **kwargs):
39  acc = ComponentAccumulator()
40 
41  if "Extrapolator" not in kwargs:
42  from TrkConfig.AtlasExtrapolatorConfig import AtlasExtrapolatorCfg
43  kwargs.setdefault("Extrapolator", acc.popToolsAndMerge(
44  AtlasExtrapolatorCfg(flags)))
45 
46  kwargs.setdefault("maxTrtD0", 50.)
47  kwargs.setdefault("maxSiZ0", 250.)
48  kwargs.setdefault("significanceD0_Si", 1.)
49  kwargs.setdefault("significanceD0_Trt", 1.)
50  kwargs.setdefault("significanceZ0_Trt", 3.)
51  kwargs.setdefault("minPt", 400.0)
52  kwargs.setdefault("IsConversion", False)
53  kwargs.setdefault("UseEventInfoBS", True)
54 
55  acc.setPrivateTools(
56  CompFactory.InDet.InDetConversionTrackSelectorTool(name, **kwargs))
57  return acc
58 
59 def InDetV0VxTrackSelectorLooseCfg(flags, name='InDetV0VxTrackSelectorLoose', **kwargs):
60  acc = ComponentAccumulator()
61 
62  if "Extrapolator" not in kwargs:
63  from TrkConfig.AtlasExtrapolatorConfig import InDetExtrapolatorCfg
64  kwargs.setdefault("Extrapolator", acc.popToolsAndMerge(
65  InDetExtrapolatorCfg(flags)))
66 
67  kwargs.setdefault("maxSiD0" , 99999.)
68  kwargs.setdefault("maxTrtD0" , 99999.)
69  kwargs.setdefault("maxSiZ0" , 99999.)
70  kwargs.setdefault("maxTrtZ0" , 99999.)
71  kwargs.setdefault("minPt" , 500.0)
72  kwargs.setdefault("significanceD0_Si" , 0.)
73  kwargs.setdefault("significanceD0_Trt", 0.)
74  kwargs.setdefault("significanceZ0_Trt", 0.)
75  kwargs.setdefault("IsConversion" , False)
76 
77  acc.setPrivateTools(
78  CompFactory.InDet.InDetConversionTrackSelectorTool(name, **kwargs))
79  return acc
80 
81 
82 def InDetTrackSelectorToolCfg(flags, name='InDetTrackSelectorTool', **kwargs):
83  result = ComponentAccumulator()
84 
85  if "UseEventInfoBS" not in kwargs or kwargs["UseEventInfoBS"] is False:
86  # To produce the input InDet::BeamSpotData CondHandle
87  from BeamSpotConditions.BeamSpotConditionsConfig import (
88  BeamSpotCondAlgCfg)
89  result.merge(BeamSpotCondAlgCfg(flags))
90 
91  # To produce the input AtlasFieldCacheCondObj
92  from MagFieldServices.MagFieldServicesConfig import (
93  AtlasFieldCacheCondAlgCfg)
94  result.merge(AtlasFieldCacheCondAlgCfg(flags))
95 
96  if "Extrapolator" not in kwargs:
97  from TrkConfig.AtlasExtrapolatorConfig import AtlasExtrapolatorCfg
98  kwargs.setdefault("Extrapolator", result.popToolsAndMerge(
99  AtlasExtrapolatorCfg(flags)))
100 
101  result.setPrivateTools(
102  CompFactory.InDet.InDetDetailedTrackSelectorTool(name, **kwargs))
103  return result
104 
105 def InDetImprovedJetFitterTrackSelectorToolCfg(flags, name='InDetImprovedJFTrackSelTool', **kwargs):
106  kwargs.setdefault("pTMin", 500.0)
107  kwargs.setdefault("IPd0Max", 7.0)
108  kwargs.setdefault("IPz0Max", 10.0)
109  kwargs.setdefault("sigIPd0Max", 0.35)
110  kwargs.setdefault("sigIPz0Max", 2.5)
111  kwargs.setdefault("etaMax", 9999.0)
112  kwargs.setdefault("nHitBLayer", 0)
113  kwargs.setdefault("nHitPix", 1)
114  kwargs.setdefault("nHitSct",
115  4 if flags.GeoModel.Run < LHCPeriod.Run4 else 0)
116  kwargs.setdefault("nHitSi", 7)
117  kwargs.setdefault("nHitTrt", 0)
118  kwargs.setdefault("fitChi2OnNdfMax", 3.5)
119  kwargs.setdefault("useTrackSummaryInfo", True)
120  kwargs.setdefault("useSharedHitInfo", False)
121  kwargs.setdefault("useTrackQualityInfo", True)
122  kwargs.setdefault("TrackSummaryTool", "")
123  return InDetTrackSelectorToolCfg(flags, name, **kwargs)
124 
125 def MuonCombinedInDetDetailedTrackSelectorToolCfg(flags, name="MuonCombinedInDetDetailedTrackSelectorTool", **kwargs):
126  if flags.Beam.Type is BeamType.Collisions:
127  kwargs.setdefault("pTMin", 2000)
128  kwargs.setdefault("nHitBLayer", 0)
129  kwargs.setdefault("nHitBLayerPlusPix", 0)
130  kwargs.setdefault("nHitTrt", 0)
131  kwargs.setdefault("useTrackQualityInfo", False)
132  if flags.Muon.MuonTrigger:
133  kwargs.setdefault("IPd0Max", 19999.0)
134  kwargs.setdefault("IPz0Max", 19999.0)
135  kwargs.setdefault("z0Max", 19999.0)
136  kwargs.setdefault("nHitPix", 0)
137  kwargs.setdefault("nHitSct", 0)
138  kwargs.setdefault("nHitSi", 0)
139  kwargs.setdefault("useTrackSummaryInfo", False)
140  else:
141  kwargs.setdefault("IPd0Max", 50.0)
142  kwargs.setdefault("IPz0Max", 9999.0)
143  kwargs.setdefault("z0Max", 9999.0)
144  kwargs.setdefault("nHitPix", 1)
145  kwargs.setdefault("nHitSct", 3)
146  kwargs.setdefault("nHitSi", 4)
147  kwargs.setdefault("useTrackSummaryInfo", True)
148  else:
149  kwargs.setdefault("pTMin", 500)
150  kwargs.setdefault("IPd0Max", 19999.0)
151  kwargs.setdefault("IPz0Max", 19999.0)
152  kwargs.setdefault("z0Max", 19999.0)
153  kwargs.setdefault("useTrackSummaryInfo", False)
154  kwargs.setdefault("useTrackQualityInfo", False)
155 
156  kwargs.setdefault("TrackSummaryTool", "")
157  return InDetTrackSelectorToolCfg(flags, name, **kwargs)
158 
159 def MuonCombinedInDetDetailedTrackSelectorTool_LRTCfg(flags, name='MuonCombinedInDetDetailedTrackSelectorTool_LRT', **kwargs):
160  kwargs.setdefault("pTMin", 2000)
161  kwargs.setdefault("IPd0Max", 1.e4)
162  kwargs.setdefault("IPz0Max", 1.e4)
163  kwargs.setdefault("z0Max", 1.e4)
164  kwargs.setdefault("nHitBLayer", 0)
165  kwargs.setdefault("nHitPix", 0)
166  kwargs.setdefault("nHitBLayerPlusPix", 0)
167  kwargs.setdefault("nHitSct", 4)
168  kwargs.setdefault("nHitSi", 4)
169  kwargs.setdefault("nHitTrt", 0)
170  kwargs.setdefault("useTrackSummaryInfo", True)
171  kwargs.setdefault("useTrackQualityInfo", False)
172  return MuonCombinedInDetDetailedTrackSelectorToolCfg(flags, name, **kwargs)
173 
174 def MuonCombinedInDetDetailedForwardTrackSelectorToolCfg(flags, name='MuonCombinedInDetDetailedForwardTrackSelectorTool', **kwargs):
175  kwargs.setdefault("nHitSct", 0)
176  return MuonCombinedInDetDetailedTrackSelectorToolCfg(flags, name, **kwargs)
177 
178 def CaloTrkMuIdAlgTrackSelectorToolCfg(flags, name='CaloTrkMuIdAlgTrackSelectorTool', **kwargs):
179  result = ComponentAccumulator()
180 
181  kwargs.setdefault("pTMin", 5000.)
182  kwargs.setdefault("IPd0Max", 7.)
183  kwargs.setdefault("IPz0Max", 130.) # (tuned on Z)
184  kwargs.setdefault("nHitBLayer", 0)
185  kwargs.setdefault("nHitPix", 1)
186  kwargs.setdefault("nHitSct", 5)
187  kwargs.setdefault("nHitSi", 7)
188  kwargs.setdefault("nHitTrt", 0)
189 
190  from TrkConfig.TrkTrackSummaryToolConfig import (
191  MuonCombinedTrackSummaryToolCfg)
192  kwargs.setdefault("TrackSummaryTool", result.popToolsAndMerge(
194 
195  result.setPrivateTools(result.popToolsAndMerge(
196  InDetTrackSelectorToolCfg(flags, name, **kwargs)))
197  return result
198 
199 def TauRecInDetTrackSelectorToolCfg(flags, name='tauRec_InDetTrackSelectorTool', **kwargs):
200  kwargs.setdefault("pTMin", 1000.0)
201  kwargs.setdefault("IPd0Max", 1.)
202  kwargs.setdefault("IPz0Max", 1.5)
203  kwargs.setdefault("nHitBLayer", 0)
204  kwargs.setdefault("nHitPix", 2) # PixelHits + PixelDeadSensors
205  kwargs.setdefault("nHitSct", 0) # SCTHits + SCTDeadSensors
206  kwargs.setdefault("nHitSi", 7) # PixelHits + SCTHits + PixelDeadSensors + SCTDeadSensors
207  kwargs.setdefault("nHitTrt", 0)
208  kwargs.setdefault("fitChi2OnNdfMax", 99999)
209  kwargs.setdefault("useTrackSummaryInfo", True)
210  kwargs.setdefault("useSharedHitInfo", False)
211  kwargs.setdefault("useTrackQualityInfo", True)
212  kwargs.setdefault("TrackSummaryTool", "")
213  return InDetTrackSelectorToolCfg(flags, name, **kwargs)
214 
215 def BPHY_InDetDetailedTrackSelectorToolCfg(flags, name='BPHY_InDetDetailedTrackSelectorTool', **kwargs):
216  acc = ComponentAccumulator()
217 
218  # Different from other InDetTrackSelectorToolCfg
219  if "Extrapolator" not in kwargs:
220  from TrkConfig.AtlasExtrapolatorConfig import InDetExtrapolatorCfg
221  kwargs.setdefault("Extrapolator", acc.popToolsAndMerge(
222  InDetExtrapolatorCfg(flags)))
223 
224  kwargs.setdefault("pTMin" , 400.0)
225  kwargs.setdefault("IPd0Max" , 10000.0)
226  kwargs.setdefault("IPz0Max" , 10000.0)
227  kwargs.setdefault("z0Max" , 10000.0)
228  kwargs.setdefault("sigIPd0Max" , 10000.0)
229  kwargs.setdefault("sigIPz0Max" , 10000.0)
230  kwargs.setdefault("d0significanceMax" , -1.)
231  kwargs.setdefault("z0significanceMax" , -1.)
232  kwargs.setdefault("etaMax" , 9999.)
233  kwargs.setdefault("useTrackSummaryInfo" , True)
234  kwargs.setdefault("nHitBLayer" , 0)
235  kwargs.setdefault("nHitPix" , 1)
236  kwargs.setdefault("nHitBLayerPlusPix" , 1)
237  kwargs.setdefault("nHitSct" , 2)
238  kwargs.setdefault("nHitSi" , 3)
239  kwargs.setdefault("nHitTrt" , 0)
240  kwargs.setdefault("nHitTrtHighEFractionMax", 10000.0)
241  kwargs.setdefault("useSharedHitInfo" , False)
242  kwargs.setdefault("useTrackQualityInfo" , True)
243  kwargs.setdefault("fitChi2OnNdfMax" , 10000.0)
244  kwargs.setdefault("TrtMaxEtaAcceptance" , 1.9)
245  kwargs.setdefault("UseEventInfoBS" , True)
246  kwargs.setdefault("TrackSummaryTool" , None)
247 
248  acc.setPrivateTools(acc.popToolsAndMerge(InDetTrackSelectorToolCfg(flags, name, **kwargs)))
249  return acc
250 
251 
252 def InDetTRTDriftCircleCutToolCfg(flags, name='InDetTRTDriftCircleCutTool', **kwargs):
253  from TRT_ConditionsAlgs.TRT_ConditionsAlgsConfig import TRTActiveCondAlgCfg
254  result = TRTActiveCondAlgCfg(flags) # To produce the input TRTCond::ActiveFraction CondHandle
255  kwargs.setdefault("MinOffsetDCs", 5)
256  kwargs.setdefault("UseNewParameterization", flags.Tracking.useNewParamTRT)
257  kwargs.setdefault("UseActiveFractionSvc", flags.Detector.EnableTRT)
258  result.setPrivateTools(CompFactory.InDet.InDetTrtDriftCircleCutTool(name, **kwargs))
259  return result
260 
261 def InDetTrigTRTDriftCircleCutToolCfg(flags, name='InDetTrigTRTDriftCircleCutTool', **kwargs):
262  kwargs.setdefault("UseNewParameterization", True)
263  kwargs.setdefault("UseActiveFractionSvc", True)
264  return InDetTRTDriftCircleCutToolCfg(flags, name, **kwargs)
265 
266 
267 
268 # Tool to select tracks to be used for TRT calibration
270  flags, name="TRT_InDetDetailedTrackSelectorTool", **kwargs):
271 
272  from AthenaCommon.SystemOfUnits import GeV, mm
273 
274  acc = ComponentAccumulator()
275  kwargs.setdefault("pTMin", 1.0*GeV)
276  kwargs.setdefault("fitChi2OnNdfMax",50.0)
277  kwargs.setdefault("z0Max",9999.0*mm)
278  kwargs.setdefault("IPd0Max",10.0*mm)
279  kwargs.setdefault("IPz0Max",300.0*mm)
280  kwargs.setdefault("etaMax",2.1)
281  kwargs.setdefault("nHitBLayer",0)
282  kwargs.setdefault("nHitPix",2)
283  kwargs.setdefault("nHitBLayerPlusPix",0)
284  kwargs.setdefault("nHitSct",0)
285  kwargs.setdefault("nHitSi",7)
286  kwargs.setdefault("nHitTrt",20)
287  kwargs.setdefault("nHitTrtPlusOutliers",20)
288  kwargs.setdefault("nHitTrtPlusOutliersHighE",0)
289  kwargs.setdefault("nHitTrtHighE",0)
290 
291  from TrkConfig.AtlasExtrapolatorConfig import InDetExtrapolatorCfg
292  kwargs.setdefault("Extrapolator", acc.popToolsAndMerge(InDetExtrapolatorCfg(flags)))
293 
294  acc.setPrivateTools(acc.popToolsAndMerge(
295  InDetTrackSelectorToolCfg(flags, name, **kwargs)))
296  return acc
SystemOfUnits
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
python.BeamSpotConditionsConfig.BeamSpotCondAlgCfg
def BeamSpotCondAlgCfg(flags, name="BeamSpotCondAlg", **kwargs)
Definition: BeamSpotConditionsConfig.py:7
python.InDetTrackSelectorToolConfig.InDetV0VxTrackSelectorLooseCfg
def InDetV0VxTrackSelectorLooseCfg(flags, name='InDetV0VxTrackSelectorLoose', **kwargs)
Definition: InDetTrackSelectorToolConfig.py:59
python.InDetTrackSelectorToolConfig.InDetTRTDriftCircleCutToolCfg
def InDetTRTDriftCircleCutToolCfg(flags, name='InDetTRTDriftCircleCutTool', **kwargs)
Definition: InDetTrackSelectorToolConfig.py:252
python.InDetTrackSelectorToolConfig.MuonCombinedInDetDetailedTrackSelectorToolCfg
def MuonCombinedInDetDetailedTrackSelectorToolCfg(flags, name="MuonCombinedInDetDetailedTrackSelectorTool", **kwargs)
Definition: InDetTrackSelectorToolConfig.py:125
python.InDetTrackSelectorToolConfig.TauRecInDetTrackSelectorToolCfg
def TauRecInDetTrackSelectorToolCfg(flags, name='tauRec_InDetTrackSelectorTool', **kwargs)
Definition: InDetTrackSelectorToolConfig.py:199
python.TrkTrackSummaryToolConfig.MuonCombinedTrackSummaryToolCfg
def MuonCombinedTrackSummaryToolCfg(flags, name="CombinedMuonTrackSummary", **kwargs)
Definition: TrkTrackSummaryToolConfig.py:153
python.AtlasExtrapolatorConfig.AtlasExtrapolatorCfg
def AtlasExtrapolatorCfg(flags, name='AtlasExtrapolator')
Definition: AtlasExtrapolatorConfig.py:63
python.TRT_ConditionsAlgsConfig.TRTActiveCondAlgCfg
def TRTActiveCondAlgCfg(flags, name="TRTActiveCondAlg", **kwargs)
Definition: TRT_ConditionsAlgsConfig.py:56
python.InDetTrackSelectorToolConfig.CaloTrkMuIdAlgTrackSelectorToolCfg
def CaloTrkMuIdAlgTrackSelectorToolCfg(flags, name='CaloTrkMuIdAlgTrackSelectorTool', **kwargs)
Definition: InDetTrackSelectorToolConfig.py:178
python.InDetTrackSelectorToolConfig.InDetConversionTrackSelectorToolCfg
def InDetConversionTrackSelectorToolCfg(flags, name="TrackSelector", **kwargs)
Definition: InDetTrackSelectorToolConfig.py:8
python.InDetTrackSelectorToolConfig.MuonCombinedInDetDetailedForwardTrackSelectorToolCfg
def MuonCombinedInDetDetailedForwardTrackSelectorToolCfg(flags, name='MuonCombinedInDetDetailedForwardTrackSelectorTool', **kwargs)
Definition: InDetTrackSelectorToolConfig.py:174
python.InDetTrackSelectorToolConfig.InDetTrackSelectorToolCfg
def InDetTrackSelectorToolCfg(flags, name='InDetTrackSelectorTool', **kwargs)
Definition: InDetTrackSelectorToolConfig.py:82
python.InDetTrackSelectorToolConfig.V0InDetConversionTrackSelectorToolCfg
def V0InDetConversionTrackSelectorToolCfg(flags, name='InDetV0VxTrackSelector', **kwargs)
Definition: InDetTrackSelectorToolConfig.py:38
python.InDetTrackSelectorToolConfig.BPHY_InDetDetailedTrackSelectorToolCfg
def BPHY_InDetDetailedTrackSelectorToolCfg(flags, name='BPHY_InDetDetailedTrackSelectorTool', **kwargs)
Definition: InDetTrackSelectorToolConfig.py:215
python.InDetTrackSelectorToolConfig.TRT_InDetDetailedTrackSelectorToolCfg
def TRT_InDetDetailedTrackSelectorToolCfg(flags, name="TRT_InDetDetailedTrackSelectorTool", **kwargs)
Definition: InDetTrackSelectorToolConfig.py:269
python.InDetTrackSelectorToolConfig.InDetImprovedJetFitterTrackSelectorToolCfg
def InDetImprovedJetFitterTrackSelectorToolCfg(flags, name='InDetImprovedJFTrackSelTool', **kwargs)
Definition: InDetTrackSelectorToolConfig.py:105
python.MagFieldServicesConfig.AtlasFieldCacheCondAlgCfg
def AtlasFieldCacheCondAlgCfg(flags, **kwargs)
Definition: MagFieldServicesConfig.py:8
python.InDetTrackSelectorToolConfig.MuonCombinedInDetDetailedTrackSelectorTool_LRTCfg
def MuonCombinedInDetDetailedTrackSelectorTool_LRTCfg(flags, name='MuonCombinedInDetDetailedTrackSelectorTool_LRT', **kwargs)
Definition: InDetTrackSelectorToolConfig.py:159
python.AtlasExtrapolatorConfig.InDetExtrapolatorCfg
def InDetExtrapolatorCfg(flags, name='InDetExtrapolator', **kwargs)
Definition: AtlasExtrapolatorConfig.py:315
python.InDetTrackSelectorToolConfig.InDetTrigTRTDriftCircleCutToolCfg
def InDetTrigTRTDriftCircleCutToolCfg(flags, name='InDetTrigTRTDriftCircleCutTool', **kwargs)
Definition: InDetTrackSelectorToolConfig.py:261