Skip to content
Snippets Groups Projects
Commit c1493112 authored by Luthien Mlynarski's avatar Luthien Mlynarski Committed by Frank Winklmeier
Browse files

Added Acts Heavy Ion functions

Added Acts Heavy Ion functions
parent be9a6299
No related branches found
No related tags found
No related merge requests found
...@@ -36,6 +36,12 @@ def CombinedTrackingPassFlagSets(flags): ...@@ -36,6 +36,12 @@ def CombinedTrackingPassFlagSets(flags):
flags_set += [flags.cloneAndReplace( flags_set += [flags.cloneAndReplace(
"Tracking.ActiveConfig", "Tracking.ActiveConfig",
"Tracking.ITkActsPass")] "Tracking.ITkActsPass")]
# Acts Heavy Ion Pass
if TrackingComponent.ActsHeavyIon in flags.Tracking.recoChain:
flags_set += [flags.cloneAndReplace(
"Tracking.ActiveConfig",
"Tracking.ITkActsHeavyIonPass")]
# GNN pass # GNN pass
if TrackingComponent.GNNChain in flags.Tracking.recoChain: if TrackingComponent.GNNChain in flags.Tracking.recoChain:
......
...@@ -10,7 +10,12 @@ def actsAloneWorkflowFlags(flags) -> None: ...@@ -10,7 +10,12 @@ def actsAloneWorkflowFlags(flags) -> None:
from TrkConfig.TrkConfigFlags import TrackingComponent from TrkConfig.TrkConfigFlags import TrackingComponent
flags.Tracking.recoChain = [TrackingComponent.ActsChain] flags.Tracking.recoChain = [TrackingComponent.ActsChain]
def actsHeavyIonFlags(flags) -> None:
flags.Tracking.recoChain = [TrackingComponent.ActsHeavyIon]
flags.Tracking.doTruth = False
flags.Reco.EnableHGTDExtension = False
flags.Acts.doAmbiguityResolution = False
def actsWorkflowFlags(flags) -> None: def actsWorkflowFlags(flags) -> None:
"""flags for Reco_tf with CA used in CI tests: add Acts workflow to reco sequence""" """flags for Reco_tf with CA used in CI tests: add Acts workflow to reco sequence"""
flags.DQ.useTrigger = False flags.DQ.useTrigger = False
......
# Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration # Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
from TrkConfig.TrackingPassFlags import createITkTrackingPassFlags, createITkConversionTrackingPassFlags from TrkConfig.TrackingPassFlags import createITkTrackingPassFlags, createITkConversionTrackingPassFlags, createITkHeavyIonTrackingPassFlags
def deactivateAthenaComponents(icf): def deactivateAthenaComponents(icf):
icf.doAthenaCluster = False icf.doAthenaCluster = False
...@@ -24,6 +24,29 @@ def createActsTrackingPassFlags(): ...@@ -24,6 +24,29 @@ def createActsTrackingPassFlags():
return icf return icf
def createActsHeavyIonTrackingPassFlags():
icf = createITkHeavyIonTrackingPassFlags()
icf.extension = "ActsHeavyIon"
deactivateAthenaComponents(icf)
icf.doAthenaCluster = True
icf.doAthenaToActsCluster = True
icf.doActsSpacePoint = True
icf.doActsSeed = True
icf.doActsTrack = True
# If we do not want acts ambi resolution, first do the track convertion
# and then the Athena ambi
icf.doActsToAthenaTrack = lambda pcf : not pcf.Acts.doAmbiguityResolution
icf.doAthenaAmbiguityResolution = lambda pcf : not pcf.Acts.doAmbiguityResolution
# If we want acts ambi, first do the ambi and then convert the tracks
# without Athena ambi
icf.doActsAmbiguityResolution = lambda pcf : pcf.Acts.doAmbiguityResolution
icf.doActsToAthenaResolvedTrack = lambda pcf : pcf.Acts.doAmbiguityResolution
# Deactivate CTIDE processor fit
icf.doAmbiguityProcessorTrackFit = False
return icf
def createActsConversionTrackingPassFlags(): def createActsConversionTrackingPassFlags():
icf = createITkConversionTrackingPassFlags() icf = createITkConversionTrackingPassFlags()
icf.extension = "ActsConversion" icf.extension = "ActsConversion"
......
...@@ -58,6 +58,35 @@ Tracking.ActiveConfig points to Tracking.ITkActsPass ...@@ -58,6 +58,35 @@ Tracking.ActiveConfig points to Tracking.ITkActsPass
Tracking.ITkActsPass points to nothing Tracking.ITkActsPass points to nothing
************************************************************************ ************************************************************************
************************************************************************
******************** Tracking reconstruction Config ********************
Active Config is ActsHeavyIon
Tracking.ActiveConfig.doAthenaAmbiguityResolution : True [function]
Tracking.ActiveConfig.doAthenaCluster : True
Tracking.ActiveConfig.doAthenaSeed : False
Tracking.ActiveConfig.doAthenaSpacePoint : False
Tracking.ActiveConfig.doAthenaToActsCluster : True
Tracking.ActiveConfig.doAthenaToActsSpacePoint : False
Tracking.ActiveConfig.doAthenaToActsTrack : False
Tracking.ActiveConfig.doAthenaTrack : False
Flag categories that are redirected by the cloneAndReplace
Tracking.ActiveConfig points to Tracking.ITkActsHeavyIonPass
Tracking.ITkActsHeavyIonPass points to nothing
Tracking.ActiveConfig.doActsAmbiguityResolution : False [function]
Tracking.ActiveConfig.doActsCluster : False
Tracking.ActiveConfig.doActsSeed : True
Tracking.ActiveConfig.doActsSpacePoint : True
Tracking.ActiveConfig.doActsToAthenaCluster : False
Tracking.ActiveConfig.doActsToAthenaResolvedTrack : False [function]
Tracking.ActiveConfig.doActsToAthenaSeed : False
Tracking.ActiveConfig.doActsToAthenaSpacePoint : False
Tracking.ActiveConfig.doActsToAthenaTrack : True [function]
Tracking.ActiveConfig.doActsTrack : True
Flag categories that are redirected by the cloneAndReplace
Tracking.ActiveConfig points to Tracking.ITkActsHeavyIonPass
Tracking.ITkActsHeavyIonPass points to nothing
************************************************************************
************************************************************************ ************************************************************************
******************** Tracking reconstruction Config ******************** ******************** Tracking reconstruction Config ********************
Active Config is ActsValidateClusters Active Config is ActsValidateClusters
......
...@@ -22,6 +22,7 @@ if __name__ == "__main__": ...@@ -22,6 +22,7 @@ if __name__ == "__main__":
from TrkConfig.TrkConfigFlags import TrackingComponent from TrkConfig.TrkConfigFlags import TrackingComponent
configurations = ["Main", configurations = ["Main",
"Acts", "Acts",
"ActsHeavyIon",
"ActsValidateClusters", "ActsValidateClusters",
"ActsValidateSpacePoints", "ActsValidateSpacePoints",
"ActsValidateSeeds", "ActsValidateSeeds",
......
...@@ -44,6 +44,7 @@ class PixelClusterSplittingType(FlagEnum): ...@@ -44,6 +44,7 @@ class PixelClusterSplittingType(FlagEnum):
class TrackingComponent(FlagEnum): class TrackingComponent(FlagEnum):
AthenaChain = "AthenaChain" # full Athena Chain (default) AthenaChain = "AthenaChain" # full Athena Chain (default)
ActsChain = "ActsChain" # full Acts Chain ActsChain = "ActsChain" # full Acts Chain
ActsHeavyIon = "ActsHeavyIon"
# Validation options # Validation options
ActsValidateClusters = "ActsValidateClusters" ActsValidateClusters = "ActsValidateClusters"
ActsValidateSpacePoints = "ActsValidateSpacePoints" ActsValidateSpacePoints = "ActsValidateSpacePoints"
...@@ -515,7 +516,8 @@ def createTrackingConfigFlags(): ...@@ -515,7 +516,8 @@ def createTrackingConfigFlags():
createActsValidateSeedsTrackingPassFlags, createActsValidateSeedsTrackingPassFlags,
createActsValidateTracksTrackingPassFlags, createActsValidateTracksTrackingPassFlags,
createActsValidateAmbiguityResolutionTrackingPassFlags, createActsValidateAmbiguityResolutionTrackingPassFlags,
createActsBenchmarkSpotTrackingPassFlags createActsBenchmarkSpotTrackingPassFlags,
createActsHeavyIonTrackingPassFlags
) )
icf.addFlagsCategory ("Tracking.ITkActsPass", icf.addFlagsCategory ("Tracking.ITkActsPass",
...@@ -534,6 +536,8 @@ def createTrackingConfigFlags(): ...@@ -534,6 +536,8 @@ def createTrackingConfigFlags():
createActsValidateAmbiguityResolutionTrackingPassFlags, prefix=True) createActsValidateAmbiguityResolutionTrackingPassFlags, prefix=True)
icf.addFlagsCategory ("Tracking.ITkActsBenchmarkSpotPass", icf.addFlagsCategory ("Tracking.ITkActsBenchmarkSpotPass",
createActsBenchmarkSpotTrackingPassFlags, prefix=True) createActsBenchmarkSpotTrackingPassFlags, prefix=True)
icf.addFlagsCategory ("Tracking.ITkActsHeavyIonPass",
createActsHeavyIonTrackingPassFlags, prefix=True)
# GNN # GNN
from InDetGNNTracking.InDetGNNTrackingFlags import createGNNTrackingPassFlags from InDetGNNTracking.InDetGNNTrackingFlags import createGNNTrackingPassFlags
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment