ATLAS Offline Software
Loading...
Searching...
No Matches
InDetPhysValMonitoringConfig Namespace Reference

Functions

 extractCollectionPrefix (track_collection_name)
 HistogramDefinitionSvcCfg (flags, **kwargs)
 InDetRttTruthSelectionToolCfg (flags, name="InDetRttTruthSelectionTool", **kwargs)
 GoodRunsListSelectionToolCfg (flags, **kwargs)
 InDetVertexTruthMatchToolCfg (flags, **kwargs)
 InDetPhysValMonitoringToolCfg (flags, **kwargs)
 InDetPhysValMonitoringToolLooseCfg (flags, **kwargs)
 InDetPhysValMonitoringToolTightPrimaryCfg (flags, **kwargs)
 InDetPhysValMonitoringToolHILooseCfg (flags, **kwargs)
 InDetPhysValMonitoringToolGSFCfg (flags, **kwargs)
 InDetPhysValMonitoringToolElectronsCfg (flags, **kwargs)
 InDetPhysValMonitoringToolMuonsCfg (flags, **kwargs)
 InDetLargeD0PhysValMonitoringToolCfg (flags, **kwargs)
 InDetMergedLargeD0PhysValMonitoringToolCfg (flags, **kwargs)
 InDetLowPtRoIPhysValMonitoringToolCfg (flags, **kwargs)
 InDetPhysValMonitoringCfg (flags)

Detailed Description

@file InDetPhysValMonitoringConfig.py
@author T. Strebler
@date 2021-08-30
@brief Main CA-based python configuration for InDetPhysValMonitoring

Function Documentation

◆ extractCollectionPrefix()

InDetPhysValMonitoringConfig.extractCollectionPrefix ( track_collection_name)

Definition at line 15 of file InDetPhysValMonitoringConfig.py.

15def extractCollectionPrefix(track_collection_name):
16 suffixes = ['Tracks', 'TrackParticles']
17 for suffix in suffixes:
18 if track_collection_name.endswith(suffix):
19 return track_collection_name.removesuffix(suffix)
20 return track_collection_name
21
22

◆ GoodRunsListSelectionToolCfg()

InDetPhysValMonitoringConfig.GoodRunsListSelectionToolCfg ( flags,
** kwargs )

Definition at line 77 of file InDetPhysValMonitoringConfig.py.

77def GoodRunsListSelectionToolCfg(flags, **kwargs):
78 acc = ComponentAccumulator()
79
80 from GoodRunsLists.GoodRunsListsDictionary import getGoodRunsLists
81 GRLDict = getGoodRunsLists()
82
83 cvmfs = '/cvmfs/atlas.cern.ch/repo/sw/database/GroupData/'
84 grldict = {
85 '2015': cvmfs + ''.join(GRLDict['GRL2015']),
86 '2016': cvmfs + ''.join(GRLDict['GRL2016']),
87 '2017': cvmfs + ''.join(GRLDict['GRL2017_Triggerno17e33prim']),
88 '2018': cvmfs + ''.join(GRLDict['GRL2018_Triggerno17e33prim']),
89 '2022': cvmfs + ''.join(GRLDict['GRL2022']),
90 '2023': cvmfs + ''.join(GRLDict['GRL2023']),
91 '2024': cvmfs + ''.join(GRLDict['GRL2024'])
92 }
93
94 acc.setPrivateTools(CompFactory.GoodRunsListSelectionTool(
95 name="GoodRunsListSelectionTool",
96 GoodRunsListVec=[grldict[p] for p in flags.PhysVal.IDPVM.GRL],
97 **kwargs
98 ))
99 return acc
100
101

◆ HistogramDefinitionSvcCfg()

InDetPhysValMonitoringConfig.HistogramDefinitionSvcCfg ( flags,
** kwargs )

Definition at line 23 of file InDetPhysValMonitoringConfig.py.

23def HistogramDefinitionSvcCfg(flags, **kwargs):
24 acc = ComponentAccumulator()
25 if flags.Detector.GeometryID:
26 if flags.PhysVal.IDPVM.doValidateLargeD0Tracks or flags.PhysVal.IDPVM.doValidateMergedLargeD0Tracks:
27 kwargs.setdefault("DefinitionSource", "InDetPVMPlotDefLRT.xml")
28 else:
29 kwargs.setdefault("DefinitionSource", "InDetPVMPlotDefRun2.xml")
30 elif flags.Detector.GeometryITk:
31 kwargs.setdefault("DefinitionSource", "InDetPVMPlotDefITK.xml")
32 kwargs.setdefault("DefinitionFormat", "text/xml")
33 histoSvc = CompFactory.HistogramDefinitionSvc(**kwargs)
34 acc.addService(histoSvc)
35 return acc
36
37

◆ InDetLargeD0PhysValMonitoringToolCfg()

InDetPhysValMonitoringConfig.InDetLargeD0PhysValMonitoringToolCfg ( flags,
** kwargs )

Definition at line 356 of file InDetPhysValMonitoringConfig.py.

356def InDetLargeD0PhysValMonitoringToolCfg(flags, **kwargs):
357 acc = ComponentAccumulator()
358
359 kwargs.setdefault("SubFolder", 'LRT/')
360 kwargs.setdefault("TruthSelectionTool", acc.popToolsAndMerge(
361 InDetRttTruthSelectionToolCfg(flags)))
362 kwargs.setdefault("TrackParticleContainerName",
363 flags.PhysVal.IDPVM.largeD0TrackCollection
364 if flags.Tracking.storeSeparateLargeD0Container else
365 'InDetTrackParticles')
366 kwargs.setdefault("useTrackSelection", True)
367
368 acc.setPrivateTools(acc.popToolsAndMerge(InDetPhysValMonitoringToolCfg(
369 flags, name='InDetPhysValMonitoringToolLargeD0', **kwargs)))
370 return acc
371
372

◆ InDetLowPtRoIPhysValMonitoringToolCfg()

InDetPhysValMonitoringConfig.InDetLowPtRoIPhysValMonitoringToolCfg ( flags,
** kwargs )

Definition at line 389 of file InDetPhysValMonitoringConfig.py.

389def InDetLowPtRoIPhysValMonitoringToolCfg(flags, **kwargs):
390 acc = ComponentAccumulator()
391 kwargs.setdefault("SubFolder", 'LowPtRoI/') #Subfolder
392 kwargs.setdefault("TruthSelectionTool", acc.popToolsAndMerge(
393 InDetRttTruthSelectionToolCfg(flags,minPt=100)))
394 kwargs.setdefault("TrackParticleContainerName",
395 'InDetLowPtRoITrackParticles')
396 acc.setPrivateTools(acc.popToolsAndMerge(InDetPhysValMonitoringToolCfg(
397 flags, name='InDetPhysValMonitoringToolLowPtRoI', **kwargs)))
398
399 return acc
400
401

◆ InDetMergedLargeD0PhysValMonitoringToolCfg()

InDetPhysValMonitoringConfig.InDetMergedLargeD0PhysValMonitoringToolCfg ( flags,
** kwargs )

Definition at line 373 of file InDetPhysValMonitoringConfig.py.

373def InDetMergedLargeD0PhysValMonitoringToolCfg(flags, **kwargs):
374 acc = ComponentAccumulator()
375
376 kwargs.setdefault("SubFolder", 'LRTMerged/')
377 kwargs.setdefault("TruthSelectionTool", acc.popToolsAndMerge(
378 InDetRttTruthSelectionToolCfg(flags)))
379 kwargs.setdefault("TrackParticleContainerName",
380 'InDetWithLRTTrackParticles'
381 if flags.Tracking.storeSeparateLargeD0Container else
382 'InDetTrackParticles')
383 kwargs.setdefault("useTrackSelection", True)
384
385 acc.setPrivateTools(acc.popToolsAndMerge(InDetPhysValMonitoringToolCfg(
386 flags, name='InDetPhysValMonitoringToolMergedLargeD0', **kwargs)))
387 return acc
388

◆ InDetPhysValMonitoringCfg()

InDetPhysValMonitoringConfig.InDetPhysValMonitoringCfg ( flags)

Definition at line 402 of file InDetPhysValMonitoringConfig.py.

402def InDetPhysValMonitoringCfg(flags):
403 acc = ComponentAccumulator()
404
405 if flags.PhysVal.IDPVM.doValidateMergedLargeD0Tracks:
406 from DerivationFrameworkInDet.InDetToolsConfig import InDetLRTMergeCfg
407 acc.merge(InDetLRTMergeCfg(flags))
408
409 mons = [(True,
410 InDetPhysValMonitoringToolCfg),
411 (flags.PhysVal.IDPVM.doValidateMuonMatchedTracks,
412 InDetPhysValMonitoringToolMuonsCfg),
413 (flags.PhysVal.IDPVM.doValidateElectronMatchedTracks,
414 InDetPhysValMonitoringToolElectronsCfg),
415 (flags.PhysVal.IDPVM.doValidateLargeD0Tracks,
416 InDetLargeD0PhysValMonitoringToolCfg),
417 (flags.PhysVal.IDPVM.doValidateMergedLargeD0Tracks,
418 InDetMergedLargeD0PhysValMonitoringToolCfg),
419 (flags.PhysVal.IDPVM.doValidateLowPtRoITracks,
420 InDetLowPtRoIPhysValMonitoringToolCfg),
421 (flags.PhysVal.IDPVM.doValidateLooseTracks,
422 InDetPhysValMonitoringToolLooseCfg),
423 (flags.PhysVal.IDPVM.doValidateTightPrimaryTracks,
424 InDetPhysValMonitoringToolTightPrimaryCfg),
425 (flags.PhysVal.IDPVM.doValidateHILoose,
426 InDetPhysValMonitoringToolHILooseCfg),
427 (flags.PhysVal.IDPVM.doValidateGSFTracks,
428 InDetPhysValMonitoringToolGSFCfg)
429 ]
430
431 tools = []
432 for enabled, creator in mons:
433 if enabled:
434 tools.append(acc.popToolsAndMerge(creator(flags)))
435
436 for col in flags.PhysVal.IDPVM.validateExtraTrackCollections:
437 prefix = extractCollectionPrefix(col)
438 tools.append(acc.popToolsAndMerge(InDetPhysValMonitoringToolCfg(
439 flags, name='InDetPhysValMonitoringTool'+prefix,
440 SubFolder=prefix+'Tracks/',
441 TrackParticleContainerName=prefix+'TrackParticles'
442 )))
443
444 from PhysValMonitoring.PhysValMonitoringConfig import PhysValMonitoringCfg
445 acc.merge(PhysValMonitoringCfg(flags, tools=tools))
446 return acc

◆ InDetPhysValMonitoringToolCfg()

InDetPhysValMonitoringConfig.InDetPhysValMonitoringToolCfg ( flags,
** kwargs )

Definition at line 108 of file InDetPhysValMonitoringConfig.py.

108def InDetPhysValMonitoringToolCfg(flags, **kwargs):
109 from InDetPhysValMonitoring.InDetPhysValDecorationConfig import (
110 AddDecoratorIfNeededCfg)
111 acc = AddDecoratorIfNeededCfg(flags)
112 kwargs.setdefault("useTrackSelection", False)
113 kwargs.setdefault("EnableLumi", False)
114
115 acc.merge(HistogramDefinitionSvcCfg(flags))
116 kwargs.setdefault('VertexContainerName', flags.PhysVal.IDPVM.PrimaryVertexContainer)
117
118 # if we are running with sumpT(w) hard scatter selection, we need to schedule jet finding
119 if flags.PhysVal.IDPVM.hardScatterStrategy in [2, 3]:
120
121 from InDetPhysValMonitoring.addRecoJetsConfig import (
122 AddRecoJetsIfNotExistingCfg)
123 acc.merge(AddRecoJetsIfNotExistingCfg(
124 flags, flags.PhysVal.IDPVM.jetsNameForHardScatter))
125
126 # if we are running with the GNN hard scatter selection, we need to schedule the dependencies
127 if flags.PhysVal.IDPVM.hardScatterStrategy == 3:
128 from InDetConfig.InDetGNNHardScatterSelectionConfig import (
129 GNNSequenceCfg)
130 acc.merge(GNNSequenceCfg(flags))
131
132 # if we are running with the HGam hard scatter selection, we need to schedule the NN
133 if flags.PhysVal.IDPVM.hardScatterStrategy == 4:
134 from DerivationFrameworkHiggs.HIGG1D1CustomVertexConfig import DiPhotonVertexCfg
135 acc.merge(DiPhotonVertexCfg(flags))
136
137 if flags.PhysVal.IDPVM.GRL:
138 kwargs.setdefault("useGRL", True)
139 kwargs.setdefault('GoodRunsListSelectionTool', acc.popToolsAndMerge(
140 GoodRunsListSelectionToolCfg(flags)))
141
142 kwargs.setdefault("doIDTIDEPlots", flags.PhysVal.IDPVM.doIDTIDE)
143 kwargs.setdefault("setCSVName", flags.PhysVal.IDPVM.setCSVName)
144
145 if flags.PhysVal.IDPVM.doValidateTracksInJets:
146 kwargs.setdefault("JetContainerName", flags.PhysVal.IDPVM.jetCollection)
147 kwargs.setdefault("FillTrackInJetPlots", True)
148 kwargs.setdefault('JetAbsEtaMin', 0)
149 kwargs.setdefault('JetAbsEtaMax', flags.PhysVal.IDPVM.JetAbsEtaMax)
150 kwargs.setdefault('JetPtMin', flags.PhysVal.IDPVM.JetPtMin)
151 kwargs.setdefault('JetPtMax', flags.PhysVal.IDPVM.JetPtMax)
152 kwargs.setdefault('maxTrkJetDR', flags.PhysVal.IDPVM.maxTrkJetDR)
153 kwargs.setdefault("FillTrackInBJetPlots",
154 flags.PhysVal.IDPVM.doValidateTracksInBJets)
155 else:
156 kwargs.setdefault("JetContainerName", '')
157 kwargs.setdefault("FillTrackInJetPlots", False)
158
159 kwargs.setdefault("doPerAuthorPlots",
160 flags.PhysVal.IDPVM.doPerAuthorPlots)
161
162 if flags.Input.isMC and not flags.PhysVal.IDPVM.doRecoOnly:
163 kwargs.setdefault("TruthParticleContainerName", "TruthParticles")
164 if 'TruthSelectionTool' not in kwargs:
165 kwargs.setdefault("TruthSelectionTool", acc.popToolsAndMerge(
166 InDetRttTruthSelectionToolCfg(flags)))
167
168 doHyyHSSelection = flags.PhysVal.IDPVM.hardScatterStrategy == 4
169 if 'hardScatterSelectionTool' not in kwargs:
170 from InDetConfig.InDetHardScatterSelectionToolConfig import (
171 InDetHardScatterSelectionToolCfg)
172 kwargs.setdefault("hardScatterSelectionTool", acc.popToolsAndMerge(
173 InDetHardScatterSelectionToolCfg(
174 flags,
175 RedoHardScatter=not doHyyHSSelection,
176 SelectionMode=flags.PhysVal.IDPVM.hardScatterStrategy,
177 # make sure the HS selection tool picks up the correct jets
178 JetContainer=flags.PhysVal.IDPVM.jetsNameForHardScatter,
179 VertexContainer=flags.PhysVal.IDPVM.PrimaryVertexContainer
180 )))
181
182 if doHyyHSSelection:
183 assert flags.PhysVal.IDPVM.PrimaryVertexContainer == 'HggPrimaryVertices'
184
185 kwargs.setdefault("FillTruthToRecoNtuple",
186 flags.PhysVal.IDPVM.doValidateTruthToRecoNtuple)
187 kwargs.setdefault("doTruthOriginPlots",
188 flags.PhysVal.IDPVM.doTruthOriginPlots)
189 kwargs.setdefault("doDuplicatePlots",
190 flags.PhysVal.IDPVM.doDuplicatePlots)
191 kwargs.setdefault("doHitLevelPlots",
192 flags.PhysVal.IDPVM.doHitLevelPlots)
193
194 # adding the VertexTruthMatchingTool
195 if not flags.PhysVal.IDPVM.doIDTIDE:
196 kwargs.setdefault("useVertexTruthMatchTool", True)
197 kwargs.setdefault("VertexTruthMatchTool", acc.popToolsAndMerge(
198 InDetVertexTruthMatchToolCfg(flags)))
199
200 if "trackTruthOriginTool" not in kwargs:
201 from InDetTrackSystematicsTools.InDetTrackSystematicsToolsConfig import InDetTrackTruthOriginToolCfg
202 kwargs.setdefault("trackTruthOriginTool", acc.popToolsAndMerge(
203 InDetTrackTruthOriginToolCfg(flags)))
204
205 # Options for Truth Strategy : Requires full pile-up truth containers for some
206 if flags.PhysVal.IDPVM.setTruthStrategy in ['All', 'PileUp']:
207 if not("xAOD::TruthPileupEventContainer#TruthPileupEvents"
208 in flags.Input.TypedCollections):
209 print('WARNING Truth Strategy for InDetPhysValMonitoring set to %s but TruthPileupEvents are missing in the input' % (flags.PhysVal.IDPVM.setTruthStrategy))
210 kwargs.setdefault("PileupSwitch",
211 flags.PhysVal.IDPVM.setTruthStrategy)
212
213 elif flags.PhysVal.IDPVM.setTruthStrategy != 'HardScatter':
214 print('WARNING Truth Strategy for for InDetPhysValMonitoring set to invalid option %s; valid flags are ["HardScatter", "All", "PileUp"]' % (
215 flags.PhysVal.IDPVM.setTruthStrategy))
216
217 else:
218 # disable truth monitoring for data
219 kwargs.setdefault("TruthParticleContainerName", '')
220 kwargs.setdefault("TruthVertexContainerName", '')
221 kwargs.setdefault("TruthEvents", '')
222 kwargs.setdefault("TruthPileupEvents", '')
223 kwargs.setdefault("TruthSelectionTool", None)
224 kwargs.setdefault("FillTruthToRecoNtuple", False)
225
226 if flags.Detector.GeometryITk:
227 # Disable vertex container for now
228 kwargs.setdefault("doTRTExtensionPlots", False)
229 kwargs.setdefault("isITk", True)
230
231 if flags.PhysVal.IDPVM.doTechnicalEfficiency:
232 kwargs.setdefault("fillTechnicalEfficiency", True)
233 kwargs.setdefault("EtaBins", flags.Tracking.ITkMainPass.etaBins if flags.Detector.GeometryITk
234 else [-1, 9999.]) # Configurable eta bins for determining a "reconstructable" particle
235 kwargs.setdefault("MinNumberClusters", flags.Tracking.ITkMainPass.minClusters if flags.Detector.GeometryITk
236 else [flags.Tracking.MainPass.minClusters]) # Configurable hits per eta bins for determining a "reconstructable" particle
237
238 # Control the number of output histograms
239 kwargs.setdefault("DetailLevel", 200 if flags.PhysVal.IDPVM.doExpertOutput else 100)
240
241 # for IDTIDE derivation
242 if flags.PhysVal.IDPVM.doIDTIDE:
243 kwargs.setdefault("doIDTIDEPlots", True)
244 kwargs.setdefault("JetContainerName", 'AntiKt4EMPFlowJets')
245 kwargs.setdefault("FillTrackInJetPlots", True)
246
247 # Set Jet cuts used for CTIDE studies
248 kwargs.setdefault('JetAbsEtaMin', 0)
249 kwargs.setdefault('JetAbsEtaMax',
250 flags.PhysVal.IDPVM.JetAbsEtaMax)
251 kwargs.setdefault('maxTrkJetDR',
252 flags.PhysVal.IDPVM.maxTrkJetDR)
253 # Pt cuts are in GeV
254 kwargs.setdefault('JetPtMin', 100)
255 kwargs.setdefault('JetPtMax', 5000)
256
257 kwargs.setdefault("doPRW", flags.PhysVal.IDPVM.doPRW)
258
259 acc.setPrivateTools(CompFactory.InDetPhysValMonitoringTool(**kwargs))
260 return acc
261
262
void print(char *figname, TCanvas *c1)

◆ InDetPhysValMonitoringToolElectronsCfg()

InDetPhysValMonitoringConfig.InDetPhysValMonitoringToolElectronsCfg ( flags,
** kwargs )

Definition at line 322 of file InDetPhysValMonitoringConfig.py.

322def InDetPhysValMonitoringToolElectronsCfg(flags, **kwargs):
323 acc = ComponentAccumulator()
324
325 kwargs.setdefault("TruthSelectionTool", acc.popToolsAndMerge(
326 InDetRttTruthSelectionToolCfg(
327 flags, name="AthTruthSelectionToolForIDPVM_Electrons",
328 pdgId=11,
329 minPt=5000.
330 )))
331 kwargs.setdefault("onlyFillTruthMatched", True)
332 kwargs.setdefault("SubFolder", 'Electrons/')
333
334 acc.setPrivateTools(acc.popToolsAndMerge(InDetPhysValMonitoringToolCfg(
335 flags, name='InDetPhysValMonitoringToolElectrons', **kwargs)))
336 return acc
337
338

◆ InDetPhysValMonitoringToolGSFCfg()

InDetPhysValMonitoringConfig.InDetPhysValMonitoringToolGSFCfg ( flags,
** kwargs )

Definition at line 314 of file InDetPhysValMonitoringConfig.py.

