ATLAS Offline Software
Functions
ActsTrackFittingConfig Namespace Reference

Functions

ComponentAccumulator ActsFitterCfg (flags, str name="ActsKalmanFitter", **kwargs)
 
ComponentAccumulator ActsReFitterAlgCfg (flags, str name="ActsReFitterAlg", **kwargs)
 
ComponentAccumulator forceITkActsReFitterAlgCfg (flags)
 
ComponentAccumulator writeAdditionalTracks (flags, str trackName='ResolvedTracks', str newTrackName='ReFitted_Tracks')
 

Function Documentation

◆ ActsFitterCfg()

ComponentAccumulator ActsTrackFittingConfig.ActsFitterCfg (   flags,
str   name = "ActsKalmanFitter",
**  kwargs 
)

Definition at line 8 of file ActsTrackFittingConfig.py.

8 def ActsFitterCfg(flags,
9  name: str = "ActsKalmanFitter",
10  **kwargs) -> ComponentAccumulator:
11  acc = ComponentAccumulator()
12 
13  if flags.Acts.fitFromPRD:
14  #RotCreatorTool and BroadRotCreatorTool for calibration purposes
15  if 'RotCreatorTool' not in kwargs:
16  from TrkConfig.TrkRIO_OnTrackCreatorConfig import ITkRotCreatorCfg
17  kwargs.setdefault('RotCreatorTool', acc.popToolsAndMerge(ITkRotCreatorCfg(flags)))
18 
19  if 'BroadRotCreatorTool' not in kwargs:
20  from TrkConfig.TrkRIO_OnTrackCreatorConfig import ITkBroadRotCreatorCfg
21  kwargs.setdefault('BroadRotCreatorTool', acc.popToolsAndMerge(ITkBroadRotCreatorCfg(flags)))
22 
23  # Make sure this is set correctly!
24  # /eos/project-a/acts/public/MaterialMaps/ATLAS/material-maps-Pixel-SCT.json
25 
26  if "TrackingGeometryTool" not in kwargs:
27  from ActsConfig.ActsGeometryConfig import ActsTrackingGeometryToolCfg
28  kwargs.setdefault("TrackingGeometryTool", acc.popToolsAndMerge(ActsTrackingGeometryToolCfg(flags)))
29 
30  if "ExtrapolationTool" not in kwargs:
31  from ActsConfig.ActsGeometryConfig import ActsExtrapolationToolCfg
32  kwargs.setdefault("ExtrapolationTool", acc.popToolsAndMerge(ActsExtrapolationToolCfg(flags, MaxSteps=10000)))
33 
34  if flags.Acts.trackFitterType is TrackFitterType.KalmanFitter:
35  kwargs.setdefault("ReverseFilteringPt", 1.0 * UnitConstants.GeV)
36  kwargs.setdefault("OverstepLimit", 300 * UnitConstants.um)
37 
38  if 'ATLASConverterTool' not in kwargs:
39  from ActsConfig.ActsEventCnvConfig import ActsToTrkConverterToolCfg
40  kwargs.setdefault('ATLASConverterTool', acc.popToolsAndMerge(ActsToTrkConverterToolCfg(flags)))
41 
42  if "SummaryTool" not in kwargs:
43  from TrkConfig.TrkTrackSummaryToolConfig import InDetTrackSummaryToolCfg
44  kwargs.setdefault('SummaryTool', acc.getPrimaryAndMerge(InDetTrackSummaryToolCfg(flags)))
45 
46  if 'BoundaryCheckTool' not in kwargs:
47  if flags.Detector.GeometryITk:
48  from InDetConfig.InDetBoundaryCheckToolConfig import ITkBoundaryCheckToolCfg
49  kwargs.setdefault("BoundaryCheckTool", acc.popToolsAndMerge(ITkBoundaryCheckToolCfg(flags)))
50  else:
51  from InDetConfig.InDetBoundaryCheckToolConfig import InDetBoundaryCheckToolCfg
52  kwargs.setdefault("BoundaryCheckTool",acc.popToolsAndMerge(InDetBoundaryCheckToolCfg(flags)))
53 
54  if flags.Acts.trackFitterType is TrackFitterType.KalmanFitter: # This flag is by default set to KalmanFitter
55  acc.setPrivateTools(CompFactory.ActsTrk.KalmanFitter(name, **kwargs))
56  elif flags.Acts.trackFitterType is TrackFitterType.GaussianSumFitter:
57  name = name.replace("KalmanFitter", "GaussianSumFitter")
58  acc.setPrivateTools(CompFactory.ActsTrk.GaussianSumFitter(name, **kwargs))
59 
60  return acc
61 
62 
63 

