Loading [MathJax]/jax/output/SVG/config.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
Functions
ActsSpacePointFormationConfig Namespace Reference

Functions

ComponentAccumulator ActsSpacePointCacheCreatorAlgCfg (flags, str name="ActsSpacePointCacheCreatorAlg", **dict kwargs)
 
ComponentAccumulator ActsPixelSpacePointToolCfg (flags, str name="ActsPixelSpacePointTool", **dict kwargs)
 
ComponentAccumulator ActsStripSpacePointToolCfg (flags, str name="ActsStripSpacePointTool", **dict kwargs)
 
ComponentAccumulator ActsCoreStripSpacePointToolCfg (flags, str name="ActsCoreStripSpacePointTool", **dict kwargs)
 
ComponentAccumulator ActsPixelSpacePointPreparationAlgCfg (flags, str name="ActsPixelSpacePointPreparationAlg", *bool useCache=False, **dict kwargs)
 
ComponentAccumulator ActsStripSpacePointPreparationAlgCfg (flags, str name="ActsStripSpacePointPreparationAlg", *bool useCache=False, **dict kwargs)
 
ComponentAccumulator ActsStripOverlapSpacePointPreparationAlgCfg (flags, str name='ActsStripOverlapSpacePointPreparationAlg', *bool useCache=False, **dict kwargs)
 
ComponentAccumulator ActsPixelSpacePointFormationAlgCfg (flags, str name="ActsPixelSpacePointFormationAlg", *bool useCache=False, **dict kwargs)
 
ComponentAccumulator ActsStripSpacePointFormationAlgCfg (flags, str name="ActsStripSpacePointFormationAlg", *bool useCache=False, **dict kwargs)
 
ComponentAccumulator ActsMainSpacePointFormationCfg (flags, *str RoIs="ActsRegionOfInterest", **dict kwargs)
 
ComponentAccumulator ActsSpacePointFormationCfg (flags, *previousActsExtension=None)
 

Function Documentation

◆ ActsCoreStripSpacePointToolCfg()

ComponentAccumulator ActsSpacePointFormationConfig.ActsCoreStripSpacePointToolCfg (   flags,
str   name = "ActsCoreStripSpacePointTool",
**dict  kwargs 
)

Definition at line 38 of file ActsSpacePointFormationConfig.py.

39  name: str = "ActsCoreStripSpacePointTool",
40  **kwargs: dict) -> ComponentAccumulator:
41  acc = ComponentAccumulator()
42 
43  from ActsConfig.ActsGeometryConfig import ActsDetectorElementToActsGeometryIdMappingAlgCfg
45  kwargs.setdefault('DetectorElementToActsGeometryIdMapKey', 'DetectorElementToActsGeometryIdMap')
46  kwargs.setdefault("useSCTLayerDep_OverlapCuts", False)
47 
48  if 'LorentzAngleTool' not in kwargs:
49  from SiLorentzAngleTool.ITkStripLorentzAngleConfig import ITkStripLorentzAngleToolCfg
50  kwargs.setdefault("LorentzAngleTool", acc.popToolsAndMerge(ITkStripLorentzAngleToolCfg(flags)) )
51 
52  if 'TrackingGeometryTool' not in kwargs:
53  from ActsConfig.ActsGeometryConfig import ActsTrackingGeometryToolCfg
54  kwargs.setdefault('TrackingGeometryTool', acc.popToolsAndMerge(ActsTrackingGeometryToolCfg(flags)))
55 
56  acc.setPrivateTools(CompFactory.ActsTrk.CoreStripSpacePointFormationTool(name, **kwargs))
57  return acc
58 

◆ ActsMainSpacePointFormationCfg()

ComponentAccumulator ActsSpacePointFormationConfig.ActsMainSpacePointFormationCfg (   flags,
*str   RoIs = "ActsRegionOfInterest",
**dict  kwargs 
)

Definition at line 193 of file ActsSpacePointFormationConfig.py.

