ATLAS Offline Software
Functions | Variables
python.TrackRecoConfig Namespace Reference

Functions

def CombinedTrackingPassFlagSets (flags)
 
def ClusterSplitProbabilityContainerName (flags)
 
def InDetCosmicsTrackRecoPreProcessingCfg (flags)
 
def InDetPreProcessingCfg (flags)
 
def SiDetectorElementStatusCfg (flags, suffix="")
 
def SiSubDetTrackRecoCfg (flags, detector="", extensions_list=None, ClusterSplitProbContainer="")
 
def TRTTrackRecoCfg (flags, extensions_list=None)
 
def TRTStandalonePassRecoCfg (flags, InputCombinedInDetTracks=None, InputExtendedInDetTracks=None, StatTrackCollections=None, StatTrackTruthCollections=None)
 
def StoreTrackSeparateContainerCfg (flags, TrackContainer="", ClusterSplitProbContainer="")
 
def BackTrackingRecoCfg (flags, InputCombinedInDetTracks=None, InputExtendedInDetTracks=None, StatTrackCollections=None, StatTrackTruthCollections=None, ClusterSplitProbContainer="")
 
def TrackRecoPassCfg (flags, extension="", doTrackingSiPattern=True, InputCombinedInDetTracks=None, InputExtendedInDetTracks=None, StatTrackCollections=None, StatTrackTruthCollections=None, ClusterSplitProbContainer="")
 
def TrackFinalCfg (flags, InputCombinedInDetTracks=None, StatTrackCollections=None, StatTrackTruthCollections=None)
 
def PseudoTrackFinalCfg (flags)
 
def ObserverTrackFinalCfg (flags)
 
def TrackSeedsFinalCfg (flags)
 
def SiSPSeededTracksFinalCfg (flags)
 
def InDetStatsCfg (flags, StatTrackCollections=None, StatTrackTruthCollections=None)
 
def ExtendedPRDInfoCfg (flags)
 
def InDetTrackRecoCfg (flags)
 Main ID tracking config #####################. More...
 
def TrackRecoConfigTest (flags=None)
 

Variables

list _flags_set = []
 
list _extensions_list = []
 

Function Documentation

◆ BackTrackingRecoCfg()

def python.TrackRecoConfig.BackTrackingRecoCfg (   flags,
  InputCombinedInDetTracks = None,
  InputExtendedInDetTracks = None,
  StatTrackCollections = None,
  StatTrackTruthCollections = None,
  ClusterSplitProbContainer = "" 
)

Definition at line 379 of file TrackRecoConfig.py.

379 def BackTrackingRecoCfg(flags,
380  InputCombinedInDetTracks=None,
381  InputExtendedInDetTracks=None,
382  StatTrackCollections=None,
383  StatTrackTruthCollections=None,
384  ClusterSplitProbContainer=""):
385  result = ComponentAccumulator()
386 
387  if InputCombinedInDetTracks is None:
388  InputCombinedInDetTracks = []
389  if InputExtendedInDetTracks is None:
390  InputExtendedInDetTracks = []
391  if StatTrackCollections is None:
392  StatTrackCollections = []
393  if StatTrackTruthCollections is None:
394  StatTrackTruthCollections = []
395 
396  from InDetConfig.BackTrackingConfig import BackTrackingCfg
397  result.merge(BackTrackingCfg(
398  flags,
399  InputCollections=InputCombinedInDetTracks,
400  ClusterSplitProbContainer=ClusterSplitProbContainer))
401 
402  ClusterSplitProbContainer = (
403  "InDetTRT_SeededAmbiguityProcessorSplitProb" +
404  flags.Tracking.ActiveConfig.extension)
405  TRTSeededTracks = "TRTSeededTracks"
406  ResolvedTRTSeededTracks = "ResolvedTRTSeededTracks"
407  InputCombinedInDetTracks += [ResolvedTRTSeededTracks]
408  InputExtendedInDetTracks += [ResolvedTRTSeededTracks]
409  StatTrackCollections += [TRTSeededTracks,
410  ResolvedTRTSeededTracks]
411  StatTrackTruthCollections += [TRTSeededTracks+"TruthCollection",
412  ResolvedTRTSeededTracks+"TruthCollection"]
413 
414  return result, ClusterSplitProbContainer
415 
416 
417 # Returns CA + ClusterSplitProbContainer

◆ ClusterSplitProbabilityContainerName()

def python.TrackRecoConfig.ClusterSplitProbabilityContainerName (   flags)

Definition at line 86 of file TrackRecoConfig.py.

87  if flags.Detector.GeometryITk:
88  from InDetConfig.ITkTrackRecoConfig import (
89  ITkClusterSplitProbabilityContainerName)
91 
92  flags_set = CombinedTrackingPassFlagSets(flags)
93  extension = flags_set[-1].Tracking.ActiveConfig.extension
94 
95  # No ambi processing for TRT standalone, so pick the previous pass
96  if extension == "TRTStandalone":
97  extension = flags_set[-2].Tracking.ActiveConfig.extension
98 
99  ClusterSplitProbContainer = "InDetAmbiguityProcessorSplitProb" + extension
100 
101  # Only primary pass + back-tracking
102  if len(flags_set) == 1 and flags.Tracking.doBackTracking:
103  ClusterSplitProbContainer = (
104  "InDetTRT_SeededAmbiguityProcessorSplitProb" + extension)
105  return ClusterSplitProbContainer
106 
107 # TODO find config to validate this
108 
109 

◆ CombinedTrackingPassFlagSets()

def python.TrackRecoConfig.CombinedTrackingPassFlagSets (   flags)

Definition at line 10 of file TrackRecoConfig.py.

11 
12  global _flags_set
13  if _flags_set:
14  return _flags_set
15 
16  flags_set = []
17 
18  # Primary Pass
19  flags = flags.cloneAndReplace(
20  "Tracking.ActiveConfig",
21  f"Tracking.{flags.Tracking.PrimaryPassConfig.value}Pass",
22  # Keep original flags as some of the subsequent passes use
23  # lambda functions relying on them
24  keepOriginal=True)
25  flags_set += [flags]
26 
27  # LRT pass
28  if flags.Tracking.doLargeD0 or flags.Tracking.doLowPtLargeD0:
29 
30  if flags.Tracking.doLowPtLargeD0:
31  flagsLRT = flags.cloneAndReplace("Tracking.ActiveConfig",
32  "Tracking.LowPtLargeD0Pass")
33  elif flags.Tracking.doLargeD0:
34  flagsLRT = flags.cloneAndReplace("Tracking.ActiveConfig",
35  "Tracking.R3LargeD0Pass")
36 
37  flags_set += [flagsLRT]
38 
39  # LowPtRoI pass (low-pt tracks in high pile-up enviroment)
40  if flags.Tracking.doLowPtRoI:
41  flagsLowPtRoI = flags.cloneAndReplace("Tracking.ActiveConfig",
42  "Tracking.LowPtRoIPass")
43  flags_set += [flagsLowPtRoI]
44 
45  # LowPt pass
46  if flags.Tracking.doLowPt:
47  flagsLowPt = flags.cloneAndReplace("Tracking.ActiveConfig",
48  "Tracking.LowPtPass")
49  flags_set += [flagsLowPt]
50 
51  # VeryLowPt pass
52  if flags.Tracking.doVeryLowPt:
53  flagsVeryLowPt = flags.cloneAndReplace("Tracking.ActiveConfig",
54  "Tracking.VeryLowPtPass")
55  flags_set += [flagsVeryLowPt]
56 
57  # TRT standalone pass
58  if flags.Tracking.doTRTStandalone:
59  flagsTRTStandalone = flags.cloneAndReplace("Tracking.ActiveConfig",
60  "Tracking.TRTStandalonePass")
61  flags_set += [flagsTRTStandalone]
62 
63  # Forward tracklets
64  if flags.Tracking.doForwardTracks:
65  flagsForward = flags.cloneAndReplace("Tracking.ActiveConfig",
66  "Tracking.ForwardPass")
67  flags_set += [flagsForward]
68 
69  # Disappearing pixel tracklets
70  if flags.Tracking.doTrackSegmentsDisappearing:
71  flagsDisappearing = flags.cloneAndReplace("Tracking.ActiveConfig",
72  "Tracking.DisappearingPass")
73  flags_set += [flagsDisappearing]
74 
75  # Beam gas
76  if flags.Tracking.doBeamGas:
77  flagsBeamGas = flags.cloneAndReplace("Tracking.ActiveConfig",
78  "Tracking.BeamGasPass")
79  flags_set += [flagsBeamGas]
80 
81  _flags_set = flags_set # Put into cache
82 
83  return flags_set
84 
85 

◆ ExtendedPRDInfoCfg()

def python.TrackRecoConfig.ExtendedPRDInfoCfg (   flags)

Definition at line 715 of file TrackRecoConfig.py.