314def InDetPhysValMonitoringToolGSFCfg(flags, **kwargs):
315 kwargs.setdefault("SubFolder", 'GSF/')
316 kwargs.setdefault("TrackParticleContainerName", 'GSFTrackParticles')
317 kwargs.setdefault("useTrackSelection", True)
318 return InDetPhysValMonitoringToolCfg(
319 flags, name="InDetPhysValMonitoringToolGSF", **kwargs)
320
321

◆ InDetPhysValMonitoringToolHILooseCfg()

InDetPhysValMonitoringConfig.InDetPhysValMonitoringToolHILooseCfg ( flags,
** kwargs )

Definition at line 297 of file InDetPhysValMonitoringConfig.py.

297def InDetPhysValMonitoringToolHILooseCfg(flags, **kwargs):
298 acc = ComponentAccumulator()
299
300 if 'TrackSelectionTool' not in kwargs:
301 from InDetConfig.InDetTrackSelectionToolConfig import (
302 InDetTrackSelectionTool_HILoose_Cfg)
303 kwargs.setdefault("TrackSelectionTool", acc.popToolsAndMerge(
304 InDetTrackSelectionTool_HILoose_Cfg(flags)))
305
306 kwargs.setdefault("SubFolder", 'HILoose/')
307 kwargs.setdefault("useTrackSelection", True)
308
309 acc.setPrivateTools(acc.popToolsAndMerge(InDetPhysValMonitoringToolCfg(
310 flags, name="InDetPhysValMonitoringToolHILoose", **kwargs)))
311 return acc
312
313

◆ InDetPhysValMonitoringToolLooseCfg()

InDetPhysValMonitoringConfig.InDetPhysValMonitoringToolLooseCfg ( flags,
** kwargs )

Definition at line 263 of file InDetPhysValMonitoringConfig.py.

263def InDetPhysValMonitoringToolLooseCfg(flags, **kwargs):
264 acc = ComponentAccumulator()
265
266 if 'TrackSelectionTool' not in kwargs:
267 from InDetConfig.InDetTrackSelectionToolConfig import (
268 InDetTrackSelectionTool_Loose_Cfg)
269 kwargs.setdefault("TrackSelectionTool", acc.popToolsAndMerge(
270 InDetTrackSelectionTool_Loose_Cfg(flags)))
271
272 kwargs.setdefault("SubFolder", 'Loose/')
273 kwargs.setdefault("useTrackSelection", True)
274
275 acc.setPrivateTools(acc.popToolsAndMerge(InDetPhysValMonitoringToolCfg(
276 flags, name="InDetPhysValMonitoringToolLoose", **kwargs)))
277 return acc
278
279

◆ InDetPhysValMonitoringToolMuonsCfg()

InDetPhysValMonitoringConfig.InDetPhysValMonitoringToolMuonsCfg ( flags,
** kwargs )

Definition at line 339 of file InDetPhysValMonitoringConfig.py.

339def InDetPhysValMonitoringToolMuonsCfg(flags, **kwargs):
340 acc = ComponentAccumulator()
341
342 kwargs.setdefault("TruthSelectionTool", acc.popToolsAndMerge(
343 InDetRttTruthSelectionToolCfg(
344 flags, name="AthTruthSelectionToolForIDPVM_Muons",
345 pdgId=13,
346 minPt=5000.
347 )))
348 kwargs.setdefault("onlyFillTruthMatched", True)
349 kwargs.setdefault("SubFolder", 'Muons/')
350
351 acc.setPrivateTools(acc.popToolsAndMerge(InDetPhysValMonitoringToolCfg(
352 flags, name='InDetPhysValMonitoringToolMuons', **kwargs)))
353 return acc
354
355