194  *,
195  RoIs: str = "ActsRegionOfInterest",
196  **kwargs: dict) -> ComponentAccumulator:
197  acc = ComponentAccumulator()
198 
199  kwargs.setdefault('processPixels', flags.Detector.EnableITkPixel)
200  kwargs.setdefault('processStrips', flags.Detector.EnableITkStrip)
201  kwargs.setdefault('runCacheCreation', flags.Acts.useCache)
202  kwargs.setdefault('runReconstruction', True)
203  kwargs.setdefault('runPreparation', flags.Acts.useCache)
204  kwargs.setdefault('processOverlapSpacePoints', True)
205 
206  if kwargs['runCacheCreation']:
207  acc.merge(ActsSpacePointCacheCreatorAlgCfg(flags, **extractChildKwargs(prefix='SpacePointCacheCreatorAlg.', **kwargs)))
208 
209  if kwargs['runReconstruction']:
210  if kwargs['processPixels']:
211  acc.merge(ActsPixelSpacePointFormationAlgCfg(flags,**extractChildKwargs(prefix='PixelSpacePointFormationAlg.', **kwargs)))
212 
213  if kwargs['processStrips']:
214  acc.merge(ActsStripSpacePointFormationAlgCfg(flags, **extractChildKwargs(prefix='StripSpacePointFormationAlg.', **kwargs)))
215 
216  if kwargs['runPreparation']:
217  if kwargs['processPixels']:
218  acc.merge(ActsPixelSpacePointPreparationAlgCfg(flags,
219  RoIs=RoIs,
220  **extractChildKwargs(prefix='PixelSpacePointPreparationAlg.', **kwargs)))
221  if kwargs['processStrips']:
222  acc.merge(ActsStripSpacePointPreparationAlgCfg(flags,
223  RoIs=RoIs,
224  **extractChildKwargs(prefix='StripSpacePointPreparationAlg.', **kwargs)))
225  if kwargs['processOverlapSpacePoints']:
227  RoIs=RoIs,
228  **extractChildKwargs(prefix='StripOverlapSpacePointPreparationAlg.', **kwargs)))
229 
230  # Analysis extensions
231  if flags.Acts.SpacePoints.doAnalysis:
232  if kwargs['processPixels']:
233  from ActsConfig.ActsAnalysisConfig import ActsPixelSpacePointAnalysisAlgCfg
234  acc.merge(ActsPixelSpacePointAnalysisAlgCfg(flags, **extractChildKwargs(prefix='PixelSpacePointAnalysisAlg.', **kwargs)))
235  if kwargs['processStrips']:
236  from ActsConfig.ActsAnalysisConfig import ActsStripSpacePointAnalysisAlgCfg
237  acc.merge(ActsStripSpacePointAnalysisAlgCfg(flags, **extractChildKwargs(prefix='StripSpacePointAnalysisAlg.', **kwargs)))
238  if kwargs['processOverlapSpacePoints']:
239  from ActsConfig.ActsAnalysisConfig import ActsStripOverlapSpacePointAnalysisAlgCfg
240  acc.merge(ActsStripOverlapSpacePointAnalysisAlgCfg(flags, **extractChildKwargs(prefix='StripOverlapSpacePointAnalysisAlg.', **kwargs)))
241 
242  return acc
243 

◆ ActsPixelSpacePointFormationAlgCfg()

ComponentAccumulator ActsSpacePointFormationConfig.ActsPixelSpacePointFormationAlgCfg (   flags,
str   name = "ActsPixelSpacePointFormationAlg",
*bool   useCache = False,
**dict  kwargs 
)

Definition at line 117 of file ActsSpacePointFormationConfig.py.

118  name: str = "ActsPixelSpacePointFormationAlg",
119  *,
120  useCache: bool = False,
121  **kwargs: dict) -> ComponentAccumulator:
122  acc = ComponentAccumulator()
123 
124  from PixelGeoModelXml.ITkPixelGeoModelConfig import ITkPixelReadoutGeometryCfg
125  acc.merge(ITkPixelReadoutGeometryCfg(flags))
126 
127  kwargs.setdefault('PixelClusters', 'ITkPixelClusters')
128  kwargs.setdefault('PixelSpacePoints', 'ITkPixelSpacePoints')
129 
130  if useCache:
131  kwargs.setdefault('SPCacheBackend', 'ActsPixelSpacePointCache_Back')
132  kwargs.setdefault('SPCache', 'ActsPixelSpacePointCache')
133 
134  if 'SpacePointFormationTool' not in kwargs:
135  kwargs.setdefault("SpacePointFormationTool", acc.popToolsAndMerge(ActsPixelSpacePointToolCfg(flags)))
136 
137  if flags.Acts.doMonitoring and 'MonTool' not in kwargs:
138  from ActsConfig.ActsMonitoringConfig import ActsPixelSpacePointFormationMonitoringToolCfg
139  kwargs.setdefault("MonTool", acc.popToolsAndMerge(ActsPixelSpacePointFormationMonitoringToolCfg(flags)))
140 
141 
142  if useCache:
143  acc.addEventAlgo(CompFactory.ActsTrk.PixelCacheSpacePointFormationAlg(name, **kwargs))
144  else:
145  acc.addEventAlgo(CompFactory.ActsTrk.PixelSpacePointFormationAlg(name, **kwargs))
146 
147  return acc
148 

◆ ActsPixelSpacePointPreparationAlgCfg()

ComponentAccumulator ActsSpacePointFormationConfig.ActsPixelSpacePointPreparationAlgCfg (   flags,
str   name = "ActsPixelSpacePointPreparationAlg",
*bool   useCache = False,
**dict  kwargs 
)

Definition at line 59 of file ActsSpacePointFormationConfig.py.

60  name: str = "ActsPixelSpacePointPreparationAlg",
61  *,
62  useCache: bool = False,
63  **kwargs: dict) -> ComponentAccumulator:
64  acc = ComponentAccumulator()
65 
66  kwargs.setdefault('InputCollection', 'ITkPixelSpacePoints')
67  kwargs.setdefault('DetectorElements', 'ITkPixelDetectorElementCollection')
68 
69  if 'RegSelTool' not in kwargs:
70  from RegionSelector.RegSelToolConfig import regSelTool_ITkPixel_Cfg
71  kwargs.setdefault('RegSelTool', acc.popToolsAndMerge(regSelTool_ITkPixel_Cfg(flags)))
72 
73  if flags.Acts.doMonitoring and 'MonTool' not in kwargs:
74  from ActsConfig.ActsMonitoringConfig import ActsDataPreparationMonitoringToolCfg
75  kwargs.setdefault('MonTool', acc.popToolsAndMerge(ActsDataPreparationMonitoringToolCfg(flags,
76  name = "ActsPixelSpacePointPreparationMonitoringTool")))
77 
78  if not useCache:
79  acc.addEventAlgo(CompFactory.ActsTrk.SpacePointDataPreparationAlg(name, **kwargs))
80  else:
81  acc.addEventAlgo(CompFactory.ActsTrk.SpacePointCacheDataPreparationAlg(name, **kwargs))
82  return acc
83 

