Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
ActsSeedingConfig.py
Go to the documentation of this file.
1 # Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
2 
3 from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
4 from AthenaConfiguration.ComponentFactory import CompFactory
5 from ActsConfig.ActsConfigFlags import SeedingStrategy
6 from ActsConfig.ActsUtilities import extractChildKwargs
7 from ActsInterop import UnitConstants
8 from AthenaCommon.Utils.unixtools import find_datafile
9 
10 def ActsGbts2SeedingTrigToolCfg(flags,name: str = "Gbts2ActsSeedingTool", **kwargs) -> ComponentAccumulator:
11  acc = ComponentAccumulator()
12 
13  if "layerNumberTool" not in kwargs:
14  from TrigFastTrackFinder.TrigFastTrackFinderConfig import ITkTrigL2LayerNumberToolCfg
15  ntargs = {"UseNewLayerScheme" : True}
16  kwargs.setdefault("layerNumberTool",acc.popToolsAndMerge(ITkTrigL2LayerNumberToolCfg(flags,**ntargs)))
17 
18  kwargs.setdefault("DoPhiFiltering", False) #no phi-filtering for full-scan tracking
19  kwargs.setdefault("UseBeamTilt", False)
20 
21  isLRT=flags.Tracking.ActiveConfig.extension == "LargeD0"
22 
23  kwargs.setdefault("pTmin", flags.Tracking.ActiveConfig.minPT[0])
24  kwargs.setdefault("MaxGraphEdges", 1500000)
25  kwargs.setdefault("ConnectionFileName", "binTables_ITK_RUN4_LRT.txt" if isLRT else "binTables_ITK_RUN4.txt")
26 
27  acc.setPrivateTools(CompFactory.Gbts2ActsSeedingTool(name, **kwargs))
28 
29  return acc
30 
31 
32 # ACTS tools
34  name: str = "ActsPixelSeedingTool",
35  **kwargs) -> ComponentAccumulator:
36  acc = ComponentAccumulator()
37 
38 
39  kwargs.setdefault("numSeedIncrement" , float("inf"))
40  kwargs.setdefault("deltaZMax" , float("inf"))
41  kwargs.setdefault("maxPtScattering", float("inf"))
42  kwargs.setdefault("useVariableMiddleSPRange", False)
43  kwargs.setdefault("rMax", 320. * UnitConstants.mm)
44  kwargs.setdefault("rBinEdges", [0, kwargs['rMax']])
45  kwargs.setdefault("rRangeMiddleSP", [
46  [0,0],
47  [140, 260],
48  [40, 260],
49  [40, 260],
50  [40, 260],
51  [40, 260],
52  [70, 260],
53  [40, 260],
54  [40, 260],
55  [40, 260],
56  [40, 260],
57  [140, 260],
58  [0, 0]])
59  acc.setPrivateTools(CompFactory.ActsTrk.SeedingTool(name, **kwargs))
60  return acc
61 
63  name: str = "ActsFastPixelSeedingTool",
64  **kwargs) -> ComponentAccumulator:
65 
66  kwargs.setdefault("minPt", 1000 * UnitConstants.MeV)
67  kwargs.setdefault("collisionRegionMin", -150 * UnitConstants.mm)
68  kwargs.setdefault("collisionRegionMax", 150 * UnitConstants.mm)
69  kwargs.setdefault("maxPhiBins", 200)
70  kwargs.setdefault("gridRMax", 250 * UnitConstants.mm)
71  kwargs.setdefault("deltaRMax", 200 * UnitConstants.mm)
72  kwargs.setdefault("zBinsCustomLooping" , [3, 11, 4, 10, 7, 5, 9, 6, 8])
73  kwargs.setdefault("rRangeMiddleSP", [
74  [40.0, 80.0],
75  [40.0, 80.0],
76  [40.0, 200.0],
77  [70.0, 200.0],
78  [70.0, 200.0],
79  [70.0, 250.0],
80  [70.0, 250.0],
81  [70.0, 250.0],
82  [70.0, 200.0],
83  [70.0, 200.0],
84  [40.0, 200.0],
85  [40.0, 80.0],
86  [40.0, 80.0]])
87  kwargs.setdefault("useVariableMiddleSPRange", False)
88  kwargs.setdefault("useExperimentCuts", True)
89  kwargs.setdefault("rMax", 320 * UnitConstants.mm)
90  kwargs.setdefault("rBinEdges", [0, kwargs['rMax']])
91 
92  return ActsPixelSeedingToolCfg(flags, name, **kwargs)
93 
95  name: str = "ActsStripSeedingTool",
96  **kwargs) -> ComponentAccumulator:
97  acc = ComponentAccumulator()
98 
99 
100  kwargs.setdefault("doSeedQualitySelection", False)
101  # For SpacePointGridConfig
102  kwargs.setdefault("gridRMax" , 1000. * UnitConstants.mm)
103  kwargs.setdefault("deltaRMax" , 600. * UnitConstants.mm)
104  kwargs.setdefault("impactMax" , 20. * UnitConstants.mm)
105  # For SeedfinderConfig
106  kwargs.setdefault("rMax" , 1200. * UnitConstants.mm)
107  kwargs.setdefault("deltaRMinTopSP" , 20. * UnitConstants.mm)
108  kwargs.setdefault("deltaRMaxTopSP" , 300. * UnitConstants.mm)
109  kwargs.setdefault("deltaRMinBottomSP" , 20. * UnitConstants.mm)
110  kwargs.setdefault("deltaRMaxBottomSP" , 300. * UnitConstants.mm)
111  kwargs.setdefault("deltaZMax" , 900. * UnitConstants.mm)
112  kwargs.setdefault("interactionPointCut" , False)
113  kwargs.setdefault("zBinsCustomLooping" , [7, 8, 6, 9, 5, 10, 4, 11, 3, 12, 2])
114  kwargs.setdefault("deltaRMiddleMinSPRange" , 30 * UnitConstants.mm)
115  kwargs.setdefault("deltaRMiddleMaxSPRange" , 150 * UnitConstants.mm)
116  kwargs.setdefault("useDetailedDoubleMeasurementInfo" , True)
117  kwargs.setdefault("maxPtScattering", float("inf"))
118  # For SeedFilterConfig
119  kwargs.setdefault("useDeltaRorTopRadius" , False)
120  kwargs.setdefault("seedConfirmationInFilter" , False)
121  kwargs.setdefault("impactWeightFactor" , 1.)
122  kwargs.setdefault("compatSeedLimit" , 4)
123  kwargs.setdefault("numSeedIncrement" , 1.)
124  kwargs.setdefault("seedWeightIncrement" , 10100.)
125  kwargs.setdefault("maxSeedsPerSpMConf" , 100)
126  kwargs.setdefault("maxQualitySeedsPerSpMConf" , 100)
127  # For seeding algorithm
128  kwargs.setdefault("zBinNeighborsBottom" , [(0,0),(0,1),(0,1),(0,1),(0,2),(0,1),(0,0),(-1,0),(-2,0),(-1,0),(-1,0),(-1,0),(0,0)])
129  # Any other
130  kwargs.setdefault("rBinEdges", [0, kwargs['rMax']])
131 
132  acc.setPrivateTools(CompFactory.ActsTrk.SeedingTool(name, **kwargs))
133  return acc
134 
136  name: str = "ActsPixelOrthogonalSeedingTool",
137  **kwargs) -> ComponentAccumulator:
138  acc = ComponentAccumulator()
139 
140  acc.setPrivateTools(CompFactory.ActsTrk.OrthogonalSeedingTool(name, **kwargs))
141  return acc
142 
144  name: str = "ActsFastPixelOrthogonalSeedingTool",
145  **kwargs) -> ComponentAccumulator:
146  acc = ComponentAccumulator()
147 
148 
149 
150  kwargs.setdefault("minPt", 1000 * UnitConstants.MeV)
151  kwargs.setdefault("collisionRegionMin", -150 * UnitConstants.mm)
152  kwargs.setdefault("collisionRegionMax", 150 * UnitConstants.mm)
153  kwargs.setdefault("useExperimentCuts", True)
154 
155  acc.setPrivateTools(CompFactory.ActsTrk.OrthogonalSeedingTool(name, **kwargs))
156  return acc
157 
159  name: str = "ActsStripOrthogonalSeedingTool",
160  **kwargs) -> ComponentAccumulator:
161  acc = ComponentAccumulator()
162 
163 
164  kwargs.setdefault("impactMax" , 20. * UnitConstants.mm)
165  kwargs.setdefault('rMax', 1200. * UnitConstants.mm)
166  kwargs.setdefault("deltaRMinTopSP" , 20. * UnitConstants.mm)
167  kwargs.setdefault("deltaRMaxTopSP" , 300. * UnitConstants.mm)
168  kwargs.setdefault("deltaRMinBottomSP" , 20. * UnitConstants.mm)
169  kwargs.setdefault("deltaRMaxBottomSP" , 300. * UnitConstants.mm)
170  kwargs.setdefault("deltaZMax" , 900. * UnitConstants.mm)
171  kwargs.setdefault("interactionPointCut" , False)
172  kwargs.setdefault("impactWeightFactor" , 1.)
173  kwargs.setdefault("compatSeedLimit" , 4)
174  kwargs.setdefault("seedWeightIncrement" , 10100.)
175  kwargs.setdefault("numSeedIncrement" , 1.)
176  kwargs.setdefault("seedConfirmationInFilter" , False)
177  kwargs.setdefault("maxSeedsPerSpMConf" , 100)
178  kwargs.setdefault("maxQualitySeedsPerSpMConf" , 100)
179  kwargs.setdefault("useDeltaRorTopRadius" , False)
180  kwargs.setdefault("rMinMiddle", 33. * UnitConstants.mm)
181  kwargs.setdefault("rMaxMiddle", 1200. * UnitConstants.mm)
182 
183  acc.setPrivateTools(CompFactory.ActsTrk.OrthogonalSeedingTool(name, **kwargs))
184  return acc
185 
187  name: str = "ActsPixelGbtsSeedingTool",
188  **kwargs) -> ComponentAccumulator:
189  acc = ComponentAccumulator()
190 
191  kwargs.setdefault("ConnectorInputFile" , find_datafile("ActsPatternRecognition/GBTS_EdgeProbabilites_ITKPixels.txt"))
192 
193  kwargs.setdefault('PixelDetectorElements', 'ITkPixelDetectorElementCollection')
194 
195  acc.setPrivateTools(CompFactory.ActsTrk.GbtsSeedingTool(name = name, **kwargs))
196  return acc
197 
199  name: str = 'ActsSiSpacePointsSeedMakerTool',
200  **kwargs) -> ComponentAccumulator:
201  assert isinstance(name, str)
202 
203  acc = ComponentAccumulator()
204 
205  if flags.Tracking.ActiveConfig.extension == "ActsValidateConversionSeeds":
206  kwargs.setdefault('useOverlapSpCollection', False)
207 
208  # Main properties
209  kwargs.setdefault('usePixel',
210  flags.Tracking.ActiveConfig.useITkPixel and
211  flags.Tracking.ActiveConfig.useITkPixelSeeding)
212  kwargs.setdefault('useStrip',
213  flags.Tracking.ActiveConfig.useITkStrip and
214  flags.Tracking.ActiveConfig.useITkStripSeeding)
215  kwargs.setdefault('useOverlapSpCollection',
216  flags.Tracking.ActiveConfig.useITkStrip and
217  flags.Tracking.ActiveConfig.useITkStripSeeding)
218  kwargs.setdefault('ActsSpacePointsPixelName' , "ITkPixelSpacePoints")
219  kwargs.setdefault('ActsSpacePointsStripName' , "ITkStripSpacePoints")
220  kwargs.setdefault('ActsSpacePointsOverlapName' , "ITkStripOverlapSpacePoints")
221 
222 
223  # The code will need to use Trk::SpacePoint object for downstream Athena tracking
224  # If we run this tool we have two options to retrieve this:
225  # (1) Have the Athena->Acts Space Point Converter scheduled beforehand
226  # (2) Have the Athena->Acts Cluster Converter scheduled beforehand
227  # In case (1) the link xAOD -> Trk Space Point will be used to retrieve the Trk::SpacePoints
228  # In case (2) the link xAOD -> InDet Cluster will be used to create the Trk::SpacePoints
229  # If none of the above conditions are met, it means there is a misconfiguration of the algorithms
230  useClusters = flags.Tracking.ActiveConfig.doAthenaToActsCluster and not flags.Tracking.ActiveConfig.doAthenaToActsSpacePoint
231  kwargs.setdefault('useClustersForSeedConversion', useClusters)
232 
233  if flags.Tracking.ActiveConfig.usePrdAssociationTool:
234  # not all classes have that property !!!
235  kwargs.setdefault('PRDtoTrackMap', (
236  'ITkPRDtoTrackMap' + flags.Tracking.ActiveConfig.extension))
237 
238  # Acts Seed Tools
239  # Do not overwrite if already present in `kwargs`
240  seedTool_pixel = None
241  if 'SeedToolPixel' not in kwargs:
242  if flags.Acts.SeedingStrategy is SeedingStrategy.Orthogonal:
243  if flags.Tracking.doITkFastTracking:
244  seedTool_pixel = acc.popToolsAndMerge(ActsFastPixelOrthogonalSeedingToolCfg(flags))
245  else:
246  seedTool_pixel = acc.popToolsAndMerge(ActsPixelOrthogonalSeedingToolCfg(flags))
247  elif flags.Acts.SeedingStrategy is SeedingStrategy.Gbts:
248  kwargs.setdefault("GbtsSeeding",True)
249  seedTool_pixel = acc.popToolsAndMerge(ActsPixelGbtsSeedingToolCfg(flags))
250  elif flags.Acts.SeedingStrategy is SeedingStrategy.Gbts2:
251  seedTool_pixel = acc.popToolsAndMerge(ActsGbts2SeedingTrigToolCfg(flags))
252  else:
253  if flags.Tracking.doITkFastTracking:
254  kwargs.setdefault("useFastTracking", True)
255  seedTool_pixel = acc.popToolsAndMerge(ActsFastPixelSeedingToolCfg(flags))
256  else:
257  seedTool_pixel = acc.popToolsAndMerge(ActsPixelSeedingToolCfg(flags))
258 
259  seedTool_strip = None
260  if 'SeedToolStrip' not in kwargs:
261  if flags.Acts.SeedingStrategy is SeedingStrategy.Orthogonal:
262  seedTool_strip = acc.popToolsAndMerge(ActsStripOrthogonalSeedingToolCfg(flags))
263  else:
264  seedTool_strip = acc.popToolsAndMerge(ActsStripSeedingToolCfg(flags,
265  rMax=flags.Tracking.ActiveConfig.radMax))
266 
267  kwargs.setdefault('SeedToolPixel', seedTool_pixel)
268  kwargs.setdefault('SeedToolStrip', seedTool_strip)
269 
270  # Validation
271  if flags.Tracking.writeSeedValNtuple:
272  kwargs.setdefault('WriteNtuple', True)
273  HistService = CompFactory.THistSvc(Output = ["valNtuples DATAFILE='SeedMakerValidation.root' OPT='RECREATE'"])
274  acc.addService(HistService)
275 
276  acc.setPrivateTools(CompFactory.ActsTrk.SiSpacePointsSeedMaker(name, **kwargs))
277  return acc
278 
279 
280 # ACTS algorithm using Athena objects upstream
282  name: str = 'ActsPixelSeedingAlg',
283  **kwargs) -> ComponentAccumulator:
284  acc = ComponentAccumulator()
285 
286  # Beam Spot Cond is a requirement
287  from BeamSpotConditions.BeamSpotConditionsConfig import BeamSpotCondAlgCfg
288  acc.merge(BeamSpotCondAlgCfg(flags))
289 
290  from MagFieldServices.MagFieldServicesConfig import AtlasFieldCacheCondAlgCfg
291  acc.merge(AtlasFieldCacheCondAlgCfg(flags))
292 
293  from PixelGeoModelXml.ITkPixelGeoModelConfig import ITkPixelReadoutGeometryCfg
294  acc.merge(ITkPixelReadoutGeometryCfg(flags))
295 
296  useFastTracking = kwargs.get("useFastTracking", flags.Tracking.doITkFastTracking)
297 
298  if "SeedTool" not in kwargs:
299  if flags.Acts.SeedingStrategy is SeedingStrategy.Orthogonal:
300  if useFastTracking:
301  kwargs.setdefault('SeedTool', acc.popToolsAndMerge(ActsFastPixelOrthogonalSeedingToolCfg(flags)))
302  else:
303  kwargs.setdefault('SeedTool', acc.popToolsAndMerge(ActsPixelOrthogonalSeedingToolCfg(flags)))
304  elif flags.Acts.SeedingStrategy is SeedingStrategy.Gbts:
305  kwargs.setdefault('SeedTool', acc.popToolsAndMerge(ActsPixelGbtsSeedingToolCfg(flags)))
306  elif flags.Acts.SeedingStrategy is SeedingStrategy.Gbts2:
307  kwargs.setdefault('SeedTool', acc.popToolsAndMerge(ActsGbts2SeedingTrigToolCfg(flags)))
308  else:
309  if useFastTracking:
310  kwargs.setdefault('SeedTool', acc.popToolsAndMerge(ActsFastPixelSeedingToolCfg(flags)))
311  else:
312  kwargs.setdefault('SeedTool', acc.popToolsAndMerge(ActsPixelSeedingToolCfg(flags)))
313 
314  kwargs.setdefault("useFastTracking", useFastTracking)
315  kwargs.setdefault('InputSpacePoints', ['ITkPixelSpacePoints_Cached'] if flags.Acts.useCache else ['ITkPixelSpacePoints'])
316  kwargs.setdefault('OutputSeeds', 'ActsPixelSeeds')
317  kwargs.setdefault('UsePixel', True)
318 
319  if flags.Acts.doMonitoring and 'MonTool' not in kwargs:
320  from ActsConfig.ActsMonitoringConfig import ActsITkPixelSeedingMonitoringToolCfg
321  kwargs.setdefault('MonTool', acc.popToolsAndMerge(ActsITkPixelSeedingMonitoringToolCfg(flags)))
322 
323  acc.addEventAlgo(CompFactory.ActsTrk.SeedingAlg(name, **kwargs))
324  return acc
325 
326 
328  name: str = 'ActsStripSeedingAlg',
329  **kwargs) -> ComponentAccumulator:
330  acc = ComponentAccumulator()
331 
332  # Beam Spot Cond is a requirement
333  from BeamSpotConditions.BeamSpotConditionsConfig import BeamSpotCondAlgCfg
334  acc.merge(BeamSpotCondAlgCfg(flags))
335 
336  from MagFieldServices.MagFieldServicesConfig import AtlasFieldCacheCondAlgCfg
337  acc.merge(AtlasFieldCacheCondAlgCfg(flags))
338 
339  from StripGeoModelXml.ITkStripGeoModelConfig import ITkStripReadoutGeometryCfg
340  acc.merge(ITkStripReadoutGeometryCfg(flags))
341 
342  if "SeedTool" not in kwargs:
343  if flags.Acts.SeedingStrategy is SeedingStrategy.Orthogonal:
344  kwargs.setdefault('SeedTool', acc.popToolsAndMerge(ActsStripOrthogonalSeedingToolCfg(flags)))
345  else:
346  kwargs.setdefault('SeedTool', acc.popToolsAndMerge(ActsStripSeedingToolCfg(flags)))
347 
348  kwargs.setdefault('InputSpacePoints', ['ITkStripSpacePoints_Cached', 'ITkStripOverlapSpacePoints_Cached'] if flags.Acts.useCache else ['ITkStripSpacePoints', 'ITkStripOverlapSpacePoints'])
349  kwargs.setdefault('OutputSeeds', 'ActsStripSeeds')
350  kwargs.setdefault('UsePixel', False)
351 
352  if flags.Acts.doMonitoring and 'MonTool' not in kwargs:
353  from ActsConfig.ActsMonitoringConfig import ActsITkStripSeedingMonitoringToolCfg
354  kwargs.setdefault('MonTool', acc.popToolsAndMerge(ActsITkStripSeedingMonitoringToolCfg(flags)))
355 
356  acc.addEventAlgo(CompFactory.ActsTrk.SeedingAlg(name, **kwargs))
357  return acc
358 
359 
361  **kwargs) -> ComponentAccumulator:
362  acc = ComponentAccumulator()
363 
364  kwargs.setdefault('processPixels', flags.Detector.EnableITkPixel)
365  kwargs.setdefault('processStrips', flags.Detector.EnableITkStrip)
366  kwargs.setdefault('estimateParameters', flags.Acts.Seeds.doAnalysis)
367 
368  if kwargs['processPixels']:
369  acc.merge(ActsPixelSeedingAlgCfg(flags, **extractChildKwargs(prefix='PixelSeedingAlg.', **kwargs)))
370  if kwargs['processStrips']:
371  acc.merge(ActsStripSeedingAlgCfg(flags, **extractChildKwargs(prefix='StripSeedingAlg.', **kwargs)))
372 
373 
374  if kwargs['estimateParameters']:
375  if kwargs['processPixels']:
376  from ActsConfig.ActsAnalysisConfig import ActsPixelSeedsToTrackParamsAlgCfg
377  acc.merge(ActsPixelSeedsToTrackParamsAlgCfg(flags,
378  **extractChildKwargs(prefix='PixelSeedsToTrackParamsAlg.', **kwargs)))
379 
380  if kwargs['processStrips']:
381  from ActsConfig.ActsAnalysisConfig import ActsStripSeedsToTrackParamsAlgCfg
382  acc.merge(ActsStripSeedsToTrackParamsAlgCfg(flags,
383  **extractChildKwargs(prefix='StripSeedsToTrackParamsAlg.', **kwargs)))
384 
385  if flags.Acts.Seeds.doAnalysis:
386  if kwargs['processPixels']:
387  from ActsConfig.ActsAnalysisConfig import ActsPixelSeedAnalysisAlgCfg, ActsPixelEstimatedTrackParamsAnalysisAlgCfg
388  acc.merge(ActsPixelSeedAnalysisAlgCfg(flags, **extractChildKwargs(prefix='PixelSeedAnalysisAlg.', **kwargs)))
389  acc.merge(ActsPixelEstimatedTrackParamsAnalysisAlgCfg(flags, **extractChildKwargs(prefix='PixelEstimatedTrackParamsAnalysisAlg.', **kwargs)))
390 
391  if kwargs['processStrips']:
392  from ActsConfig.ActsAnalysisConfig import ActsStripSeedAnalysisAlgCfg, ActsStripEstimatedTrackParamsAnalysisAlgCfg
393  acc.merge(ActsStripSeedAnalysisAlgCfg(flags, **extractChildKwargs(prefix='StripSeedAnalysisAlg.', **kwargs)))
394  acc.merge(ActsStripEstimatedTrackParamsAnalysisAlgCfg(flags, **extractChildKwargs(prefix='StripEstimatedTrackParamsAnalysisAlg.', **kwargs)))
395 
396  return acc
397 
398 def ActsSeedingCfg(flags,**kwargs) -> ComponentAccumulator:
399  acc = ComponentAccumulator()
400  processPixels = flags.Detector.EnableITkPixel
401  processStrips = flags.Detector.EnableITkStrip
402 
403  # For conversion pass we do not process pixels
404  if flags.Tracking.ActiveConfig.extension in ["ActsConversion", "ActsLargeRadius"]:
405  processPixels = False
406  # For main pass disable strips if fast tracking configuration
407  elif flags.Tracking.doITkFastTracking:
408  processStrips = False
409 
410  kwargs.setdefault('processPixels', processPixels)
411  kwargs.setdefault('processStrips', processStrips)
412  kwargs.setdefault('estimateParameters', flags.Tracking.ActiveConfig.storeTrackSeeds or flags.Acts.Seeds.doAnalysis)
413 
414  # TO-DO: refactor this seeding tool configuration
415  if flags.Tracking.ActiveConfig.extension == "ActsHeavyIon" and processPixels:
416  kwargs.setdefault('PixelSeedingAlg.SeedTool', acc.popToolsAndMerge(ActsPixelSeedingToolCfg(flags,
417  name=f'{flags.Tracking.ActiveConfig.extension}PixelSeedingTool',
418  minPt=flags.Tracking.ActiveConfig.minPTSeed)))
419  if processStrips and flags.Acts.SeedingStrategy is SeedingStrategy.Default:
420  kwargs.setdefault('StripSeedingAlg.SeedTool', acc.popToolsAndMerge(ActsStripSeedingToolCfg(flags,
421  name=f'{flags.Tracking.ActiveConfig.extension}StripSeedingTool',
422  rMax=flags.Tracking.ActiveConfig.radMax)))
423 
424  if processPixels:
425  # Seeding algo
426  kwargs.setdefault('PixelSeedingAlg.name', f'{flags.Tracking.ActiveConfig.extension}PixelSeedingAlg')
427  kwargs.setdefault('PixelSeedingAlg.useFastTracking', flags.Tracking.doITkFastTracking)
428  kwargs.setdefault('PixelSeedingAlg.OutputSeeds', f'{flags.Tracking.ActiveConfig.extension}PixelSeeds')
429 
430  pixelSpacePoints = ['ITkPixelSpacePoints_Cached'] if flags.Acts.useCache else ['ITkPixelSpacePoints']
431  if flags.Tracking.ActiveConfig.isSecondaryPass:
432  pixelSpacePoints = [f'ITk{flags.Tracking.ActiveConfig.extension.replace("Acts", "")}PixelSpacePoints_Cached'] if flags.Acts.useCache else [f'ITk{flags.Tracking.ActiveConfig.extension.replace("Acts", "")}PixelSpacePoints']
433  kwargs.setdefault('PixelSeedingAlg.InputSpacePoints', pixelSpacePoints)
434 
435  # Setup the seed to track parameters algorithms either if we persistify them or we want to run the ActsMonitoring
436  if flags.Tracking.ActiveConfig.storeTrackSeeds or flags.Acts.Seeds.doAnalysis:
437  kwargs.setdefault('PixelSeedsToTrackParamsAlg.name', f'{flags.Tracking.ActiveConfig.extension}PixelSeedsToTrackParamsAlg')
438  kwargs.setdefault('PixelSeedsToTrackParamsAlg.extension', flags.Tracking.ActiveConfig.extension)
439  kwargs.setdefault('PixelSeedsToTrackParamsAlg.InputSeedContainerKey', kwargs['PixelSeedingAlg.OutputSeeds'])
440  kwargs.setdefault('PixelSeedsToTrackParamsAlg.OutputTrackParamsCollectionKey', f'{flags.Tracking.ActiveConfig.extension}PixelEstimatedTrackParams')
441 
442  # Analysis algo(s)
443  if flags.Acts.Seeds.doAnalysis:
444  kwargs.setdefault('PixelSeedAnalysisAlg.name', f'{flags.Tracking.ActiveConfig.extension}PixelSeedAnalysisAlg')
445  kwargs.setdefault('PixelSeedAnalysisAlg.extension', flags.Tracking.ActiveConfig.extension)
446  kwargs.setdefault('PixelSeedAnalysisAlg.InputSeedCollection', kwargs['PixelSeedingAlg.OutputSeeds'])
447 
448  kwargs.setdefault('PixelEstimatedTrackParamsAnalysisAlg.name', f'{flags.Tracking.ActiveConfig.extension}PixelEstimatedTrackParamsAnalysisAlg')
449  kwargs.setdefault('PixelEstimatedTrackParamsAnalysisAlg.extension', flags.Tracking.ActiveConfig.extension)
450  kwargs.setdefault('PixelEstimatedTrackParamsAnalysisAlg.InputTrackParamsCollection', kwargs['PixelSeedsToTrackParamsAlg.OutputTrackParamsCollectionKey'])
451 
452  if processStrips:
453  # Seeding algo
454  kwargs.setdefault('StripSeedingAlg.name', f'{flags.Tracking.ActiveConfig.extension}StripSeedingAlg')
455  kwargs.setdefault('StripSeedingAlg.OutputSeeds', f'{flags.Tracking.ActiveConfig.extension}StripSeeds')
456  # Conversion pass does not use overlap space points
457  # Space Point naming is not yet fully connected to tracking passes - this will change
458  if flags.Tracking.ActiveConfig.extension == 'ActsConversion':
459  kwargs.setdefault('StripSeedingAlg.InputSpacePoints', ['ITkConversionStripSpacePoints_Cached'] if flags.Acts.useCache else ['ITkConversionStripSpacePoints'])
460  elif flags.Tracking.ActiveConfig.extension == 'ActsLargeRadius':
461  kwargs.setdefault('StripSeedingAlg.InputSpacePoints', ['ITkLargeRadiusStripSpacePoints_Cached',
462  'ITkLargeRadiusStripOverlapSpacePoints_Cached'] if flags.Acts.useCache else ['ITkLargeRadiusStripSpacePoints',
463  'ITkLargeRadiusStripOverlapSpacePoints'])
464  elif flags.Tracking.ActiveConfig.extension == 'ActsLowPt':
465  kwargs.setdefault('StripSeedingAlg.InputSpacePoints', ['ITkLowPtStripSpacePoints_Cached',
466  'ITkLowPtStripOverlapSpacePoints_Cached'] if flags.Acts.useCache else ['ITkLowPtStripSpacePoints',
467  'ITkLowPtStripOverlapSpacePoints'])
468  else:
469  kwargs.setdefault('StripSeedingAlg.InputSpacePoints', ['ITkStripSpacePoints_Cached',
470  'ITkStripOverlapSpacePoints_Cached'] if flags.Acts.useCache else ['ITkStripSpacePoints',
471  'ITkStripOverlapSpacePoints'])
472 
473  if flags.Tracking.ActiveConfig.storeTrackSeeds or flags.Acts.Seeds.doAnalysis:
474  kwargs.setdefault('StripSeedsToTrackParamsAlg.name', f'{flags.Tracking.ActiveConfig.extension}StripSeedsToTrackParamsAlg')
475  kwargs.setdefault('StripSeedsToTrackParamsAlg.extension', flags.Tracking.ActiveConfig.extension)
476  kwargs.setdefault('StripSeedsToTrackParamsAlg.InputSeedContainerKey', kwargs['StripSeedingAlg.OutputSeeds'])
477  kwargs.setdefault('StripSeedsToTrackParamsAlg.OutputTrackParamsCollectionKey', f'{flags.Tracking.ActiveConfig.extension}StripEstimatedTrackParams')
478 
479 
480  # Analysis algo(s)
481  if flags.Acts.Seeds.doAnalysis:
482  kwargs.setdefault('StripSeedAnalysisAlg.name', f'{flags.Tracking.ActiveConfig.extension}StripSeedAnalysisAlg')
483  kwargs.setdefault('StripSeedAnalysisAlg.extension', flags.Tracking.ActiveConfig.extension)
484  kwargs.setdefault('StripSeedAnalysisAlg.InputSeedCollection', kwargs['StripSeedingAlg.OutputSeeds'])
485 
486  kwargs.setdefault('StripEstimatedTrackParamsAnalysisAlg.name', f'{flags.Tracking.ActiveConfig.extension}StripEstimatedTrackParamsAnalysisAlg')
487  kwargs.setdefault('StripEstimatedTrackParamsAnalysisAlg.extension', flags.Tracking.ActiveConfig.extension)
488  kwargs.setdefault('StripEstimatedTrackParamsAnalysisAlg.InputTrackParamsCollection', kwargs['StripSeedsToTrackParamsAlg.OutputTrackParamsCollectionKey'])
489 
490  acc.merge(ActsMainSeedingCfg(flags, **kwargs))
491 
492 
493  if flags.Tracking.ActiveConfig.storeTrackSeeds:
494  acc.merge(ActsStoreTrackSeedsCfg(flags,
495  processPixels = processPixels,
496  processStrips = processStrips))
497 
498  return acc
499 
501  *,
502  processPixels: bool,
503  processStrips: bool,
504  **kwargs: dict) -> ComponentAccumulator:
505 
506 
507  acc = ComponentAccumulator()
508 
509  seedKeyPixels = f'{flags.Tracking.ActiveConfig.extension}PixelSeeds'
510  seedKeyStrips = f'{flags.Tracking.ActiveConfig.extension}StripSeeds'
511  paramsKeyPixels = f'{flags.Tracking.ActiveConfig.extension}PixelEstimatedTrackParams'
512  paramsKeyStrips = f'{flags.Tracking.ActiveConfig.extension}StripEstimatedTrackParams'
513  trackKeyPixels = f'SiSPTracksSeedSegments{flags.Tracking.ActiveConfig.extension}PixelTracks'
514  trackKeyStrips = f'SiSPTracksSeedSegments{flags.Tracking.ActiveConfig.extension}StripTracks'
515  particleKeyPixels = f'SiSPSeedSegments{flags.Tracking.ActiveConfig.extension}PixelTrackParticles'
516  particleKeyStrips = f'SiSPSeedSegments{flags.Tracking.ActiveConfig.extension}StripTrackParticles'
517 
518  trackKey = f'SiSPTracksSeedSegments{flags.Tracking.ActiveConfig.extension}Tracks'
519  particleKey = f'SiSPSeedSegments{flags.Tracking.ActiveConfig.extension}TrackParticles'
520 
521  from ActsConfig.ActsGeometryConfig import ActsDetectorElementToActsGeometryIdMappingAlgCfg
523 
524  if processPixels:
525  # Create track parameters from pixel seeds
526  from ActsConfig.ActsAnalysisConfig import ActsPixelSeedsToTrackParamsAlgCfg
527  acc.merge(ActsPixelSeedsToTrackParamsAlgCfg(flags,
528  name = f'{flags.Tracking.ActiveConfig.extension}PixelSeedsToTrackParamsAlg',
529  extension = flags.Tracking.ActiveConfig.extension,
530  InputSeedContainerKey = seedKeyPixels,
531  OutputTrackParamsCollectionKey = paramsKeyPixels))
532 
533 
534  # Convert pixel seed to Acts track
535  acc.merge(ActsSeedToTrackCnvAlgCfg(flags,
536  name=f"{flags.Tracking.ActiveConfig.extension}PixelSeedToTrackCnvAlg",
537  EstimatedTrackParametersKey = [paramsKeyPixels],
538  SeedContainerKey = [seedKeyPixels],
539  ACTSTracksLocation = trackKeyPixels))
540 
541  # Truth
542  if flags.Tracking.doTruth:
543  from ActsConfig.ActsTruthConfig import ActsTrackToTruthAssociationAlgCfg, ActsTrackFindingValidationAlgCfg
544  acc.merge(ActsTrackToTruthAssociationAlgCfg(flags,
545  name = f"{trackKeyPixels}TrackToTruthAssociationAlg",
546  ACTSTracksLocation = trackKeyPixels,
547  AssociationMapOut = f"{trackKeyPixels}ToTruthParticleAssociation"))
548 
549  acc.merge(ActsTrackFindingValidationAlgCfg(flags,
550  name = f"{trackKeyPixels}TrackFindingValidationAlg",
551  TrackToTruthAssociationMap = f"{trackKeyPixels}ToTruthParticleAssociation"))
552 
553  # Track Particle creation and persistification
554  # - input track collection: trackKeyPixels
555  # - output track particle collection: particleKeyPixels
556  from InDetConfig.ITkActsParticleCreationConfig import ITkActsTrackParticleCreationCfg
557  acc.merge(ITkActsTrackParticleCreationCfg(flags,
558  TrackContainers = [trackKeyPixels],
559  TrackParticleContainer = particleKeyPixels))
560 
561 
562  if processStrips:
563  # Create track parameters from strip seeds
564  from ActsConfig.ActsAnalysisConfig import ActsStripSeedsToTrackParamsAlgCfg
565  acc.merge(ActsStripSeedsToTrackParamsAlgCfg(flags,
566  name = f'{flags.Tracking.ActiveConfig.extension}StripSeedsToTrackParamsAlg',
567  extension = flags.Tracking.ActiveConfig.extension,
568  InputSeedContainerKey = seedKeyStrips,
569  OutputTrackParamsCollectionKey = paramsKeyStrips))
570 
571  # Convert strip seed to Acts track
572  acc.merge(ActsSeedToTrackCnvAlgCfg(flags,
573  name=f"{flags.Tracking.ActiveConfig.extension}StripSeedToTrackCnvAlg",
574  EstimatedTrackParametersKey = [paramsKeyStrips],
575  SeedContainerKey = [seedKeyStrips],
576  ACTSTracksLocation = trackKeyStrips))
577 
578  # Truth
579  if flags.Tracking.doTruth:
580  from ActsConfig.ActsTruthConfig import ActsTrackToTruthAssociationAlgCfg, ActsTrackFindingValidationAlgCfg
581  acc.merge(ActsTrackToTruthAssociationAlgCfg(flags,
582  name=f"{trackKeyStrips}TrackToTruthAssociationAlg",
583  ACTSTracksLocation = trackKeyStrips,
584  AssociationMapOut = f"{trackKeyStrips}ToTruthParticleAssociation"))
585 
586  acc.merge(ActsTrackFindingValidationAlgCfg(flags,
587  name = f"{trackKeyStrips}TrackFindingValidationAlg",
588  TrackToTruthAssociationMap = f"{trackKeyStrips}ToTruthParticleAssociation"))
589 
590  # Track Particle creation and persistification
591  # - input track collection: trackKeyStrips
592  # - output track particle collection: particleKeyStrips
593  from InDetConfig.ITkActsParticleCreationConfig import ITkActsTrackParticleCreationCfg
594  acc.merge(ITkActsTrackParticleCreationCfg(flags,
595  TrackContainers = [trackKeyStrips],
596  TrackParticleContainer = particleKeyStrips))
597 
598  # If both pixel and strips are processed, also make track particles from the sum
599  # This will provide the complete seed efficiency for ACTS
600  if processPixels and processStrips:
601  # Parameter estimation has already been performed
602  # Convert seeds to Acts tracks
603  acc.merge(ActsSeedToTrackCnvAlgCfg(flags,
604  name=f"{flags.Tracking.ActiveConfig.extension}SeedToTrackCnvAlg",
605  EstimatedTrackParametersKey = [paramsKeyPixels, paramsKeyStrips],
606  SeedContainerKey = [seedKeyPixels, seedKeyStrips],
607  ACTSTracksLocation = trackKey))
608 
609  # Truth
610  if flags.Tracking.doTruth:
611  from ActsConfig.ActsTruthConfig import ActsTrackToTruthAssociationAlgCfg, ActsTrackFindingValidationAlgCfg
612  acc.merge(ActsTrackToTruthAssociationAlgCfg(flags,
613  name=f"{trackKey}TrackToTruthAssociationAlg",
614  ACTSTracksLocation = trackKey,
615  AssociationMapOut = f"{trackKey}ToTruthParticleAssociation"))
616 
617  acc.merge(ActsTrackFindingValidationAlgCfg(flags,
618  name = f"{trackKey}TrackFindingValidationAlg",
619  TrackToTruthAssociationMap = f"{trackKey}ToTruthParticleAssociation"))
620 
621  # Track Particle creation and persistification
622  # - input track collection: trackKey
623  # - output track particle collection: particleKey
624  from InDetConfig.ITkActsParticleCreationConfig import ITkActsTrackParticleCreationCfg
625  acc.merge(ITkActsTrackParticleCreationCfg(flags,
626  TrackContainers = [trackKey],
627  TrackParticleContainer = particleKey))
628 
629  return acc
630 
631 
633  name: str = "ActsSeedToTrackCnvAlg",
634  **kwargs: dict) -> ComponentAccumulator:
635  acc = ComponentAccumulator()
636  kwargs.setdefault('DetectorElementToActsGeometryIdMapKey', 'DetectorElementToActsGeometryIdMap')
637 
638  kwargs.setdefault('SeedContainerKey', [])
639  kwargs.setdefault('EstimatedTrackParametersKey', [])
640  kwargs.setdefault('ACTSTracksLocation', f'SiSPTracksSeedSegments{flags.Tracking.ActiveConfig.extension}Tracks')
641 
642  if 'TrackingGeometryTool' not in kwargs:
643  from ActsConfig.ActsGeometryConfig import ActsTrackingGeometryToolCfg
644  kwargs.setdefault('TrackingGeometryTool', acc.popToolsAndMerge(ActsTrackingGeometryToolCfg(flags)))
645 
646  acc.addEventAlgo(CompFactory.ActsTrk.SeedToTrackCnvAlg(name, **kwargs))
647  return acc
648 
ActsSeedingConfig.ActsPixelOrthogonalSeedingToolCfg
ComponentAccumulator ActsPixelOrthogonalSeedingToolCfg(flags, str name="ActsPixelOrthogonalSeedingTool", **kwargs)
Definition: ActsSeedingConfig.py:135
ActsSeedingConfig.ActsPixelGbtsSeedingToolCfg
ComponentAccumulator ActsPixelGbtsSeedingToolCfg(flags, str name="ActsPixelGbtsSeedingTool", **kwargs)
Definition: ActsSeedingConfig.py:186
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
ActsUtilities.extractChildKwargs
dict extractChildKwargs(*str prefix, **dict kwargs)
Definition: ActsUtilities.py:3
ActsSeedingConfig.ActsPixelSeedingAlgCfg
ComponentAccumulator ActsPixelSeedingAlgCfg(flags, str name='ActsPixelSeedingAlg', **kwargs)
Definition: ActsSeedingConfig.py:281
python.BeamSpotConditionsConfig.BeamSpotCondAlgCfg
def BeamSpotCondAlgCfg(flags, name="BeamSpotCondAlg", **kwargs)
Definition: BeamSpotConditionsConfig.py:7
ActsSeedingConfig.ActsStoreTrackSeedsCfg
ComponentAccumulator ActsStoreTrackSeedsCfg(flags, *bool processPixels, bool processStrips, **dict kwargs)
Definition: ActsSeedingConfig.py:500
ActsAnalysisConfig.ActsPixelEstimatedTrackParamsAnalysisAlgCfg
ComponentAccumulator ActsPixelEstimatedTrackParamsAnalysisAlgCfg(flags, str name='ActsPixelEstimatedTrackParamsAnalysisAlg', str extension="Acts", **kwargs)
Definition: ActsAnalysisConfig.py:600
ActsAnalysisConfig.ActsStripSeedAnalysisAlgCfg
ComponentAccumulator ActsStripSeedAnalysisAlgCfg(flags, str name="ActsStripSeedAnalysisAlg", str extension="Acts", **kwargs)
Definition: ActsAnalysisConfig.py:491
ITkStripGeoModelConfig.ITkStripReadoutGeometryCfg
def ITkStripReadoutGeometryCfg(flags)
Definition: ITkStripGeoModelConfig.py:43
ActsSeedingConfig.ActsPixelSeedingToolCfg
ComponentAccumulator ActsPixelSeedingToolCfg(flags, str name="ActsPixelSeedingTool", **kwargs)
Definition: ActsSeedingConfig.py:33
ActsTruthConfig.ActsTrackToTruthAssociationAlgCfg
ComponentAccumulator ActsTrackToTruthAssociationAlgCfg(flags, str name='ActsTracksToTruthAssociationAlg', **dict kwargs)
Definition: ActsTruthConfig.py:50
ITkPixelGeoModelConfig.ITkPixelReadoutGeometryCfg
def ITkPixelReadoutGeometryCfg(flags)
Definition: ITkPixelGeoModelConfig.py:39
ActsAnalysisConfig.ActsPixelSeedAnalysisAlgCfg
ComponentAccumulator ActsPixelSeedAnalysisAlgCfg(flags, str name="ActsPixelSeedAnalysisAlg", str extension="Acts", **kwargs)
Definition: ActsAnalysisConfig.py:473
python.ITkActsParticleCreationConfig.ITkActsTrackParticleCreationCfg
ComponentAccumulator ITkActsTrackParticleCreationCfg(flags, *list[str] TrackContainers, str TrackParticleContainer, bool persistifyCollection=True, str PerigeeExpression=None)
Definition: ITkActsParticleCreationConfig.py:4
TrigFastTrackFinderConfig.ITkTrigL2LayerNumberToolCfg
ComponentAccumulator ITkTrigL2LayerNumberToolCfg(AthConfigFlags flags, **kwargs)
Definition: TrigFastTrackFinderConfig.py:259
ActsMonitoringConfig.ActsITkPixelSeedingMonitoringToolCfg
ComponentAccumulator ActsITkPixelSeedingMonitoringToolCfg(flags, str name="ActsITkPixelSeedingMonitoringTool", **kwargs)
Definition: ActsMonitoringConfig.py:120
ActsSeedingConfig.ActsFastPixelOrthogonalSeedingToolCfg
ComponentAccumulator ActsFastPixelOrthogonalSeedingToolCfg(flags, str name="ActsFastPixelOrthogonalSeedingTool", **kwargs)
Definition: ActsSeedingConfig.py:143
ActsSeedingConfig.ActsStripSeedingAlgCfg
ComponentAccumulator ActsStripSeedingAlgCfg(flags, str name='ActsStripSeedingAlg', **kwargs)
Definition: ActsSeedingConfig.py:327
ActsTruthConfig.ActsTrackFindingValidationAlgCfg
ComponentAccumulator ActsTrackFindingValidationAlgCfg(flags, str name='ActsTracksValidationAlg', **dict kwargs)
Definition: ActsTruthConfig.py:141
ActsAnalysisConfig.ActsStripSeedsToTrackParamsAlgCfg
ComponentAccumulator ActsStripSeedsToTrackParamsAlgCfg(flags, str name='ActsStripSeedsToTrackParamsAlgCfg', str extension="Acts", **kwargs)
Definition: ActsAnalysisConfig.py:668
ActsGeometryConfig.ActsTrackingGeometryToolCfg
ComponentAccumulator ActsTrackingGeometryToolCfg(flags, str name="ActsTrackingGeometryTool")
Definition: ActsGeometryConfig.py:114
ActsAnalysisConfig.ActsStripEstimatedTrackParamsAnalysisAlgCfg
ComponentAccumulator ActsStripEstimatedTrackParamsAnalysisAlgCfg(flags, str name='ActsStripEstimatedTrackParamsAnalysisAlg', str extension="Acts", **kwargs)
Definition: ActsAnalysisConfig.py:613
ActsSeedingConfig.ActsSiSpacePointsSeedMakerToolCfg
ComponentAccumulator ActsSiSpacePointsSeedMakerToolCfg(flags, str name='ActsSiSpacePointsSeedMakerTool', **kwargs)
Definition: ActsSeedingConfig.py:198
ActsGeometryConfig.ActsDetectorElementToActsGeometryIdMappingAlgCfg
ComponentAccumulator ActsDetectorElementToActsGeometryIdMappingAlgCfg(flags, str name="ActsDetectorElementToActsGeometryIdMappingAlg", **kwargs)
Definition: ActsGeometryConfig.py:271
ActsSeedingConfig.ActsFastPixelSeedingToolCfg
ComponentAccumulator ActsFastPixelSeedingToolCfg(flags, str name="ActsFastPixelSeedingTool", **kwargs)
Definition: ActsSeedingConfig.py:62
ActsSeedingConfig.ActsSeedingCfg
ComponentAccumulator ActsSeedingCfg(flags, **kwargs)
Definition: ActsSeedingConfig.py:398
ActsSeedingConfig.ActsGbts2SeedingTrigToolCfg
ComponentAccumulator ActsGbts2SeedingTrigToolCfg(flags, str name="Gbts2ActsSeedingTool", **kwargs)
Definition: ActsSeedingConfig.py:10
ActsSeedingConfig.ActsSeedToTrackCnvAlgCfg
ComponentAccumulator ActsSeedToTrackCnvAlgCfg(flags, str name="ActsSeedToTrackCnvAlg", **dict kwargs)
Definition: ActsSeedingConfig.py:632
ActsMonitoringConfig.ActsITkStripSeedingMonitoringToolCfg
ComponentAccumulator ActsITkStripSeedingMonitoringToolCfg(flags, str name="ActsITkStripSeedingMonitoringTool", **kwargs)
Definition: ActsMonitoringConfig.py:141
python.MagFieldServicesConfig.AtlasFieldCacheCondAlgCfg
def AtlasFieldCacheCondAlgCfg(flags, **kwargs)
Definition: MagFieldServicesConfig.py:8
ActsAnalysisConfig.ActsPixelSeedsToTrackParamsAlgCfg
ComponentAccumulator ActsPixelSeedsToTrackParamsAlgCfg(flags, str name='ActsPixelSeedsToTrackParamsAlg', str extension="Acts", **kwargs)
Definition: ActsAnalysisConfig.py:656
python.Utils.unixtools.find_datafile
def find_datafile(fname, pathlist=None, access=os.R_OK)
pathresolver-like helper function --------------------------------------—
Definition: unixtools.py:67
ActsSeedingConfig.ActsMainSeedingCfg
ComponentAccumulator ActsMainSeedingCfg(flags, **kwargs)
Definition: ActsSeedingConfig.py:360
ActsSeedingConfig.ActsStripSeedingToolCfg
ComponentAccumulator ActsStripSeedingToolCfg(flags, str name="ActsStripSeedingTool", **kwargs)
Definition: ActsSeedingConfig.py:94
ActsSeedingConfig.ActsStripOrthogonalSeedingToolCfg
ComponentAccumulator ActsStripOrthogonalSeedingToolCfg(flags, str name="ActsStripOrthogonalSeedingTool", **kwargs)
Definition: ActsSeedingConfig.py:158
python.LArMinBiasAlgConfig.float
float
Definition: LArMinBiasAlgConfig.py:65