◆ ActsReFitterAlgCfg()

ComponentAccumulator ActsTrackFittingConfig.ActsReFitterAlgCfg (   flags,
str   name = "ActsReFitterAlg",
**  kwargs 
)

Definition at line 64 of file ActsTrackFittingConfig.py.

64 def ActsReFitterAlgCfg(flags,
65  name : str = "ActsReFitterAlg",
66  **kwargs) -> ComponentAccumulator:
67  acc = ComponentAccumulator()
68  kwargs.setdefault("ActsFitter", acc.popToolsAndMerge(ActsFitterCfg(flags)))
69  kwargs.setdefault("TrackName", "ResolvedTracks")
70  kwargs.setdefault("NewTrackName", "Refitted_Tracks")
71  kwargs.setdefault("DoReFitFromPRD", flags.Acts.fitFromPRD)
72  acc.addEventAlgo(CompFactory.ActsTrk.ReFitterAlg(name, **kwargs))
73 
74  if flags.Acts.writeTrackCollection:
75  acc.merge(writeAdditionalTracks(flags))
76 
77  return acc
78 

◆ forceITkActsReFitterAlgCfg()

ComponentAccumulator ActsTrackFittingConfig.forceITkActsReFitterAlgCfg (   flags)

Definition at line 79 of file ActsTrackFittingConfig.py.

79 def forceITkActsReFitterAlgCfg(flags) -> ComponentAccumulator:
80  #Use this flag in the --postInclude of ActsKfRefiting.sh to fit from the PRD (uncalibrated); Else to fit from the ROT (calibrated), use `(...).ActsReFitterAlgCfg` flag directly
81  flags = flags.cloneAndReplace("Tracking.ActiveConfig",
82  flags.Tracking.ITkPrimaryPassConfig.value)
83  return ActsReFitterAlgCfg(flags)
84 
85 

◆ writeAdditionalTracks()

ComponentAccumulator ActsTrackFittingConfig.writeAdditionalTracks (   flags,
str   trackName = 'ResolvedTracks',
str   newTrackName = 'ReFitted_Tracks' 
)

Definition at line 86 of file ActsTrackFittingConfig.py.