◆ ActsPixelSpacePointToolCfg()

ComponentAccumulator ActsSpacePointFormationConfig.ActsPixelSpacePointToolCfg (   flags,
str   name = "ActsPixelSpacePointTool",
**dict  kwargs 
)

Definition at line 17 of file ActsSpacePointFormationConfig.py.

18  name: str = "ActsPixelSpacePointTool",
19  **kwargs: dict) -> ComponentAccumulator:
20  acc = ComponentAccumulator()
21  acc.setPrivateTools(CompFactory.ActsTrk.PixelSpacePointFormationTool(name, **kwargs))
22  return acc
23 

◆ ActsSpacePointCacheCreatorAlgCfg()

ComponentAccumulator ActsSpacePointFormationConfig.ActsSpacePointCacheCreatorAlgCfg (   flags,
str   name = "ActsSpacePointCacheCreatorAlg",
**dict  kwargs 
)

Definition at line 7 of file ActsSpacePointFormationConfig.py.

8  name: str = "ActsSpacePointCacheCreatorAlg",
9  **kwargs: dict) -> ComponentAccumulator:
10  acc = ComponentAccumulator()
11  kwargs.setdefault("PixelSpacePointCacheKey", "ActsPixelSpacePointCache_Back")
12  kwargs.setdefault("StripSpacePointCacheKey", "ActsStripSpacePointCache_Back")
13  kwargs.setdefault("StripOverlapSpacePointCacheKey", "ActsStripOverlapSpacePointCache_Back")
14  acc.addEventAlgo(CompFactory.ActsTrk.Cache.CreatorAlg(name, **kwargs))
15  return acc
16 

◆ ActsSpacePointFormationCfg()

ComponentAccumulator ActsSpacePointFormationConfig.ActsSpacePointFormationCfg (   flags,
previousActsExtension = None 
)

Definition at line 244 of file ActsSpacePointFormationConfig.py.