715 def ExtendedPRDInfoCfg(flags):
716  result = ComponentAccumulator()
717 
718  if (flags.Tracking.doTIDE_AmbiTrackMonitoring or
719  flags.Tracking.doPseudoTracking):
720  from InDetConfig.InDetPrepRawDataToxAODConfig import (
721  InDetPixelPrepDataToxAOD_ExtraTruthCfg as PixelPrepDataToxAODCfg,
722  InDetSCT_PrepDataToxAOD_ExtraTruthCfg as SCT_PrepDataToxAODCfg,
723  InDetTRT_PrepDataToxAOD_ExtraTruthCfg as TRT_PrepDataToxAODCfg)
724  else:
725  from InDetConfig.InDetPrepRawDataToxAODConfig import (
726  InDetPixelPrepDataToxAODCfg as PixelPrepDataToxAODCfg,
727  InDetSCT_PrepDataToxAODCfg as SCT_PrepDataToxAODCfg,
728  InDetTRT_PrepDataToxAODCfg as TRT_PrepDataToxAODCfg)
729 
730  if flags.Tracking.writeExtendedSi_PRDInfo:
731  result.merge(PixelPrepDataToxAODCfg(
732  flags,
733  ClusterSplitProbabilityName=(
735  result.merge(SCT_PrepDataToxAODCfg(flags))
736 
737  if flags.Tracking.writeExtendedTRT_PRDInfo:
738  result.merge(TRT_PrepDataToxAODCfg(flags))
739 
740  from DerivationFrameworkInDet.InDetToolsConfig import TSOS_CommonKernelCfg
741  # Set up one algorithm for each output tracking container
742  # Always done for default pass
743  # Done for other passes if pass requests to store track seeds OR track candidates OR requests separate container
744  # Input handling/configuration of algorithm for specific cases is done in TSOS_CommonKernelCfg
745  listOfExtensionsRequesting = [
746  e for e in _extensions_list if (e == '')
747  or (flags.Tracking[f"{e}Pass"].storeTrackSeeds) # Store Si track seeds
748  or (flags.Tracking[f"{e}Pass"].storeSiSPSeededTracks) # Store Si candidate tracks
749  or (flags.Tracking[f"{e}Pass"].storeSeparateContainer) ] # Particular tracking pass requesting separate container from main pass
750  result.merge(TSOS_CommonKernelCfg(
751  flags, listOfExtensions = listOfExtensionsRequesting))
752 
753  if flags.Tracking.doTIDE_AmbiTrackMonitoring:
754  from DerivationFrameworkInDet.InDetToolsConfig import (
755  ObserverTSOS_CommonKernelCfg)
756  result.merge(ObserverTSOS_CommonKernelCfg(flags))
757 
758  if flags.Tracking.doPseudoTracking:
759  from DerivationFrameworkInDet.InDetToolsConfig import (
760  PseudoTSOS_CommonKernelCfg)
761  result.merge(PseudoTSOS_CommonKernelCfg(flags))
762 
763  if flags.Tracking.doStoreTrackSeeds:
764  from DerivationFrameworkInDet.InDetToolsConfig import (
765  SiSPSeedsTSOS_CommonKernelCfg)
766  # Setup one algorithm for each output tracking container
767  listOfExtensionsRequesting = [
768  e for e in _extensions_list if (e == '') or
769  flags.Tracking[f"{e}Pass"].storeTrackSeeds ]
770  result.merge(SiSPSeedsTSOS_CommonKernelCfg(
771  flags, listOfExtensions = listOfExtensionsRequesting))
772 
773  if flags.Tracking.doStoreSiSPSeededTracks:
774  from DerivationFrameworkInDet.InDetToolsConfig import (
775  SiSPTSOS_CommonKernelCfg)
776  # Setup one algorithm for each output tracking container
777  listOfExtensionsRequesting = [
778  e for e in _extensions_list if (e == '') or
779  flags.Tracking[f"{e}Pass"].storeSiSPSeededTracks ]
780  result.merge(SiSPTSOS_CommonKernelCfg(
781  flags, listOfExtensions = listOfExtensionsRequesting))
782 
783  if flags.Input.isMC:
784  #check if we want to add it for other passes
785  listOfExtensionsRequesting = [
786  e for e in _extensions_list if (e == '') or
787  (flags.Tracking[f"{e}Pass"].storeSiSPSeededTracks and
788  flags.Tracking[f"{e}Pass"].storeSeparateContainer) ]
789  from InDetPhysValMonitoring.InDetPhysValDecorationConfig import (
790  InDetPhysHitDecoratorAlgCfg)
791  for extension in listOfExtensionsRequesting:
792  result.merge(InDetPhysHitDecoratorAlgCfg(
793  flags,
794  name=f"InDetPhysHit{extension}DecoratorAlg",
795  TrackParticleContainerName=f"InDet{extension}TrackParticles"))
796 
797  return result
798 
799 

◆ InDetCosmicsTrackRecoPreProcessingCfg()

def python.TrackRecoConfig.InDetCosmicsTrackRecoPreProcessingCfg (   flags)

Definition at line 110 of file TrackRecoConfig.py.

111  result = ComponentAccumulator()
112 
113  from InDetConfig.TrackingSiPatternConfig import TrackingSiPatternCfg
114  result.merge(TrackingSiPatternCfg(
115  flags,
116  InputCollections=[],
117  ResolvedTrackCollectionKey="ResolvedTracks",
118  SiSPSeededTrackCollectionKey="SiSPSeededTracks"))
119 
120  if flags.Detector.EnableTRT:
121  from InDetConfig.TRTExtensionConfig import NewTrackingTRTExtensionPhaseCfg
122  result.merge(NewTrackingTRTExtensionPhaseCfg(
123  flags,
124  SiTrackCollection="ResolvedTracks",
125  ExtendedTrackCollection="ExtendedTracksPhase",
126  ExtendedTracksMap="ExtendedTracksMapPhase"))
127 
128  from InDetConfig.TRTSegmentFindingConfig import TRTSegmentFinding_Phase_Cfg
129  result.merge(TRTSegmentFinding_Phase_Cfg(flags))
130 
131  from InDetConfig.InDetTrackPRD_AssociationConfig import (
132  InDetTrackPRD_AssociationCfg)
133  result.merge(InDetTrackPRD_AssociationCfg(
134  flags, name='InDetTRTonly_TrackPRD_AssociationPhase',
135  AssociationMapName='InDetTRTonly_PRDtoTrackMapPhase',
136  TracksName=[]))
137 
138  from InDetConfig.TRT_SegmentsToTrackConfig import (
139  TRT_Cosmics_SegmentsToTrackCfg)
140  result.merge(TRT_Cosmics_SegmentsToTrackCfg(
141  flags, name='InDetTRT_Cosmics_SegmentsToTrack_Phase',
142  InputSegmentsCollection="TRTSegments_Phase",
143  OutputTrackCollection="TRT_Tracks_Phase"))
144 
145  from InDetConfig.InDetCosmicsEventPhaseConfig import (
146  InDetCosmicsEventPhaseCfg)
147  result.merge(InDetCosmicsEventPhaseCfg(
148  flags,
149  InputTracksNames=["TRT_Tracks_Phase"]))
150 
151  from InDetConfig.InDetPrepRawDataFormationConfig import (
152  InDetTRT_Phase_RIO_MakerCfg)
153  result.merge(InDetTRT_Phase_RIO_MakerCfg(flags))
154 
155  return result
156 
157 

◆ InDetPreProcessingCfg()

def python.TrackRecoConfig.InDetPreProcessingCfg (   flags)

Definition at line 158 of file TrackRecoConfig.py.

158 def InDetPreProcessingCfg(flags):
159  result = ComponentAccumulator()
160 
161  # Detector ByteStream pre-processing
162  if flags.Input.Format is Format.BS:
163  if flags.Detector.EnablePixel:
164  from PixelRawDataByteStreamCnv.PixelRawDataByteStreamCnvConfig import (
165  PixelRawDataProviderAlgCfg)
166  result.merge(PixelRawDataProviderAlgCfg(flags))
167 
168  if flags.Detector.EnableSCT:
169  from SCT_RawDataByteStreamCnv.SCT_RawDataByteStreamCnvConfig import (
170  SCTRawDataProviderCfg, SCTEventFlagWriterCfg)
171  result.merge(SCTRawDataProviderCfg(flags))
172  result.merge(SCTEventFlagWriterCfg(flags))
173 
174  if flags.Detector.EnableTRT:
175  from TRT_RawDataByteStreamCnv.TRT_RawDataByteStreamCnvConfig import (
176  TRTRawDataProviderCfg)
177  result.merge(TRTRawDataProviderCfg(flags))
178 
179  if flags.Detector.EnablePixel or flags.Detector.EnableSCT:
180  from InDetConfig.SiliconPreProcessing import InDetRecPreProcessingSiliconCfg
181  result.merge(InDetRecPreProcessingSiliconCfg(flags))
182  if flags.Detector.EnableTRT:
183  from InDetConfig.TRTPreProcessing import TRTPreProcessingCfg
184  result.merge(TRTPreProcessingCfg(flags))
185 
186  return result
187 

◆ InDetStatsCfg()

def python.TrackRecoConfig.InDetStatsCfg (   flags,
  StatTrackCollections = None,
  StatTrackTruthCollections = None 
)

Definition at line 693 of file TrackRecoConfig.py.

693 def InDetStatsCfg(flags, StatTrackCollections=None,
694  StatTrackTruthCollections=None):
695  result = ComponentAccumulator()
696 
697  from InDetConfig.InDetRecStatisticsConfig import (
698  InDetRecStatisticsAlgCfg)
699  result.merge(InDetRecStatisticsAlgCfg(
700  flags,
701  TrackCollectionKeys=StatTrackCollections,
702  TrackTruthCollectionKeys=(
703  StatTrackTruthCollections if flags.Tracking.doTruth else [])))
704 
705  if flags.Tracking.doTruth:
706  from InDetConfig.InDetTrackClusterAssValidationConfig import (
707  InDetTrackClusterAssValidationCfg)
709  flags,
710  TracksLocation=StatTrackCollections))
711 
712  return result
713 
714 

◆ InDetTrackRecoCfg()

def python.TrackRecoConfig.InDetTrackRecoCfg (   flags)

Main ID tracking config #####################.

Definition at line 804 of file TrackRecoConfig.py.

804 def InDetTrackRecoCfg(flags):
805 
806  # Bypass to ITk config
807  if flags.Detector.GeometryITk:
808  from InDetConfig.ITkTrackRecoConfig import ITkTrackRecoCfg
809  return ITkTrackRecoCfg(flags)
810 
811  """Configures complete ID tracking """
812  result = ComponentAccumulator()
813  result.merge(InDetPreProcessingCfg(flags))
814 
815  ClusterSplitProbContainer = ''
816 
817  # ------------------------------------------------------------
818  #
819  # ----------- Subdetector pattern from New Tracking
820  #
821  # ------------------------------------------------------------
822 
823  # Pixel track segment finding
824  if flags.Tracking.doTrackSegmentsPixel:
825  acc, ClusterSplitProbContainer = (
826  SiSubDetTrackRecoCfg(flags, detector="Pixel",
827  extensions_list=_extensions_list,
828  ClusterSplitProbContainer=ClusterSplitProbContainer))
829  result.merge(acc)
830 
831  # SCT track segment finding
832  if flags.Tracking.doTrackSegmentsSCT:
833  acc, ClusterSplitProbContainer = (
834  SiSubDetTrackRecoCfg(flags, detector="SCT",
835  extensions_list=_extensions_list,
836  ClusterSplitProbContainer=ClusterSplitProbContainer))
837  result.merge(acc)
838 
839  # TRT track segment finding
840  if flags.Tracking.doTrackSegmentsTRT:
841  result.merge(TRTTrackRecoCfg(flags, extensions_list=_extensions_list))
842 
843  flags_set = CombinedTrackingPassFlagSets(flags)
844 
845  # Pre-processing for TRT phase in cosmics
846  if flags.Beam.Type is BeamType.Cosmics:
847  flagsCosmics = flags_set[0]
848  result.merge(InDetCosmicsTrackRecoPreProcessingCfg(flagsCosmics))
849 
850  # ------------------------------------------------------------
851  #
852  # ----------- Main passes for standard reconstruction
853  #
854  # ------------------------------------------------------------
855 
856  # Tracks to be ultimately merged in InDetTrackParticle collection
857  InputCombinedInDetTracks = []
858  # Includes also tracks which end in standalone TrackParticle collections
859  InputExtendedInDetTracks = []
860  ClusterSplitProbContainer = ""
861  StatTrackCollections = [] # To be passed to the InDetRecStatistics alg
862  StatTrackTruthCollections = []
863  isPrimaryPass = True
864 
865  printPrimaryConfig(flags)
866 
867  for current_flags in flags_set:
868  printActiveConfig(current_flags)
869 
870  extension = (
871  "" if isPrimaryPass else
872  current_flags.Tracking.ActiveConfig.extension)
873  _extensions_list.append(extension)
874 
875  # ---------------------------------------
876  # ---- TRTStandalone pass
877  # ---------------------------------------
878 
879  if flags.Tracking.doTRTStandalone and extension == "TRTStandalone":
880  result.merge(TRTStandalonePassRecoCfg(
881  current_flags,
882  InputCombinedInDetTracks=InputCombinedInDetTracks,
883  InputExtendedInDetTracks=InputExtendedInDetTracks,
884  StatTrackCollections=StatTrackCollections,
885  StatTrackTruthCollections=StatTrackTruthCollections))
886 
887  continue # Skip rest of config for the TRTStandalone pass
888 
889  # ---------------------------------------
890  # ---- All the passes but TRTStandalone
891  # ---------------------------------------
892 
893  acc, ClusterSplitProbContainer = TrackRecoPassCfg(
894  current_flags, extension=extension,
895  doTrackingSiPattern=not(isPrimaryPass and
896  flags.Beam.Type is BeamType.Cosmics),
897  InputCombinedInDetTracks=InputCombinedInDetTracks,
898  InputExtendedInDetTracks=InputExtendedInDetTracks,
899  StatTrackCollections=StatTrackCollections,
900  StatTrackTruthCollections=StatTrackTruthCollections,
901  ClusterSplitProbContainer=ClusterSplitProbContainer)
902  result.merge(acc)
903 
904  # ---------------------------------------
905  # --- A few passes, only after primary pass
906  # ---------------------------------------
907 
908  if isPrimaryPass:
909 
910  # ---------------------------------------
911  # --- TRT Segments
912  # ---------------------------------------
913 
914  if flags.Tracking.doTRTSegments:
915  from InDetConfig.TRTSegmentFindingConfig import (
916  TRTSegmentFindingCfg)
917  result.merge(TRTSegmentFindingCfg(
918  current_flags,
919  InputCollections=InputCombinedInDetTracks))
920 
921  # ---------------------------------------
922  # --- BackTracking
923  # ---------------------------------------
924 
925  if flags.Tracking.doBackTracking:
926  acc, ClusterSplitProbContainer = BackTrackingRecoCfg(
927  current_flags,
928  InputCombinedInDetTracks=InputCombinedInDetTracks,
929  InputExtendedInDetTracks=InputExtendedInDetTracks,
930  StatTrackCollections=StatTrackCollections,
931  StatTrackTruthCollections=StatTrackTruthCollections,
932  ClusterSplitProbContainer=ClusterSplitProbContainer)
933  result.merge(acc)
934 
935  # ---------------------------------------
936  # --- PseudoTracking
937  # ---------------------------------------
938 
939  if (flags.Tracking.doTruth and
940  (flags.Tracking.doPseudoTracking or
941  flags.Tracking.doIdealPseudoTracking)):
942 
943  from TrkConfig.TrkTruthTrackAlgsConfig import TruthTrackingCfg
944  result.merge(TruthTrackingCfg(current_flags))
945 
946  isPrimaryPass = False
947 
948  # ----------------------------------------------------
949  # --- Loop over tracking passes is done, final configs
950  # ----------------------------------------------------
951 
952  result.merge(
953  TrackFinalCfg(flags,
954  InputCombinedInDetTracks=InputCombinedInDetTracks,
955  StatTrackCollections=StatTrackCollections,
956  StatTrackTruthCollections=StatTrackTruthCollections))
957 
958  if (flags.Tracking.doPseudoTracking or
959  flags.Tracking.doIdealPseudoTracking):
960  result.merge(PseudoTrackFinalCfg(flags))
961 
962  if flags.Tracking.doTIDE_AmbiTrackMonitoring:
963  result.merge(ObserverTrackFinalCfg(flags))
964 
965  if flags.Tracking.doStoreTrackSeeds:
966  result.merge(TrackSeedsFinalCfg(flags))
967 
968  if flags.Tracking.doStoreSiSPSeededTracks:
969  result.merge(SiSPSeededTracksFinalCfg(flags))
970 
971  # ---------------------------------------
972  # --- Primary vertexing
973  # ---------------------------------------
974 
975  if flags.Tracking.doVertexFinding:
976  from InDetConfig.InDetPriVxFinderConfig import primaryVertexFindingCfg
977  result.merge(primaryVertexFindingCfg(flags))
978 
979  if flags.Tracking.doStats:
980  result.merge(InDetStatsCfg(
981  flags_set[0], # Use cuts from primary pass
982  StatTrackCollections=StatTrackCollections,
983  StatTrackTruthCollections=StatTrackTruthCollections))
984 
985  # ---------------------------------------
986  # --- Extra optional decorations
987  # ---------------------------------------
988 
989  if flags.Tracking.doV0Finder:
990  from InDetConfig.InDetV0FinderConfig import InDetV0FinderCfg
991  result.merge(InDetV0FinderCfg(flags))
992 
993  if (flags.Tracking.writeExtendedSi_PRDInfo or
994  flags.Tracking.writeExtendedTRT_PRDInfo):
995  result.merge(ExtendedPRDInfoCfg(flags))
996 
997  # output
998  from InDetConfig.InDetTrackOutputConfig import InDetTrackRecoOutputCfg
999  result.merge(InDetTrackRecoOutputCfg(flags, _extensions_list))
1000 
1001  return result
1002 
1003 # Run with python -m InDetConfig.TrackRecoConfig
1004 # Works with Data RAW (Format.BS), MC RDO, and MC ESD

◆ ObserverTrackFinalCfg()

def python.TrackRecoConfig.ObserverTrackFinalCfg (   flags)

Definition at line 608 of file TrackRecoConfig.py.

608 def ObserverTrackFinalCfg(flags):
609  result = ComponentAccumulator()
610 
611  TrackContainer = "ObservedTracksCollection"
612  if flags.Tracking.doTruth:
613  from InDetConfig.TrackTruthConfig import InDetTrackTruthCfg
614  result.merge(InDetTrackTruthCfg(
615  flags,
616  Tracks=TrackContainer,
617  DetailedTruth=TrackContainer + "DetailedTruth",
618  TracksTruth=TrackContainer + "TruthCollection"))
619 
620  from xAODTrackingCnv.xAODTrackingCnvConfig import (
621  ObserverTrackParticleCnvAlgCfg)
622  result.merge(ObserverTrackParticleCnvAlgCfg(
623  flags,
624  AssociationMapName = (
625  "PRDtoTrackMapMerge_CombinedInDetTracks")))
626 
627  return result
628 
629 

◆ PseudoTrackFinalCfg()

def python.TrackRecoConfig.PseudoTrackFinalCfg (   flags)

Definition at line 583 of file TrackRecoConfig.py.

583 def PseudoTrackFinalCfg(flags):
584  result = ComponentAccumulator()
585 
586  TrackContainer = "InDetPseudoTracks"
587  if flags.Tracking.doTruth:
588  from InDetConfig.TrackTruthConfig import InDetTrackTruthCfg
589  result.merge(InDetTrackTruthCfg(
590  flags,
591  Tracks=TrackContainer,
592  DetailedTruth=TrackContainer + "DetailedTruth",
593  TracksTruth=TrackContainer + "TruthCollection"))
594 
595  from xAODTrackingCnv.xAODTrackingCnvConfig import TrackParticleCnvAlgCfg
596  result.merge(TrackParticleCnvAlgCfg(
597  flags,
598  name="PseudoTrackParticleCnvAlg",
599  TrackContainerName=TrackContainer,
600  xAODTrackParticlesFromTracksContainerName=(
601  "InDetPseudoTrackParticles"),
602  AssociationMapName=(
603  "PRDtoTrackMapMerge_CombinedInDetTracks")))
604 
605  return result
606 
607 

◆ SiDetectorElementStatusCfg()

def python.TrackRecoConfig.SiDetectorElementStatusCfg (   flags,
  suffix = "" 
)

Definition at line 188 of file TrackRecoConfig.py.

188 def SiDetectorElementStatusCfg(flags, suffix="") :
189  result = ComponentAccumulator()
190  if flags.Detector.GeometryITk:
191  if flags.Detector.EnableITkPixel:
192  from PixelConditionsAlgorithms.ITkPixelConditionsConfig import (
193  ITkPixelDetectorElementStatusAlgCfg)
194  result.merge(ITkPixelDetectorElementStatusAlgCfg(flags,name=f"ITkPixelDetectorElementStatusAlg{suffix}"))
195  if flags.Detector.EnableITkStrip:
196  from SCT_ConditionsAlgorithms.ITkStripConditionsAlgorithmsConfig import (
197  ITkStripDetectorElementStatusAlgCfg)
198  result.merge(ITkStripDetectorElementStatusAlgCfg(flags,name=f"ITkStripDetectorElementStatusAlg{suffix}"))
199  return result
200 
201 
202 # Returns CA + ClusterSplitProbContainer

◆ SiSPSeededTracksFinalCfg()

def python.TrackRecoConfig.SiSPSeededTracksFinalCfg (   flags)

Definition at line 662 of file TrackRecoConfig.py.

662 def SiSPSeededTracksFinalCfg(flags):
663  result = ComponentAccumulator()
664 
665  primaryPassExtension = flags.Tracking[f"{flags.Tracking.PrimaryPassConfig.value}Pass"].extension
666 
667  # get list of extensions requesting track candidates.
668  # Add always the Primary Pass.
669  listOfExtensionsRequesting = [
670  e for e in _extensions_list
671  if (e=='' or flags.Tracking[f"{e}Pass"].storeSiSPSeededTracks) ]
672 
673  for extension in listOfExtensionsRequesting:
674  AssociationMapNameKey="PRDtoTrackMapMerge_CombinedInDetTracks"
675  if extension=='Disappearing':
676  AssociationMapNameKey = "PRDtoTrackMapMerge_DisappearingTracks"
677  elif not (extension == primaryPassExtension):
678  AssociationMapNameKey = f"InDetPRDtoTrackMap{extension}"
679 
680  from xAODTrackingCnv.xAODTrackingCnvConfig import (
681  TrackParticleCnvAlgNoPIDCfg)
682  result.merge(TrackParticleCnvAlgNoPIDCfg(
683  flags,
684  name = f"SiSPSeededTracks{extension}CnvAlg",
685  TrackContainerName = f"SiSPSeeded{extension}Tracks",
686  xAODTrackParticlesFromTracksContainerName=(
687  f"SiSPSeededTracks{extension}TrackParticles"),
688  AssociationMapName=AssociationMapNameKey))
689 
690  return result
691 
692 

◆ SiSubDetTrackRecoCfg()

def python.TrackRecoConfig.SiSubDetTrackRecoCfg (   flags,
  detector = "",
  extensions_list = None,
  ClusterSplitProbContainer = "" 
)

Definition at line 203 of file TrackRecoConfig.py.

203 def SiSubDetTrackRecoCfg(flags, detector="",
204  extensions_list=None,
205  ClusterSplitProbContainer=""):
206  result = ComponentAccumulator()
207 
208  if extensions_list is None:
209  extensions_list = []
210 
211  flagsDet = flags.cloneAndReplace("Tracking.ActiveConfig",
212  f"Tracking.{detector}Pass")
213  TrackContainer = f"Resolved{detector}Tracks"
214  extensions_list.append(flagsDet.Tracking.ActiveConfig.extension)
215  printActiveConfig(flagsDet)
216 
217  from InDetConfig.TrackingSiPatternConfig import TrackingSiPatternCfg
218  result.merge(TrackingSiPatternCfg(
219  flagsDet,
220  InputCollections=[],
221  ResolvedTrackCollectionKey=TrackContainer,
222  SiSPSeededTrackCollectionKey=f"SiSPSeeded{detector}Tracks",
223  ClusterSplitProbContainer=ClusterSplitProbContainer))
224 
225  ClusterSplitProbContainer = (
226  "InDetAmbiguityProcessorSplitProb" +
227  flagsDet.Tracking.ActiveConfig.extension)
228 
229  if flags.Tracking.doTruth:
230  from InDetConfig.TrackTruthConfig import InDetTrackTruthCfg
231  result.merge(InDetTrackTruthCfg(
232  flagsDet,
233  Tracks=TrackContainer,
234  DetailedTruth=TrackContainer+"DetailedTruth",
235  TracksTruth=TrackContainer+"TruthCollection"))
236 
237  from xAODTrackingCnv.xAODTrackingCnvConfig import (
238  TrackParticleCnvAlgPIDCheckCfg)
239  result.merge(TrackParticleCnvAlgPIDCheckCfg(
240  flagsDet,
241  name=TrackContainer+"CnvAlg",
242  TrackContainerName=TrackContainer,
243  xAODTrackParticlesFromTracksContainerName=(
244  f"InDet{detector}TrackParticles")))
245 
246  return result, ClusterSplitProbContainer
247 
248 

◆ StoreTrackSeparateContainerCfg()

def python.TrackRecoConfig.StoreTrackSeparateContainerCfg (   flags,
  TrackContainer = "",
  ClusterSplitProbContainer = "" 
)

Definition at line 309 of file TrackRecoConfig.py.

309 def StoreTrackSeparateContainerCfg(flags, TrackContainer="",
310  ClusterSplitProbContainer=""):
311  result = ComponentAccumulator()
312  if hasattr(flags.TrackOverlay, "ActiveConfig"):
313  doTrackOverlay = getattr(flags.TrackOverlay.ActiveConfig, "doTrackOverlay", None)
314  else:
315  doTrackOverlay = flags.Overlay.doTrackOverlay
316 
317  # Dummy Merger to fill additional info
318  # for PRD-associated pixel tracklets
319  # Can also run on all separate collections like R3LargeD0
320  # but kept consistent with legacy config
321 
322  AssociationMapName = ""
323  extension = flags.Tracking.ActiveConfig.extension
324 
325  if extension == "Disappearing" or doTrackOverlay:
326  if extension == "Disappearing":
327  InputTracks = [TrackContainer]
328  if doTrackOverlay:
329  InputTracks += [flags.Overlay.BkgPrefix +
330  extension + "Tracks"]
331  TrackContainer = extension+"Tracks"
332  AssociationMapName = "PRDtoTrackMapMerge_" + TrackContainer
333  MergerOutputTracks = TrackContainer
334  elif doTrackOverlay:
335  # schedule merger to combine signal and background tracks
336  InputTracks = [flags.Overlay.SigPrefix+TrackContainer,
337  flags.Overlay.BkgPrefix+TrackContainer]
338  AssociationMapName = ("PRDtoTrackMapMerge_Resolved" +
339  extension + "Tracks")
340  MergerOutputTracks = TrackContainer
341 
342  from TrkConfig.TrkTrackCollectionMergerConfig import (
343  TrackCollectionMergerAlgCfg)
344  result.merge(TrackCollectionMergerAlgCfg(
345  flags,
346  name = "TrackCollectionMergerAlgCfg"+extension,
347  InputCombinedTracks=InputTracks,
348  OutputCombinedTracks=MergerOutputTracks,
349  AssociationMapName=AssociationMapName))
350 
351  if flags.Tracking.doTruth:
352  from InDetConfig.TrackTruthConfig import InDetTrackTruthCfg
353  result.merge(InDetTrackTruthCfg(
354  flags,
355  Tracks=TrackContainer,
356  DetailedTruth=TrackContainer+"DetailedTruth",
357  TracksTruth=TrackContainer+"TruthCollection"))
358 
359  # Need specific handling with TrackParticles for R3LargeD0
360  # not to break downstream configs
361  xAODTrackParticlesName = (
362  "InDetLargeD0TrackParticles" if "LargeD0" in extension else
363  "InDet" + extension + "TrackParticles")
364 
365  from xAODTrackingCnv.xAODTrackingCnvConfig import (
366  TrackParticleCnvAlgPIDCheckCfg)
367  result.merge(TrackParticleCnvAlgPIDCheckCfg(
368  flags,
369  name = extension + "TrackParticleCnvAlg",
370  TrackContainerName=TrackContainer,
371  xAODTrackParticlesFromTracksContainerName=xAODTrackParticlesName,
372  ClusterSplitProbabilityName=ClusterSplitProbContainer,
373  AssociationMapName=AssociationMapName))
374 
375  return result, TrackContainer
376 
377 
378 # Returns CA + ClusterSplitProbContainer

◆ TrackFinalCfg()

def python.TrackRecoConfig.TrackFinalCfg (   flags,
  InputCombinedInDetTracks = None,
  StatTrackCollections = None,
  StatTrackTruthCollections = None 
)

Definition at line 524 of file TrackRecoConfig.py.

524 def TrackFinalCfg(flags,
525  InputCombinedInDetTracks=None,
526  StatTrackCollections=None,
527  StatTrackTruthCollections=None):
528  result = ComponentAccumulator()
529  if hasattr(flags.TrackOverlay, "ActiveConfig"):
530  doTrackOverlay = getattr(flags.TrackOverlay.ActiveConfig, "doTrackOverlay", None)
531  else:
532  doTrackOverlay = flags.Overlay.doTrackOverlay
533 
534  if InputCombinedInDetTracks is None:
535  InputCombinedInDetTracks = []
536  if StatTrackCollections is None:
537  StatTrackCollections = []
538  if StatTrackTruthCollections is None:
539  StatTrackTruthCollections = []
540 
541  if doTrackOverlay:
542  InputCombinedInDetTracks += [flags.Overlay.BkgPrefix +
543  "CombinedInDetTracks"]
544 
545  TrackContainer = "CombinedInDetTracks"
546 
547  from TrkConfig.TrkTrackCollectionMergerConfig import (
548  TrackCollectionMergerAlgCfg)
549  result.merge(TrackCollectionMergerAlgCfg(
550  flags,
551  InputCombinedTracks=InputCombinedInDetTracks,
552  OutputCombinedTracks=TrackContainer,
553  AssociationMapName=f"PRDtoTrackMapMerge_{TrackContainer}"))
554 
555  if flags.Tracking.doTruth:
556  from InDetConfig.TrackTruthConfig import InDetTrackTruthCfg
557  result.merge(InDetTrackTruthCfg(
558  flags,
559  Tracks=TrackContainer,
560  DetailedTruth=f"{TrackContainer}DetailedTruth",
561  TracksTruth=f"{TrackContainer}TruthCollection"))
562 
563  StatTrackCollections += [TrackContainer]
564  StatTrackTruthCollections += [f"{TrackContainer}TruthCollection"]
565 
566  if flags.Tracking.doSlimming:
567  from TrkConfig.TrkTrackSlimmerConfig import TrackSlimmerCfg
568  result.merge(TrackSlimmerCfg(
569  flags,
570  TrackLocation=[TrackContainer]))
571 
572  if flags.Tracking.perigeeExpression == "BeamLine":
573  from xAODTrackingCnv.xAODTrackingCnvConfig import TrackParticleCnvAlgCfg
574  result.merge(TrackParticleCnvAlgCfg(
575  flags,
576  ClusterSplitProbabilityName=ClusterSplitProbabilityContainerName(
577  flags),
578  AssociationMapName=f"PRDtoTrackMapMerge_{TrackContainer}"))
579 
580  return result
581 
582 

◆ TrackRecoConfigTest()

def python.TrackRecoConfig.TrackRecoConfigTest (   flags = None)

Definition at line 1005 of file TrackRecoConfig.py.

1005 def TrackRecoConfigTest(flags=None):
1006 
1007  store_config = False
1008  if flags is None:
1009  store_config = True
1010  from AthenaConfiguration.AllConfigFlags import initConfigFlags
1011  flags = initConfigFlags()
1012 
1013  # Disable calo for this test
1014  from InDetConfig.ConfigurationHelpers import OnlyTrackingPreInclude
1015  OnlyTrackingPreInclude(flags)
1016 
1017  from AthenaConfiguration.TestDefaults import defaultTestFiles, defaultConditionsTags
1018  flags.Input.Files = defaultTestFiles.RDO_RUN3
1019  flags.IOVDb.GlobalTag = defaultConditionsTags.RUN3_MC
1020  flags.Exec.MaxEvents = 1
1021 
1022  flags.lock()
1023 
1024  from AthenaConfiguration.MainServicesConfig import MainServicesCfg
1025  top_acc = MainServicesCfg(flags)
1026 
1027  if flags.Input.Format is not Format.BS:
1028  from AthenaPoolCnvSvc.PoolReadConfig import PoolReadCfg
1029  top_acc.merge(PoolReadCfg(flags))
1030 
1031  if flags.Detector.EnableCalo:
1032  if flags.Input.Format is Format.BS:
1033  from CaloRec.CaloRecoConfig import CaloRecoCfg
1034  top_acc.merge(CaloRecoCfg(flags))
1035  else:
1036  from CaloRec.CaloTopoClusterConfig import CaloTopoClusterCfg
1037  top_acc.merge(CaloTopoClusterCfg(flags))
1038 
1039  if flags.Input.Format is not Format.BS:
1040  # TODO find better way to determine RDO vs ESD input?
1041  if "PixelRDOs" in flags.Input.Collections:
1042  if "EventInfo" not in flags.Input.Collections:
1043  from xAODEventInfoCnv.xAODEventInfoCnvConfig import EventInfoCnvAlgCfg
1044  top_acc.merge(EventInfoCnvAlgCfg(flags))
1045 
1046  if flags.Input.isMC:
1047  from xAODTruthCnv.xAODTruthCnvConfig import GEN_AOD2xAODCfg
1048  top_acc.merge(GEN_AOD2xAODCfg(flags))
1049  else:
1050  if flags.Tracking.doTruth :
1051  from xAODTruthCnv.RedoTruthLinksConfig import RedoTruthLinksAlgCfg
1052  top_acc.merge( RedoTruthLinksAlgCfg(flags) )
1053 
1054  top_acc.merge(InDetTrackRecoCfg(flags))
1055 
1056  if store_config:
1057  from AthenaCommon.Constants import DEBUG
1058  top_acc.foreach_component("AthEventSeq/*").OutputLevel = DEBUG
1059  top_acc.printConfig(withDetails=True, summariseProps=True)
1060  top_acc.store(open("TrackRecoConfig.pkl", "wb"))
1061 
1062  import sys
1063  if "--norun" not in sys.argv:
1064  sc = top_acc.run()
1065  if sc.isFailure():
1066  sys.exit(-1)
1067 

◆ TrackRecoPassCfg()

def python.TrackRecoConfig.TrackRecoPassCfg (   flags,
  extension = "",
  doTrackingSiPattern = True,
  InputCombinedInDetTracks = None,
  InputExtendedInDetTracks = None,
  StatTrackCollections = None,
  StatTrackTruthCollections = None,
  ClusterSplitProbContainer = "" 
)

Definition at line 418 of file TrackRecoConfig.py.

418 def TrackRecoPassCfg(flags, extension="",
419  doTrackingSiPattern=True,
420  InputCombinedInDetTracks=None,
421  InputExtendedInDetTracks=None,
422  StatTrackCollections=None,
423  StatTrackTruthCollections=None,
424  ClusterSplitProbContainer=""):
425  result = ComponentAccumulator()
426  if hasattr(flags.TrackOverlay, "ActiveConfig"):
427  doTrackOverlay = getattr(flags.TrackOverlay.ActiveConfig, "doTrackOverlay", None)
428  else:
429  doTrackOverlay = flags.Overlay.doTrackOverlay
430  if InputCombinedInDetTracks is None:
431  InputCombinedInDetTracks = []
432  if InputExtendedInDetTracks is None:
433  InputExtendedInDetTracks = []
434  if StatTrackCollections is None:
435  StatTrackCollections = []
436  if StatTrackTruthCollections is None:
437  StatTrackTruthCollections = []
438 
439  ResolvedTracks = "Resolved" + extension + "Tracks"
440 
441  # for track overlay, save resolved track name
442  # for final merged track collection
443  if (doTrackOverlay and
444  flags.Tracking.ActiveConfig.storeSeparateContainer and
445  not flags.Tracking.ActiveConfig.useTRTExtension):
446  ResolvedTracks = flags.Overlay.SigPrefix + ResolvedTracks
447 
448  # Tweak to match old config key
449  if "LargeD0" in extension:
450  ResolvedTracks = "ResolvedLargeD0Tracks"
451 
452  # ---------------------------------------
453  # --- Si pattern, if not done in the cosmic preprocessing
454  # ---------------------------------------
455 
456  if doTrackingSiPattern:
457  SiSPSeededTracks = "SiSPSeeded" + extension + "Tracks"
458  from InDetConfig.TrackingSiPatternConfig import TrackingSiPatternCfg
459  result.merge(TrackingSiPatternCfg(
460  flags,
461  InputCollections=InputExtendedInDetTracks,
462  ResolvedTrackCollectionKey=ResolvedTracks,
463  SiSPSeededTrackCollectionKey=SiSPSeededTracks,
464  ClusterSplitProbContainer=ClusterSplitProbContainer))
465  StatTrackCollections += [SiSPSeededTracks, ResolvedTracks]
466  StatTrackTruthCollections += [SiSPSeededTracks+"TruthCollection",
467  ResolvedTracks+"TruthCollection"]
468 
469  TrackContainer = ResolvedTracks
470  if (doTrackOverlay and
471  flags.Tracking.ActiveConfig.storeSeparateContainer):
472  TrackContainer = "Resolved" + extension + "Tracks"
473 
474  # ---------------------------------------
475  # --- TRT extension
476  # ---------------------------------------
477 
478  if flags.Tracking.ActiveConfig.useTRTExtension:
479  ExtendedTracks = "Extended" + extension + "Tracks"
480  # Tweaks to match old config key
481  if extension == "Disappearing":
482  ExtendedTracks = "ExtendedTracksDisappearing"
483  elif "LargeD0" in extension:
484  ExtendedTracks = "ExtendedLargeD0Tracks"
485  if doTrackOverlay:
486  ExtendedTracks = flags.Overlay.SigPrefix+"ExtendedLargeD0Tracks"
487  ExtendedTracksMap = "ExtendedTracksMap" + extension
488 
489  from InDetConfig.TRTExtensionConfig import NewTrackingTRTExtensionCfg
490  result.merge(NewTrackingTRTExtensionCfg(
491  flags,
492  SiTrackCollection=ResolvedTracks,
493  ExtendedTrackCollection=ExtendedTracks,
494  ExtendedTracksMap=ExtendedTracksMap))
495 
496  TrackContainer = ExtendedTracks
497  if doTrackOverlay and "LargeD0" in extension:
498  TrackContainer = "ExtendedLargeD0Tracks"
499  StatTrackCollections += [ExtendedTracks]
500  StatTrackTruthCollections += [ExtendedTracks+"TruthCollection"]
501 
502  # ---------------------------------------
503  # --- Store separate container if needed
504  # ---------------------------------------
505 
506  if flags.Tracking.ActiveConfig.storeSeparateContainer:
507  acc, TrackContainer = StoreTrackSeparateContainerCfg(
508  flags,
509  TrackContainer=TrackContainer,
510  ClusterSplitProbContainer=ClusterSplitProbContainer)
511  result.merge(acc)
512 
513  else: # Do not store separate track container
514  ClusterSplitProbContainer = (
515  "InDetAmbiguityProcessorSplitProb" +
516  flags.Tracking.ActiveConfig.extension)
517  InputCombinedInDetTracks += [TrackContainer]
518 
519  InputExtendedInDetTracks += [TrackContainer]
520 
521  return result, ClusterSplitProbContainer
522 
523 

◆ TrackSeedsFinalCfg()

def python.TrackRecoConfig.TrackSeedsFinalCfg (   flags)

Definition at line 630 of file TrackRecoConfig.py.

630 def TrackSeedsFinalCfg(flags):
631  result = ComponentAccumulator()
632 
633  # get list of extensions requesting track seeds.
634  # Add always the Primary Pass.
635  listOfExtensionsRequesting = [
636  e for e in _extensions_list
637  if (e == '' or flags.Tracking[f"{e}Pass"].storeTrackSeeds) ]
638 
639  for extension in listOfExtensionsRequesting:
640  TrackContainer = "SiSPSeedSegments"+extension
641 
642  if flags.Tracking.doTruth:
643  from InDetConfig.TrackTruthConfig import InDetTrackTruthCfg
644  result.merge(InDetTrackTruthCfg(
645  flags,
646  Tracks=TrackContainer,
647  DetailedTruth=f"{TrackContainer}DetailedTruth",
648  TracksTruth=f"{TrackContainer}TruthCollection"))
649 
650  from xAODTrackingCnv.xAODTrackingCnvConfig import (
651  TrackParticleCnvAlgNoPIDCfg)
652  result.merge(TrackParticleCnvAlgNoPIDCfg(
653  flags,
654  name=f"{TrackContainer}CnvAlg",
655  TrackContainerName=TrackContainer,
656  xAODTrackParticlesFromTracksContainerName=(
657  f"{TrackContainer}TrackParticles")))
658 
659  return result
660 
661 

◆ TRTStandalonePassRecoCfg()

def python.TrackRecoConfig.TRTStandalonePassRecoCfg (   flags,
  InputCombinedInDetTracks = None,
  InputExtendedInDetTracks = None,
  StatTrackCollections = None,
  StatTrackTruthCollections = None 
)

Definition at line 270 of file TrackRecoConfig.py.

270 def TRTStandalonePassRecoCfg(flags,
271  InputCombinedInDetTracks=None,
272  InputExtendedInDetTracks=None,
273  StatTrackCollections=None,
274  StatTrackTruthCollections=None):
275  result = ComponentAccumulator()
276 
277  if InputCombinedInDetTracks is None:
278  InputCombinedInDetTracks = []
279  if InputExtendedInDetTracks is None:
280  InputExtendedInDetTracks = []
281  if StatTrackCollections is None:
282  StatTrackCollections = []
283  if StatTrackTruthCollections is None:
284  StatTrackTruthCollections = []
285 
286  from InDetConfig.TRTStandaloneConfig import TRTStandaloneCfg
287  result.merge(TRTStandaloneCfg(flags,
288  InputCollections=InputCombinedInDetTracks))
289 
290  TRTTrackContainer = "TRTStandaloneTracks"
291  InputCombinedInDetTracks += [TRTTrackContainer]
292  InputExtendedInDetTracks += [TRTTrackContainer]
293  StatTrackCollections += [TRTTrackContainer]
294  StatTrackTruthCollections += [TRTTrackContainer+"TruthCollection"]
295 
296  if flags.Tracking.doTrackSegmentsTRT:
297  from xAODTrackingCnv.xAODTrackingCnvConfig import (
298  TrackParticleCnvAlgNoPIDCfg)
299  result.merge(TrackParticleCnvAlgNoPIDCfg(
300  flags, TRTTrackContainer+"CnvAlg",
301  TrackContainerName=TRTTrackContainer,
302  xAODTrackParticlesFromTracksContainerName=(
303  "InDetTRTTrackParticles")))
304 
305  return result
306 
307 
308 # Return CA + TrackContainer

◆ TRTTrackRecoCfg()

def python.TrackRecoConfig.TRTTrackRecoCfg (   flags,
  extensions_list = None 
)

Definition at line 249 of file TrackRecoConfig.py.

249 def TRTTrackRecoCfg(flags, extensions_list=None):
250  result = ComponentAccumulator()
251 
252  if extensions_list is None:
253  extensions_list = []
254 
255  flagsTRT = flags.cloneAndReplace("Tracking.ActiveConfig",
256  "Tracking.TRTPass")
257  extensions_list.append(flagsTRT.Tracking.ActiveConfig.extension)
258  printActiveConfig(flagsTRT)
259 
260  from InDetConfig.TRTSegmentFindingConfig import (
261  TRTSegmentFinding_TrackSegments_Cfg)
262  result.merge(TRTSegmentFinding_TrackSegments_Cfg(flagsTRT))
263 
264  from InDetConfig.TRTStandaloneConfig import TRT_TrackSegment_Cfg
265  result.merge(TRT_TrackSegment_Cfg(flagsTRT))
266 
267  return result
268 
269 

Variable Documentation

◆ _extensions_list

list python.TrackRecoConfig._extensions_list = []
private

Definition at line 8 of file TrackRecoConfig.py.

◆ _flags_set

list python.TrackRecoConfig._flags_set = []
private

Definition at line 7 of file TrackRecoConfig.py.

python.TRT_RawDataByteStreamCnvConfig.TRTRawDataProviderCfg
def TRTRawDataProviderCfg(flags, name="TRTRawDataProvider", **kwargs)
Definition: TRT_RawDataByteStreamCnvConfig.py:39
python.TRTPreProcessing.TRTPreProcessingCfg
def TRTPreProcessingCfg(flags)
Definition: TRTPreProcessing.py:10
python.SCT_RawDataByteStreamCnvConfig.SCTRawDataProviderCfg
def SCTRawDataProviderCfg(flags, prefix="InDet", suffix="", **kwargs)
Definition: SCT_RawDataByteStreamCnvConfig.py:30
python.TrackRecoConfig.SiDetectorElementStatusCfg
def SiDetectorElementStatusCfg(flags, suffix="")
Definition: TrackRecoConfig.py:188
python.ITkTrackRecoConfig.ITkTrackRecoCfg
ComponentAccumulator ITkTrackRecoCfg(flags)
Main ITk tracking config #####################.
Definition: ITkTrackRecoConfig.py:488
python.CaloRecoConfig.CaloRecoCfg
def CaloRecoCfg(flags, clustersname=None)
Definition: CaloRecoConfig.py:9
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
python.TrackRecoConfig.TrackRecoPassCfg
def TrackRecoPassCfg(flags, extension="", doTrackingSiPattern=True, InputCombinedInDetTracks=None, InputExtendedInDetTracks=None, StatTrackCollections=None, StatTrackTruthCollections=None, ClusterSplitProbContainer="")
Definition: TrackRecoConfig.py:418
xAODTrackingCnvConfig.ObserverTrackParticleCnvAlgCfg
def ObserverTrackParticleCnvAlgCfg(flags, name="ObserverTrackParticleCnvAlg", ClusterSplitProbabilityName="", AssociationMapName="", **kwargs)
Definition: xAODTrackingCnvConfig.py:276
python.TrackRecoConfig.PseudoTrackFinalCfg
def PseudoTrackFinalCfg(flags)
Definition: TrackRecoConfig.py:583
python.InDetRecStatisticsConfig.InDetRecStatisticsAlgCfg
def InDetRecStatisticsAlgCfg(flags, name='InDetRecStatistics', **kwargs)
Definition: InDetRecStatisticsConfig.py:8
xAODTrackingCnvConfig.TrackParticleCnvAlgNoPIDCfg
def TrackParticleCnvAlgNoPIDCfg(flags, name, ClusterSplitProbabilityName="", AssociationMapName="", **kwargs)
Definition: xAODTrackingCnvConfig.py:255
ITkPixelConditionsConfig.ITkPixelDetectorElementStatusAlgCfg
def ITkPixelDetectorElementStatusAlgCfg(flags, name="ITkPixelDetectorElementStatusAlg", **kwargs)
Definition: ITkPixelConditionsConfig.py:201
python.SiliconPreProcessing.InDetRecPreProcessingSiliconCfg
def InDetRecPreProcessingSiliconCfg(flags)
Definition: SiliconPreProcessing.py:5
python.TrackingPassFlags.printPrimaryConfig
def printPrimaryConfig(flags)
Definition: TrackingPassFlags.py:994
xAODTruthCnvConfig.GEN_AOD2xAODCfg
def GEN_AOD2xAODCfg(flags, name="GEN_AOD2xAOD", **kwargs)
Definition: xAODTruthCnvConfig.py:20
python.TrackRecoConfig.TrackSeedsFinalCfg
def TrackSeedsFinalCfg(flags)
Definition: TrackRecoConfig.py:630
xAODTrackingCnvConfig.TrackParticleCnvAlgPIDCheckCfg
def TrackParticleCnvAlgPIDCheckCfg(flags, name, ClusterSplitProbabilityName="", AssociationMapName="", **kwargs)
Definition: xAODTrackingCnvConfig.py:236
python.TrkTruthTrackAlgsConfig.TruthTrackingCfg
def TruthTrackingCfg(flags, name='InDetTruthTrackCreation', **kwargs)
Definition: TrkTruthTrackAlgsConfig.py:8
python.TrackRecoConfig.SiSPSeededTracksFinalCfg
def SiSPSeededTracksFinalCfg(flags)
Definition: TrackRecoConfig.py:662
python.InDetPriVxFinderConfig.primaryVertexFindingCfg
ComponentAccumulator primaryVertexFindingCfg(flags, str name="InDetPriVxFinder", vxCandidatesOutputName=None, **kwargs)
Definition: InDetPriVxFinderConfig.py:78
python.TrackRecoConfig.TRTTrackRecoCfg
def TRTTrackRecoCfg(flags, extensions_list=None)
Definition: TrackRecoConfig.py:249
python.TrackRecoConfig.ClusterSplitProbabilityContainerName
def ClusterSplitProbabilityContainerName(flags)
Definition: TrackRecoConfig.py:86
python.ITkStripConditionsAlgorithmsConfig.ITkStripDetectorElementStatusAlgCfg
def ITkStripDetectorElementStatusAlgCfg(flags, name="ITkStripDetectorElementStatusAlg", **kwargs)
Definition: ITkStripConditionsAlgorithmsConfig.py:90
PixelRawDataByteStreamCnvConfig.PixelRawDataProviderAlgCfg
def PixelRawDataProviderAlgCfg(flags, **kwargs)
Definition: PixelRawDataByteStreamCnvConfig.py:17
python.TrackRecoConfig.SiSubDetTrackRecoCfg
def SiSubDetTrackRecoCfg(flags, detector="", extensions_list=None, ClusterSplitProbContainer="")
Definition: TrackRecoConfig.py:203
RedoTruthLinksConfig.RedoTruthLinksAlgCfg
def RedoTruthLinksAlgCfg(flags)
Definition: RedoTruthLinksConfig.py:5
python.TrackingPassFlags.printActiveConfig
def printActiveConfig(flags)
Definition: TrackingPassFlags.py:1005
python.TrackRecoConfig.CombinedTrackingPassFlagSets
def CombinedTrackingPassFlagSets(flags)
Definition: TrackRecoConfig.py:10
python.TrackRecoConfig.StoreTrackSeparateContainerCfg
def StoreTrackSeparateContainerCfg(flags, TrackContainer="", ClusterSplitProbContainer="")
Definition: TrackRecoConfig.py:309
python.TrackTruthConfig.InDetTrackTruthCfg
def InDetTrackTruthCfg(flags, Tracks="CombinedInDetTracks", DetailedTruth="CombinedInDetTracksDetailedTruth", TracksTruth="CombinedInDetTracksTruthCollection")
Definition: TrackTruthConfig.py:11
python.InDetTrackPRD_AssociationConfig.InDetTrackPRD_AssociationCfg
def InDetTrackPRD_AssociationCfg(flags, name='InDetTrackPRD_Association', **kwargs)
Definition: InDetTrackPRD_AssociationConfig.py:6
python.ConfigurationHelpers.OnlyTrackingPreInclude
def OnlyTrackingPreInclude(flags)
Definition: InnerDetector/InDetConfig/python/ConfigurationHelpers.py:6
python.InDetV0FinderConfig.InDetV0FinderCfg
def InDetV0FinderCfg(flags, name="InDetV0Finder", V0ContainerName="V0UnconstrVertices", KshortContainerName="V0KshortVertices", LambdaContainerName="V0LambdaVertices", LambdabarContainerName="V0LambdabarVertices", **kwargs)
Definition: InDetV0FinderConfig.py:115
python.TRTExtensionConfig.NewTrackingTRTExtensionPhaseCfg
def NewTrackingTRTExtensionPhaseCfg(flags, SiTrackCollection=None, ExtendedTrackCollection=None, ExtendedTracksMap=None)
Definition: TRTExtensionConfig.py:39
python.TrackRecoConfig.ExtendedPRDInfoCfg
def ExtendedPRDInfoCfg(flags)
Definition: TrackRecoConfig.py:715
python.TRTSegmentFindingConfig.TRTSegmentFinding_Phase_Cfg
def TRTSegmentFinding_Phase_Cfg(flags)
Definition: TRTSegmentFindingConfig.py:43
python.InDetCosmicsEventPhaseConfig.InDetCosmicsEventPhaseCfg
def InDetCosmicsEventPhaseCfg(flags, name='InDetCosmicsEventPhase', **kwargs)
Definition: InDetCosmicsEventPhaseConfig.py:55
python.TRTSegmentFindingConfig.TRTSegmentFinding_TrackSegments_Cfg
def TRTSegmentFinding_TrackSegments_Cfg(flags)
Definition: TRTSegmentFindingConfig.py:73
python.InDetToolsConfig.ObserverTSOS_CommonKernelCfg
def ObserverTSOS_CommonKernelCfg(flags, name="ObserverTSOS_CommonKernel")
Definition: InDetToolsConfig.py:172
python.TrkTrackSlimmerConfig.TrackSlimmerCfg
def TrackSlimmerCfg(flags, name="TrackSlimmer", **kwargs)
Definition: TrkTrackSlimmerConfig.py:6
python.TrackRecoConfig.TrackFinalCfg
def TrackFinalCfg(flags, InputCombinedInDetTracks=None, StatTrackCollections=None, StatTrackTruthCollections=None)
Definition: TrackRecoConfig.py:524
python.TRT_SegmentsToTrackConfig.TRT_Cosmics_SegmentsToTrackCfg
def TRT_Cosmics_SegmentsToTrackCfg(flags, name='InDetTRT_Cosmics_SegmentsToTrack', **kwargs)
Definition: TRT_SegmentsToTrackConfig.py:6
python.TrackRecoConfig.InDetPreProcessingCfg
def InDetPreProcessingCfg(flags)
Definition: TrackRecoConfig.py:158
python.MainServicesConfig.MainServicesCfg
def MainServicesCfg(flags, LoopMgr='AthenaEventLoopMgr')
Definition: MainServicesConfig.py:260
Constants
some useful constants -------------------------------------------------—
python.TRTExtensionConfig.NewTrackingTRTExtensionCfg
def NewTrackingTRTExtensionCfg(flags, SiTrackCollection=None, ExtendedTrackCollection=None, ExtendedTracksMap=None)
Definition: TRTExtensionConfig.py:9
python.InDetPrepRawDataFormationConfig.InDetTRT_Phase_RIO_MakerCfg
def InDetTRT_Phase_RIO_MakerCfg(flags, name="InDetTRT_Phase_RIO_Maker", **kwargs)
Definition: InDetPrepRawDataFormationConfig.py:293
python.InDetToolsConfig.PseudoTSOS_CommonKernelCfg
def PseudoTSOS_CommonKernelCfg(flags, name="PseudoTSOS_CommonKernel")
Definition: InDetToolsConfig.py:191
python.ITkTrackRecoConfig.ITkClusterSplitProbabilityContainerName
def ITkClusterSplitProbabilityContainerName(flags)
Definition: ITkTrackRecoConfig.py:123
python.InDetTrackOutputConfig.InDetTrackRecoOutputCfg
def InDetTrackRecoOutputCfg(flags, extensions_list=None)
Definition: InDetTrackOutputConfig.py:23
python.CaloTopoClusterConfig.CaloTopoClusterCfg
def CaloTopoClusterCfg(flags, cellsname="AllCalo", clustersname=None, clustersnapname="CaloTopoClusters")
Definition: CaloTopoClusterConfig.py:318
python.InDetTrackClusterAssValidationConfig.InDetTrackClusterAssValidationCfg
def InDetTrackClusterAssValidationCfg(flags, name='InDetTrackClusterAssValidation', **kwargs)
Definition: InDetTrackClusterAssValidationConfig.py:7
python.TrackingSiPatternConfig.TrackingSiPatternCfg
def TrackingSiPatternCfg(flags, InputCollections=None, ResolvedTrackCollectionKey=None, SiSPSeededTrackCollectionKey=None, ClusterSplitProbContainer='')
Definition: TrackingSiPatternConfig.py:9
python.TRTStandaloneConfig.TRT_TrackSegment_Cfg
def TRT_TrackSegment_Cfg(flags)
Definition: TRTStandaloneConfig.py:50
python.TrackRecoConfig.InDetTrackRecoCfg
def InDetTrackRecoCfg(flags)
Main ID tracking config #####################.
Definition: TrackRecoConfig.py:804
Trk::open
@ open
Definition: BinningType.h:40
python.TrackRecoConfig.TRTStandalonePassRecoCfg
def TRTStandalonePassRecoCfg(flags, InputCombinedInDetTracks=None, InputExtendedInDetTracks=None, StatTrackCollections=None, StatTrackTruthCollections=None)
Definition: TrackRecoConfig.py:270
python.TrackRecoConfig.InDetCosmicsTrackRecoPreProcessingCfg
def InDetCosmicsTrackRecoPreProcessingCfg(flags)
Definition: TrackRecoConfig.py:110
python.AllConfigFlags.initConfigFlags
def initConfigFlags()
Definition: AllConfigFlags.py:19
python.TRTStandaloneConfig.TRTStandaloneCfg
def TRTStandaloneCfg(flags, InputCollections=None)
Definition: TRTStandaloneConfig.py:5
python.TrackRecoConfig.BackTrackingRecoCfg
def BackTrackingRecoCfg(flags, InputCombinedInDetTracks=None, InputExtendedInDetTracks=None, StatTrackCollections=None, StatTrackTruthCollections=None, ClusterSplitProbContainer="")
Definition: TrackRecoConfig.py:379
InDetPhysValDecorationConfig.InDetPhysHitDecoratorAlgCfg
def InDetPhysHitDecoratorAlgCfg(flags, name="InDetPhysHitDecoratorAlg", **kwargs)
Definition: InDetPhysValDecorationConfig.py:29
python.SCT_RawDataByteStreamCnvConfig.SCTEventFlagWriterCfg
def SCTEventFlagWriterCfg(flags, prefix="InDet", suffix="", **kwargs)
Definition: SCT_RawDataByteStreamCnvConfig.py:69
python.TRTSegmentFindingConfig.TRTSegmentFindingCfg
def TRTSegmentFindingCfg(flags, InputCollections=None)
Definition: TRTSegmentFindingConfig.py:5
python.TrackRecoConfig.TrackRecoConfigTest
def TrackRecoConfigTest(flags=None)
Definition: TrackRecoConfig.py:1005
python.InDetToolsConfig.TSOS_CommonKernelCfg
def TSOS_CommonKernelCfg(flags, name="TSOS_CommonKernel", listOfExtensions=[])
Definition: InDetToolsConfig.py:107
python.xAODEventInfoCnvConfig.EventInfoCnvAlgCfg
def EventInfoCnvAlgCfg(flags, name="EventInfoCnvAlg", inputKey="McEventInfo", outputKey="EventInfo", disableBeamSpot=False, **kwargs)
Definition: xAODEventInfoCnvConfig.py:11
python.TrkTrackCollectionMergerConfig.TrackCollectionMergerAlgCfg
def TrackCollectionMergerAlgCfg(flags, name="InDetTrackCollectionMerger", InputCombinedTracks=None, OutputCombinedTracks="", **kwargs)
Definition: TrkTrackCollectionMergerConfig.py:7
python.PoolReadConfig.PoolReadCfg
def PoolReadCfg(flags)
Definition: PoolReadConfig.py:69
python.InDetToolsConfig.SiSPSeedsTSOS_CommonKernelCfg
def SiSPSeedsTSOS_CommonKernelCfg(flags, name="SiSPSeedsTSOS_CommonKernel", listOfExtensions=[])
Definition: InDetToolsConfig.py:210
python.TrackRecoConfig.InDetStatsCfg
def InDetStatsCfg(flags, StatTrackCollections=None, StatTrackTruthCollections=None)
Definition: TrackRecoConfig.py:693
python.InDetToolsConfig.SiSPTSOS_CommonKernelCfg
def SiSPTSOS_CommonKernelCfg(flags, name="SiSPTSOS_CommonKernel", listOfExtensions=[])
Definition: InDetToolsConfig.py:240
xAODTrackingCnvConfig.TrackParticleCnvAlgCfg
def TrackParticleCnvAlgCfg(flags, name="TrackParticleCnvAlg", ClusterSplitProbabilityName="", AssociationMapName="", **kwargs)
TrackParticleCnvAlg.
Definition: xAODTrackingCnvConfig.py:97
python.BackTrackingConfig.BackTrackingCfg
def BackTrackingCfg(flags, InputCollections=None, ClusterSplitProbContainer='')
Definition: BackTrackingConfig.py:10
python.TrackRecoConfig.ObserverTrackFinalCfg
def ObserverTrackFinalCfg(flags)
Definition: TrackRecoConfig.py:608