86 def writeAdditionalTracks(flags,
87  trackName: str = 'ResolvedTracks',
88  newTrackName: str ='ReFitted_Tracks') -> ComponentAccumulator:
89  acc = ComponentAccumulator()
90 
91  from xAODTrackingCnv.xAODTrackingCnvConfig import ITkTrackParticleCnvAlgCfg
92 
93  if flags.Tracking.doTruth:
94  from InDetConfig.ITkTrackTruthConfig import ITkTrackTruthCfg
95  acc.merge(ITkTrackTruthCfg(flags,
96  Tracks = trackName,
97  DetailedTruth = f"{trackName}DetailedTruth",
98  TracksTruth = f"{trackName}TruthCollection"))
99  acc.merge(ITkTrackTruthCfg(flags,
100  Tracks = newTrackName,
101  DetailedTruth = f"{newTrackName}DetailedTruth",
102  TracksTruth = f"{newTrackName}TruthCollection"))
103 
104  acc.merge(ITkTrackParticleCnvAlgCfg(flags,
105  name = f"{trackName}TrackParticleCnvAlg",
106  TrackContainerName = trackName,
107  xAODTrackParticlesFromTracksContainerName = f"{trackName}TrackParticles",
108  TrackTruthContainerName = f"{trackName}TruthCollection"))
109  acc.merge(ITkTrackParticleCnvAlgCfg(flags,
110  name = f"{newTrackName}TrackParticleCnvAlg",
111  TrackContainerName = newTrackName,
112  xAODTrackParticlesFromTracksContainerName = f"{newTrackName}TrackParticles",
113  TrackTruthContainerName = f"{newTrackName}TruthCollection"))
114 
115  from OutputStreamAthenaPool.OutputStreamConfig import addToESD, addToAOD
116  itemList = [f"xAOD::TrackParticleContainer#{trackName}TrackParticles",
117  f"xAOD::TrackParticleAuxContainer#{trackName}TrackParticlesAux.",
118  f"xAOD::TrackParticleContainer#{newTrackName}TrackParticles",
119  f"xAOD::TrackParticleAuxContainer#{newTrackName}TrackParticlesAux."]
120 
121  acc.merge(addToESD(flags, itemList))
122  acc.merge(addToAOD(flags, itemList))
123  return acc
124 
ActsTrackFittingConfig.forceITkActsReFitterAlgCfg
ComponentAccumulator forceITkActsReFitterAlgCfg(flags)
Definition: ActsTrackFittingConfig.py:79
python.TrkRIO_OnTrackCreatorConfig.ITkRotCreatorCfg
def ITkRotCreatorCfg(flags, name='ITkRotCreator', **kwargs)
Definition: TrkRIO_OnTrackCreatorConfig.py:134
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
python.ITkTrackTruthConfig.ITkTrackTruthCfg
def ITkTrackTruthCfg(flags, Tracks="CombinedITkTracks", DetailedTruth="CombinedITkTracksDetailedTrackTruth", TracksTruth="CombinedITkTracksTrackTruthCollection")
Definition: ITkTrackTruthConfig.py:10
ActsEventCnvConfig.ActsToTrkConverterToolCfg
ComponentAccumulator ActsToTrkConverterToolCfg(flags, str name="ActsToTrkConverterTool", **kwargs)
Definition: ActsEventCnvConfig.py:6
python.InDetBoundaryCheckToolConfig.ITkBoundaryCheckToolCfg
def ITkBoundaryCheckToolCfg(flags, name='ITkBoundaryCheckTool', **kwargs)
Definition: InDetBoundaryCheckToolConfig.py:102
ActsTrackFittingConfig.ActsReFitterAlgCfg
ComponentAccumulator ActsReFitterAlgCfg(flags, str name="ActsReFitterAlg", **kwargs)
Definition: ActsTrackFittingConfig.py:64
xAODTrackingCnvConfig.ITkTrackParticleCnvAlgCfg
def ITkTrackParticleCnvAlgCfg(flags, name="ITkTrackParticleCnvAlg", ClusterSplitProbabilityName="", AssociationMapName="", bool isActsAmbi=False, **kwargs)
Definition: xAODTrackingCnvConfig.py:283
python.TrkTrackSummaryToolConfig.InDetTrackSummaryToolCfg
def InDetTrackSummaryToolCfg(flags, name='InDetTrackSummaryTool', **kwargs)
Definition: TrkTrackSummaryToolConfig.py:22
ActsGeometryConfig.ActsExtrapolationToolCfg
ComponentAccumulator ActsExtrapolationToolCfg(flags, str name="ActsExtrapolationTool", **kwargs)
Definition: ActsGeometryConfig.py:108
ActsGeometryConfig.ActsTrackingGeometryToolCfg
ComponentAccumulator ActsTrackingGeometryToolCfg(flags, str name="ActsTrackingGeometryTool")
Definition: ActsGeometryConfig.py:99
python.InDetBoundaryCheckToolConfig.InDetBoundaryCheckToolCfg
def InDetBoundaryCheckToolCfg(flags, name='InDetBoundarySearchTool', **kwargs)
Definition: InDetBoundaryCheckToolConfig.py:7
python.OutputStreamConfig.addToESD
def addToESD(flags, itemOrList, **kwargs)
Definition: OutputStreamConfig.py:127
ActsTrackFittingConfig.writeAdditionalTracks
ComponentAccumulator writeAdditionalTracks(flags, str trackName='ResolvedTracks', str newTrackName='ReFitted_Tracks')
Definition: ActsTrackFittingConfig.py:86
python.OutputStreamConfig.addToAOD
def addToAOD(flags, itemOrList, **kwargs)
Definition: OutputStreamConfig.py:142
ActsTrackFittingConfig.ActsFitterCfg
ComponentAccumulator ActsFitterCfg(flags, str name="ActsKalmanFitter", **kwargs)
Definition: ActsTrackFittingConfig.py:8
python.TrkRIO_OnTrackCreatorConfig.ITkBroadRotCreatorCfg
def ITkBroadRotCreatorCfg(flags, name='ITkBroadRotCreator', **kwargs)
Definition: TrkRIO_OnTrackCreatorConfig.py:156