245  *,
246  previousActsExtension = None) -> ComponentAccumulator:
247  acc = ComponentAccumulator()
248 
249  processPixels = flags.Detector.EnableITkPixel
250  processStrips = flags.Detector.EnableITkStrip
251 
252  # For conversion and LRT pass we do not process pixels since we assume
253  # they have been processed on the primary pass.
254  if flags.Tracking.ActiveConfig.extension in ["ActsConversion", "ActsLargeRadius"]:
255  processPixels = False
256  elif flags.Tracking.doITkFastTracking:
257  # Fast tracking configuration: disable strip
258  processStrips = False
259 
260  kwargs = dict()
261  kwargs.setdefault('processPixels', processPixels)
262  kwargs.setdefault('processStrips', processStrips)
263 
264  # Similarly to Clusterization, space point formation is a three step process at maximum:
265  # (1) Cache Creation
266  # (2) Space Point formation algorithm (reconstruction of space points)
267  # (3) Preparation of collection for downstream algorithms
268  # What step is scheduled depends on the tracking pass and the activation
269  # or de-activation of caching mechanism.
270 
271  # Secondary passes do not need cache creation, that has to be performed
272  # on the primary pass, and only if the caching is enabled.
273  # Reconstruction can run on secondary passes only if the caching is enabled,
274  # this is because we may need to process detector elements not processed
275  # on the primary pass.
276  # Preparation has to be performed on secondary passes always, and on primary
277  # pass only if cache is enabled. In the latter case it is used to collect all
278  # the clusters from all views before passing them to the downstream algorithms
279 
280  if flags.Tracking.ActiveConfig.isSecondaryPass:
281  # Secondary passes
282  kwargs.setdefault('runCacheCreation', False)
283  kwargs.setdefault('runReconstruction', flags.Acts.useCache)
284  kwargs.setdefault('runPreparation', True)
285  else:
286  # Primary pass
287  kwargs.setdefault('runCacheCreation', flags.Acts.useCache)
288  kwargs.setdefault('runReconstruction', True)
289  kwargs.setdefault('runPreparation', flags.Acts.useCache)
290 
291  # Overlap Space Points may not be required
292  processOverlapSpacePoints = processStrips
293  if flags.Tracking.ActiveConfig.extension in ['ActsConversion']:
294  processOverlapSpacePoints = False
295  kwargs.setdefault('processOverlapSpacePoints', processOverlapSpacePoints)
296 
297  # Name of the RoI to be used
298  roisName = f'{flags.Tracking.ActiveConfig.extension}RegionOfInterest'
299  # Large Radius pass uses the same roi as the primary pass (FS roi)
300  if flags.Tracking.ActiveConfig.extension == 'ActsLargeRadius':
301  roisName = 'ActsRegionOfInterest'
302 
303  # Cluster Collection name(s) and Space Point Collection name(s)
304  # The name depends on the tracking pass as well as the cache mechanism
305  pixelClustersName = 'ITkPixelClusters'
306  stripClustersName = 'ITkStripClusters'
307  pixelSpacePointsName = 'ITkPixelSpacePoints'
308  stripSpacePointsName = 'ITkStripSpacePoints'
309  stripOverlapSpacePointsName = 'ITkStripOverlapSpacePoints'
310  # Secondary passes modify the collection name
311  if flags.Tracking.ActiveConfig.isSecondaryPass:
312  pixelClustersName = f'ITk{flags.Tracking.ActiveConfig.extension.replace("Acts", "")}PixelClusters'
313  stripClustersName = f'ITk{flags.Tracking.ActiveConfig.extension.replace("Acts", "")}StripClusters'
314  pixelSpacePointsName = f'ITk{flags.Tracking.ActiveConfig.extension.replace("Acts", "")}PixelSpacePoints'
315  stripSpacePointsName = f'ITk{flags.Tracking.ActiveConfig.extension.replace("Acts", "")}StripSpacePoints'
316  stripOverlapSpacePointsName = f'ITk{flags.Tracking.ActiveConfig.extension.replace("Acts", "")}StripOverlapSpacePoints'
317  # if cache is enabled, add "_Cached" at the end
318  if flags.Acts.useCache:
319  pixelClustersName += "_Cached"
320  stripClustersName += "_Cached"
321 
322  # Primary collections for space points (i.e. produced by primary pass)
323  primaryPixelSpacePointsName = 'ITkPixelSpacePoints'
324  primaryStripSpacePointsName = 'ITkStripSpacePoints'
325  primaryStripOverlapSpacePointsName = 'ITkStripOverlapSpacePoints'
326 
327  # Configuration for (1)
328  if kwargs['runCacheCreation']:
329  kwargs.setdefault('SpacePointCacheCreatorAlg.name', f'{flags.Tracking.ActiveConfig.extension}SpacePointCacheCreatorAlg')
330 
331  # Configuration for (2)
332  if kwargs['runReconstruction']:
333  if kwargs['processPixels']:
334  kwargs.setdefault('PixelSpacePointFormationAlg.name', f'{flags.Tracking.ActiveConfig.extension}PixelSpacePointFormationAlg')
335  kwargs.setdefault('PixelSpacePointFormationAlg.useCache', flags.Acts.useCache)
336  kwargs.setdefault('PixelSpacePointFormationAlg.SPCache', f'{flags.Tracking.ActiveConfig.extension}PixelSpacePointCache')
337  kwargs.setdefault('PixelSpacePointFormationAlg.PixelClusters', pixelClustersName)
338  kwargs.setdefault('PixelSpacePointFormationAlg.PixelSpacePoints', pixelSpacePointsName)
339 
340  if kwargs['processStrips']:
341  kwargs.setdefault('StripSpacePointFormationAlg.name', f'{flags.Tracking.ActiveConfig.extension}StripSpacePointFormationAlg')
342  kwargs.setdefault('StripSpacePointFormationAlg.useCache', flags.Acts.useCache)
343  kwargs.setdefault('StripSpacePointFormationAlg.SPCache', f'{flags.Tracking.ActiveConfig.extension}StripSpacePointCache')
344  kwargs.setdefault('StripSpacePointFormationAlg.StripClusters', stripClustersName)
345  kwargs.setdefault('StripSpacePointFormationAlg.StripSpacePoints', stripSpacePointsName)
346 
347  # Handling of Overlap Space Points
348  kwargs.setdefault('StripSpacePointFormationAlg.ProcessOverlapForStrip', kwargs['processOverlapSpacePoints'])
349  kwargs.setdefault('StripSpacePointFormationAlg.OSPCache', f'{flags.Tracking.ActiveConfig.extension}StripOverlapSpacePointCache')
350  if kwargs['processOverlapSpacePoints']:
351  kwargs.setdefault('StripSpacePointFormationAlg.StripOverlapSpacePoints', stripOverlapSpacePointsName)
352  else:
353  # Disable keys
354  kwargs.setdefault('StripSpacePointFormationAlg.StripOverlapSpacePoints', '')
355 
356  # Configuration for (3)
357  if kwargs['runPreparation']:
358  if kwargs['processPixels']:
359  kwargs.setdefault('PixelSpacePointPreparationAlg.name', f'{flags.Tracking.ActiveConfig.extension}PixelSpacePointPreparationAlg')
360  kwargs.setdefault('PixelSpacePointPreparationAlg.useCache', flags.Acts.useCache)
361  kwargs.setdefault('PixelSpacePointPreparationAlg.OutputCollection', f'{pixelSpacePointsName}_Cached' if kwargs['runReconstruction'] else pixelSpacePointsName)
362  # The input is one between the collection (w/o cache) and the IDC (w/ cache)
363  if not flags.Acts.useCache:
364  # Take the collection from the reconstruction step. If not available take the collection from the primary pass
365  kwargs.setdefault('PixelSpacePointPreparationAlg.InputCollection', pixelSpacePointsName if kwargs['runReconstruction'] else primaryPixelSpacePointsName)
366  kwargs.setdefault('PixelSpacePointPreparationAlg.InputIDC', '')
367  else:
368  kwargs.setdefault('PixelSpacePointPreparationAlg.InputCollection', '')
369  kwargs.setdefault('PixelSpacePointPreparationAlg.InputIDC', f'{flags.Tracking.ActiveConfig.extension}PixelSpacePointCache')
370  # Prd Map
371  if flags.Tracking.ActiveConfig.isSecondaryPass and previousActsExtension is not None:
372  kwargs.setdefault('PixelSpacePointPreparationAlg.InputPrdMap', f'{previousActsExtension}PrdMap')
373 
374 
375  if kwargs['processStrips']:
376  kwargs.setdefault('StripSpacePointPreparationAlg.name', f'{flags.Tracking.ActiveConfig.extension}StripSpacePointPreparationAlg')
377  kwargs.setdefault('StripSpacePointPreparationAlg.useCache', flags.Acts.useCache)
378  kwargs.setdefault('StripSpacePointPreparationAlg.OutputCollection', f'{stripSpacePointsName}_Cached' if kwargs['runReconstruction'] else stripSpacePointsName)
379  # The input is one between the collection (w/o cache) and the IDC (w/ cache)
380  if not flags.Acts.useCache:
381  # Take the collection from the reconstruction step. If not available take the collection from the primary pass
382  kwargs.setdefault('StripSpacePointPreparationAlg.InputCollection', stripSpacePointsName if kwargs['runReconstruction'] else primaryStripSpacePointsName)
383  kwargs.setdefault('StripSpacePointPreparationAlg.InputIDC', '')
384  else:
385  kwargs.setdefault('StripSpacePointPreparationAlg.InputCollection', '')
386  kwargs.setdefault('StripSpacePointPreparationAlg.InputIDC', f'{flags.Tracking.ActiveConfig.extension}StripSpacePointCache')
387  # Prd Map
388  if flags.Tracking.ActiveConfig.isSecondaryPass and previousActsExtension is not None:
389  kwargs.setdefault('StripSpacePointPreparationAlg.InputPrdMap', f'{previousActsExtension}PrdMap')
390 
391  if kwargs['processOverlapSpacePoints']:
392  kwargs.setdefault('StripOverlapSpacePointPreparationAlg.name', f'{flags.Tracking.ActiveConfig.extension}StripOverlapSpacePointPreparationAlg')
393  kwargs.setdefault('StripOverlapSpacePointPreparationAlg.useCache', flags.Acts.useCache)
394  kwargs.setdefault('StripOverlapSpacePointPreparationAlg.OutputCollection', f'{stripOverlapSpacePointsName}_Cached' if kwargs['runReconstruction'] else stripOverlapSpacePointsName)
395  # The input is one between the collection (w/o cache) and the IDC (w/ cache)
396  if not flags.Acts.useCache:
397  # Take the collection from the reconstruction step. If not available take the collection from the primary pass
398  kwargs.setdefault('StripOverlapSpacePointPreparationAlg.InputCollection', stripOverlapSpacePointsName if kwargs['runReconstruction'] else primaryStripOverlapSpacePointsName)
399  kwargs.setdefault('StripOverlapSpacePointPreparationAlg.InputIDC', '')
400  else:
401  kwargs.setdefault('StripOverlapSpacePointPreparationAlg.InputCollection', '')
402  kwargs.setdefault('StripOverlapSpacePointPreparationAlg.InputIDC', f'{flags.Tracking.ActiveConfig.extension}StripOverlapSpacePointCache')
403  # Prd Map
404  if flags.Tracking.ActiveConfig.isSecondaryPass and previousActsExtension is not None:
405  kwargs.setdefault('StripOverlapSpacePointPreparationAlg.InputPrdMap', f'{previousActsExtension}PrdMap')
406 
407  # Analysis algo(s)
408  if flags.Acts.SpacePoints.doAnalysis:
409  # Run analysis code on the resulting space point collection produced by this tracking pass
410  # This collection is the result of (3) if it ran, else the result of (2). We are sure at least one of them run
411  if kwargs['processPixels']:
412  kwargs.setdefault('PixelSpacePointAnalysisAlg.name', f'{flags.Tracking.ActiveConfig.extension}PixelSpacePointAnalysisAlg')
413  kwargs.setdefault('PixelSpacePointAnalysisAlg.extension', flags.Tracking.ActiveConfig.extension)
414  kwargs.setdefault('PixelSpacePointAnalysisAlg.SpacePointContainerKey', kwargs['PixelSpacePointPreparationAlg.OutputCollection'] if kwargs['runPreparation'] else kwargs['PixelSpacePointFormationAlg.PixelSpacePoints'])
415 
416  if kwargs['processStrips']:
417  kwargs.setdefault('StripSpacePointAnalysisAlg.name', f'{flags.Tracking.ActiveConfig.extension}StripSpacePointAnalysisAlg')
418  kwargs.setdefault('StripSpacePointAnalysisAlg.extension', flags.Tracking.ActiveConfig.extension)
419  kwargs.setdefault('StripSpacePointAnalysisAlg.SpacePointContainerKey', kwargs['StripSpacePointPreparationAlg.OutputCollection'] if kwargs['runPreparation'] else kwargs['StripSpacePointFormationAlg.StripSpacePoints'])
420 
421  if kwargs['processOverlapSpacePoints']:
422  kwargs.setdefault('StripOverlapSpacePointAnalysisAlg.name', f'{flags.Tracking.ActiveConfig.extension}StripOverlapSpacePointAnalysisAlg')
423  kwargs.setdefault('StripOverlapSpacePointAnalysisAlg.extension', flags.Tracking.ActiveConfig.extension)
424  kwargs.setdefault('StripOverlapSpacePointAnalysisAlg.SpacePointContainerKey', kwargs['StripOverlapSpacePointPreparationAlg.OutputCollection'] if kwargs['runPreparation'] else kwargs['StripSpacePointFormationAlg.StripOverlapSpacePoints'])
425 
426  acc.merge(ActsMainSpacePointFormationCfg(flags, RoIs=roisName, **kwargs))
427 
428 
429  # Persistification
430  if flags.Acts.EDM.PersistifySpacePoints and kwargs['runReconstruction']:
431  toAOD = []
432  pixel_spacepoint_shortlist = ['-measurements']
433  strip_spacepoint_shortlist = ['topHalfStripLength',
434  'bottomHalfStripLength',
435  'topStripDirection',
436  'bottomStripDirection',
437  'stripCenterDistance',
438  'topStripCenter',
439  'measurementLink']
440 
441  pixel_spacepoint_variables = '.'.join(pixel_spacepoint_shortlist)
442  strip_spacepoint_variables = '.'.join(strip_spacepoint_shortlist)
443 
444  if kwargs['processPixels']:
445  pixelSpacePointCollection = kwargs['PixelSpacePointFormationAlg.PixelSpacePoints']
446  toAOD += [f'xAOD::SpacePointContainer#{pixelSpacePointCollection}',
447  f"xAOD::SpacePointAuxContainer#{pixelSpacePointCollection}Aux.{pixel_spacepoint_variables}"]
448 
449  if kwargs['processStrips']:
450  stripSpacePointCollection = kwargs['StripSpacePointFormationAlg.StripSpacePoints']
451  toAOD += [f'xAOD::SpacePointContainer#{stripSpacePointCollection}',
452  f"xAOD::SpacePointAuxContainer#{stripSpacePointCollection}Aux.{strip_spacepoint_variables}"]
453 
454  if kwargs['processOverlapSpacePoints']:
455  stripSpacePointCollection = kwargs['StripSpacePointFormationAlg.StripOverlapSpacePoints']
456  toAOD += [f'xAOD::SpacePointContainer#{stripSpacePointCollection}',
457  f"xAOD::SpacePointAuxContainer#{stripSpacePointCollection}Aux.{strip_spacepoint_variables}"]
458 
459  from OutputStreamAthenaPool.OutputStreamConfig import addToAOD
460  acc.merge(addToAOD(flags, toAOD))
461 
462  return acc
463 

◆ ActsStripOverlapSpacePointPreparationAlgCfg()

ComponentAccumulator ActsSpacePointFormationConfig.ActsStripOverlapSpacePointPreparationAlgCfg (   flags,
str   name = 'ActsStripOverlapSpacePointPreparationAlg',
*bool   useCache = False,
**dict  kwargs 
)

Definition at line 109 of file ActsSpacePointFormationConfig.py.

110  name: str = 'ActsStripOverlapSpacePointPreparationAlg',
111  *,
112  useCache: bool = False,
113  **kwargs: dict) -> ComponentAccumulator:
114  kwargs.setdefault('InputCollection', 'ITkStripOverlapSpacePoints')
115  return ActsStripSpacePointPreparationAlgCfg(flags, name=name, useCache=useCache, **kwargs)
116 

◆ ActsStripSpacePointFormationAlgCfg()

ComponentAccumulator ActsSpacePointFormationConfig.ActsStripSpacePointFormationAlgCfg (   flags,
str   name = "ActsStripSpacePointFormationAlg",
*bool   useCache = False,
**dict  kwargs 
)

Definition at line 149 of file ActsSpacePointFormationConfig.py.

150  name: str = "ActsStripSpacePointFormationAlg",
151  *,
152  useCache: bool = False,
153  **kwargs: dict) -> ComponentAccumulator:
154  acc = ComponentAccumulator()
155 
156  from StripGeoModelXml.ITkStripGeoModelConfig import ITkStripReadoutGeometryCfg
157  acc.merge(ITkStripReadoutGeometryCfg(flags))
158 
159  from BeamSpotConditions.BeamSpotConditionsConfig import BeamSpotCondAlgCfg
160  acc.merge(BeamSpotCondAlgCfg(flags))
161 
162  from InDetConfig.SiSpacePointFormationConfig import ITkSiElementPropertiesTableCondAlgCfg
163  acc.merge(ITkSiElementPropertiesTableCondAlgCfg(flags))
164 
165 
166  kwargs.setdefault('StripClusters', 'ITkStripClusters')
167  kwargs.setdefault('StripSpacePoints', 'ITkStripSpacePoints')
168  kwargs.setdefault('StripOverlapSpacePoints', 'ITkStripOverlapSpacePoints')
169 
170  if useCache:
171  kwargs.setdefault('SPCacheBackend', 'ActsStripSpacePointCache_Back')
172  kwargs.setdefault('SPCache', 'ActsStripSpacePointCache')
173  kwargs.setdefault('OSPCacheBackend', 'ActsStripOverlapSpacePointCache_Back')
174  kwargs.setdefault('OSPCache', 'ActsStripOverlapSpacePointCache')
175 
176  if 'SpacePointFormationTool' not in kwargs:
177  from ActsConfig.ActsConfigFlags import SpacePointStrategy
178  if flags.Acts.SpacePointStrategy is SpacePointStrategy.ActsCore:
179  kwargs.setdefault('SpacePointFormationTool', acc.popToolsAndMerge(ActsCoreStripSpacePointToolCfg(flags)))
180  else:
181  kwargs.setdefault('SpacePointFormationTool', acc.popToolsAndMerge(ActsStripSpacePointToolCfg(flags)))
182 
183  if flags.Acts.doMonitoring and 'MonTool' not in kwargs:
184  from ActsConfig.ActsMonitoringConfig import ActsStripSpacePointFormationMonitoringToolCfg
185  kwargs.setdefault("MonTool", acc.popToolsAndMerge(ActsStripSpacePointFormationMonitoringToolCfg(flags)))
186 
187  if useCache:
188  acc.addEventAlgo(CompFactory.ActsTrk.StripCacheSpacePointFormationAlg(name, **kwargs))
189  else:
190  acc.addEventAlgo(CompFactory.ActsTrk.StripSpacePointFormationAlg(name, **kwargs))
191  return acc
192 