◆ InDetPhysValMonitoringToolTightPrimaryCfg()

InDetPhysValMonitoringConfig.InDetPhysValMonitoringToolTightPrimaryCfg ( flags,
** kwargs )

Definition at line 280 of file InDetPhysValMonitoringConfig.py.

280def InDetPhysValMonitoringToolTightPrimaryCfg(flags, **kwargs):
281 acc = ComponentAccumulator()
282
283 if 'TrackSelectionTool' not in kwargs:
284 from InDetConfig.InDetTrackSelectionToolConfig import (
285 InDetTrackSelectionTool_TightPrimary_Cfg)
286 kwargs.setdefault("TrackSelectionTool", acc.popToolsAndMerge(
287 InDetTrackSelectionTool_TightPrimary_Cfg(flags)))
288
289 kwargs.setdefault("SubFolder", 'TightPrimary/')
290 kwargs.setdefault("useTrackSelection", True)
291
292 acc.setPrivateTools(acc.popToolsAndMerge(InDetPhysValMonitoringToolCfg(
293 flags, name="InDetPhysValMonitoringToolTightPrimary", **kwargs)))
294 return acc
295
296

◆ InDetRttTruthSelectionToolCfg()

InDetPhysValMonitoringConfig.InDetRttTruthSelectionToolCfg ( flags,
name = "InDetRttTruthSelectionTool",
** kwargs )

Definition at line 38 of file InDetPhysValMonitoringConfig.py.

39 flags, name="InDetRttTruthSelectionTool", **kwargs):
40 acc = ComponentAccumulator()
41
42 kwargs.setdefault("requireStable", True)
43 kwargs.setdefault("requireCharged", True)
44 kwargs.setdefault("selectedCharge", flags.PhysVal.IDPVM.selectedCharge)
45 kwargs.setdefault("requireOnlyPrimary",
46 True if kwargs.pop("OnlyDressPrimaryTracks", True)
47 else False)
48 kwargs.setdefault("maxProdVertRadius",
49 flags.PhysVal.IDPVM.maxProdVertRadius)
50
51 if flags.Detector.GeometryID:
52 if flags.PhysVal.IDPVM.doValidateLargeD0Tracks or flags.PhysVal.IDPVM.doValidateMergedLargeD0Tracks:
53 kwargs.setdefault("maxEta", 3.0)
54 else:
55 kwargs.setdefault("maxEta", 2.5)
56 elif flags.Detector.GeometryITk:
57 kwargs.setdefault("maxEta", 4.0)
58
59 kwargs.setdefault("minPt", flags.PhysVal.IDPVM.truthMinPt)
60 kwargs.setdefault("ancestorList", flags.PhysVal.IDPVM.ancestorIDs)
61 kwargs.setdefault("requireSiHit", flags.PhysVal.IDPVM.requiredSiHits)
62 kwargs.setdefault("vetoPdgId", flags.PhysVal.IDPVM.vetoPdgId)
63 kwargs.setdefault("pdgId", flags.PhysVal.IDPVM.pdgId)
64
65 if "radiusCylinder" in kwargs or "zDisc" in kwargs:
66 from TrkConfig.AtlasExtrapolatorConfig import AtlasExtrapolatorCfg
67 extrapolator = acc.popToolsAndMerge(AtlasExtrapolatorCfg(flags))
68 acc.addPublicTool(extrapolator) # TODO: migrate to private?
69 kwargs.setdefault("Extrapolator", extrapolator)
70 else:
71 kwargs.setdefault("Extrapolator", None)
72
73 acc.setPrivateTools(CompFactory.AthTruthSelectionTool(name, **kwargs))
74 return acc
75
76

◆ InDetVertexTruthMatchToolCfg()

InDetPhysValMonitoringConfig.InDetVertexTruthMatchToolCfg ( flags,
** kwargs )

Definition at line 102 of file InDetPhysValMonitoringConfig.py.

102def InDetVertexTruthMatchToolCfg(flags, **kwargs):
103 acc = ComponentAccumulator()
104 acc.setPrivateTools(CompFactory.InDetVertexTruthMatchTool(**kwargs))
105 return acc
106
107