◆ ActsStripSpacePointPreparationAlgCfg()

ComponentAccumulator ActsSpacePointFormationConfig.ActsStripSpacePointPreparationAlgCfg (   flags,
str   name = "ActsStripSpacePointPreparationAlg",
*bool   useCache = False,
**dict  kwargs 
)

Definition at line 84 of file ActsSpacePointFormationConfig.py.

85  name: str = "ActsStripSpacePointPreparationAlg",
86  *,
87  useCache: bool = False,
88  **kwargs: dict) -> ComponentAccumulator:
89  acc = ComponentAccumulator()
90 
91  kwargs.setdefault('InputCollection', 'ITkStripSpacePoints')
92  kwargs.setdefault('DetectorElements', 'ITkStripDetectorElementCollection')
93 
94  if 'RegSelTool' not in kwargs:
95  from RegionSelector.RegSelToolConfig import regSelTool_ITkStrip_Cfg
96  kwargs.setdefault('RegSelTool', acc.popToolsAndMerge(regSelTool_ITkStrip_Cfg(flags)))
97 
98  if flags.Acts.doMonitoring and 'MonTool' not in kwargs:
99  from ActsConfig.ActsMonitoringConfig import ActsDataPreparationMonitoringToolCfg
100  kwargs.setdefault('MonTool', acc.popToolsAndMerge(ActsDataPreparationMonitoringToolCfg(flags,
101  name = "ActsStripSpacePointPreparationMonitoringTool")))
102 
103  if not useCache:
104  acc.addEventAlgo(CompFactory.ActsTrk.SpacePointDataPreparationAlg(name, **kwargs))
105  else:
106  acc.addEventAlgo(CompFactory.ActsTrk.SpacePointCacheDataPreparationAlg(name, **kwargs))
107  return acc
108 

◆ ActsStripSpacePointToolCfg()

ComponentAccumulator ActsSpacePointFormationConfig.ActsStripSpacePointToolCfg (   flags,
str   name = "ActsStripSpacePointTool",
**dict  kwargs 
)

Definition at line 24 of file ActsSpacePointFormationConfig.py.

25  name: str = "ActsStripSpacePointTool",
26  **kwargs: dict) -> ComponentAccumulator:
27  acc = ComponentAccumulator()
28 
29  kwargs.setdefault("useSCTLayerDep_OverlapCuts", False)
30 
31  if 'LorentzAngleTool' not in kwargs:
32  from SiLorentzAngleTool.ITkStripLorentzAngleConfig import ITkStripLorentzAngleToolCfg
33  kwargs.setdefault("LorentzAngleTool", acc.popToolsAndMerge(ITkStripLorentzAngleToolCfg(flags)) )
34 
35  acc.setPrivateTools(CompFactory.ActsTrk.StripSpacePointFormationTool(name, **kwargs))
36  return acc
37 
python.ITkStripLorentzAngleConfig.ITkStripLorentzAngleToolCfg
def ITkStripLorentzAngleToolCfg(flags, name="ITkStripLorentzAngleTool", **kwargs)
Definition: ITkStripLorentzAngleConfig.py:10
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
ActsUtilities.extractChildKwargs
dict extractChildKwargs(*str prefix, **dict kwargs)
Definition: ActsUtilities.py:3
python.BeamSpotConditionsConfig.BeamSpotCondAlgCfg
def BeamSpotCondAlgCfg(flags, name="BeamSpotCondAlg", **kwargs)
Definition: BeamSpotConditionsConfig.py:7
ActsAnalysisConfig.ActsStripSpacePointAnalysisAlgCfg
ComponentAccumulator ActsStripSpacePointAnalysisAlgCfg(flags, str name="ActsStripSpacePointAnalysisAlg", str extension="Acts", **kwargs)
Definition: ActsAnalysisConfig.py:305
ITkStripGeoModelConfig.ITkStripReadoutGeometryCfg
def ITkStripReadoutGeometryCfg(flags)
Definition: ITkStripGeoModelConfig.py:43
ActsSpacePointFormationConfig.ActsCoreStripSpacePointToolCfg
ComponentAccumulator ActsCoreStripSpacePointToolCfg(flags, str name="ActsCoreStripSpacePointTool", **dict kwargs)
Definition: ActsSpacePointFormationConfig.py:38
ITkPixelGeoModelConfig.ITkPixelReadoutGeometryCfg
def ITkPixelReadoutGeometryCfg(flags)
Definition: ITkPixelGeoModelConfig.py:39
ActsAnalysisConfig.ActsPixelSpacePointAnalysisAlgCfg
ComponentAccumulator ActsPixelSpacePointAnalysisAlgCfg(flags, str name="ActsPixelSpacePointAnalysisAlg", str extension="Acts", **kwargs)
Definition: ActsAnalysisConfig.py:282
RegSelToolConfig.regSelTool_ITkPixel_Cfg
def regSelTool_ITkPixel_Cfg(flags)
Definition: RegSelToolConfig.py:120
ActsSpacePointFormationConfig.ActsStripOverlapSpacePointPreparationAlgCfg
ComponentAccumulator ActsStripOverlapSpacePointPreparationAlgCfg(flags, str name='ActsStripOverlapSpacePointPreparationAlg', *bool useCache=False, **dict kwargs)
Definition: ActsSpacePointFormationConfig.py:109
ActsSpacePointFormationConfig.ActsSpacePointFormationCfg
ComponentAccumulator ActsSpacePointFormationCfg(flags, *previousActsExtension=None)
Definition: ActsSpacePointFormationConfig.py:244
ActsSpacePointFormationConfig.ActsPixelSpacePointPreparationAlgCfg
ComponentAccumulator ActsPixelSpacePointPreparationAlgCfg(flags, str name="ActsPixelSpacePointPreparationAlg", *bool useCache=False, **dict kwargs)
Definition: ActsSpacePointFormationConfig.py:59
ActsSpacePointFormationConfig.ActsStripSpacePointFormationAlgCfg
ComponentAccumulator ActsStripSpacePointFormationAlgCfg(flags, str name="ActsStripSpacePointFormationAlg", *bool useCache=False, **dict kwargs)
Definition: ActsSpacePointFormationConfig.py:149
ActsSpacePointFormationConfig.ActsStripSpacePointToolCfg
ComponentAccumulator ActsStripSpacePointToolCfg(flags, str name="ActsStripSpacePointTool", **dict kwargs)
Definition: ActsSpacePointFormationConfig.py:24
RegSelToolConfig.regSelTool_ITkStrip_Cfg
def regSelTool_ITkStrip_Cfg(flags)
Definition: RegSelToolConfig.py:126
ActsMonitoringConfig.ActsDataPreparationMonitoringToolCfg
ComponentAccumulator ActsDataPreparationMonitoringToolCfg(flags, str name="ActsDataPreparationMonitoringTool", **kwargs)
Definition: ActsMonitoringConfig.py:49
ActsAnalysisConfig.ActsStripOverlapSpacePointAnalysisAlgCfg
ComponentAccumulator ActsStripOverlapSpacePointAnalysisAlgCfg(flags, str name="ActsStripOverlapSpacePointAnalysisAlg", str extension="Acts", **kwargs)
Definition: ActsAnalysisConfig.py:327
ActsSpacePointFormationConfig.ActsSpacePointCacheCreatorAlgCfg
ComponentAccumulator ActsSpacePointCacheCreatorAlgCfg(flags, str name="ActsSpacePointCacheCreatorAlg", **dict kwargs)
Definition: ActsSpacePointFormationConfig.py:7
ActsSpacePointFormationConfig.ActsPixelSpacePointToolCfg
ComponentAccumulator ActsPixelSpacePointToolCfg(flags, str name="ActsPixelSpacePointTool", **dict kwargs)
Definition: ActsSpacePointFormationConfig.py:17
ActsGeometryConfig.ActsTrackingGeometryToolCfg
ComponentAccumulator ActsTrackingGeometryToolCfg(flags, str name="ActsTrackingGeometryTool")
Definition: ActsGeometryConfig.py:116
TCS::join
std::string join(const std::vector< std::string > &v, const char c=',')
Definition: Trigger/TrigT1/L1Topo/L1TopoCommon/Root/StringUtils.cxx:10
ActsSpacePointFormationConfig.ActsPixelSpacePointFormationAlgCfg
ComponentAccumulator ActsPixelSpacePointFormationAlgCfg(flags, str name="ActsPixelSpacePointFormationAlg", *bool useCache=False, **dict kwargs)
Definition: ActsSpacePointFormationConfig.py:117
ActsGeometryConfig.ActsDetectorElementToActsGeometryIdMappingAlgCfg
ComponentAccumulator ActsDetectorElementToActsGeometryIdMappingAlgCfg(flags, str name="ActsDetectorElementToActsGeometryIdMappingAlg", **kwargs)
Definition: ActsGeometryConfig.py:273
ActsSpacePointFormationConfig.ActsStripSpacePointPreparationAlgCfg
ComponentAccumulator ActsStripSpacePointPreparationAlgCfg(flags, str name="ActsStripSpacePointPreparationAlg", *bool useCache=False, **dict kwargs)
Definition: ActsSpacePointFormationConfig.py:84
python.OutputStreamConfig.addToAOD
def addToAOD(flags, itemOrList, **kwargs)
Definition: OutputStreamConfig.py:149
ActsMonitoringConfig.ActsStripSpacePointFormationMonitoringToolCfg
ComponentAccumulator ActsStripSpacePointFormationMonitoringToolCfg(flags, str name="ActsStripSpacePointFormationMonitoringTool", **kwargs)
Definition: ActsMonitoringConfig.py:96
python.SiSpacePointFormationConfig.ITkSiElementPropertiesTableCondAlgCfg
def ITkSiElementPropertiesTableCondAlgCfg(flags, name="ITkSiElementPropertiesTableCondAlg", **kwargs)
Definition: SiSpacePointFormationConfig.py:28
ActsSpacePointFormationConfig.ActsMainSpacePointFormationCfg
ComponentAccumulator ActsMainSpacePointFormationCfg(flags, *str RoIs="ActsRegionOfInterest", **dict kwargs)
Definition: ActsSpacePointFormationConfig.py:193
ActsMonitoringConfig.ActsPixelSpacePointFormationMonitoringToolCfg
ComponentAccumulator ActsPixelSpacePointFormationMonitoringToolCfg(flags, str name="ActsPixelSpacePointFormatioMonitoringTool", **kwargs)
Definition: ActsMonitoringConfig.py:79