68 icf = AthConfigFlags()
71 icf.addFlag(
"Tracking.doTruth",
lambda prevFlags: prevFlags.Input.isMC
or
72 (prevFlags.Common.ProductionStep
is not ProductionStep.MinbiasPreprocessing
and prevFlags.Overlay.DataOverlay))
75 icf.addFlag(
"Tracking.trackFitterType",
76 TrackFitterType.GlobalChi2Fitter, type=TrackFitterType)
78 icf.addFlag(
"Tracking.kalmanUpdator",
79 KalmanUpdatorType.KalmanUpdatorSMatrix, type=KalmanUpdatorType)
81 icf.addFlag(
"Tracking.materialInteractions",
lambda prevFlags:
82 prevFlags.Beam.Type
is not BeamType.SingleBeam)
85 icf.addFlag(
"Tracking.materialInteractionsType",
lambda prevFlags:
86 2
if prevFlags.Beam.Type
is BeamType.Cosmics
else 3)
89 icf.addFlag(
"Tracking.doBremRecovery",
lambda prevFlags: (
90 prevFlags.Detector.EnableCalo
and
91 not (prevFlags.Tracking.PrimaryPassConfig
in
92 [PrimaryPassConfig.VtxLumi, PrimaryPassConfig.VtxLumiHeavyIon, PrimaryPassConfig.VtxBeamSpot]
or
93 prevFlags.Tracking.doLowMu
or
94 prevFlags.Beam.Type
is not BeamType.Collisions
or
95 not prevFlags.BField.solenoidOn)))
96 icf.addFlag(
"Tracking.doCaloSeededBrem",
lambda prevFlags: (
97 prevFlags.Detector.EnableCalo
and prevFlags.Tracking.doBremRecovery))
98 icf.addFlag(
"Tracking.phiWidthBrem", 0.3)
99 icf.addFlag(
"Tracking.etaWidthBrem", 0.2)
101 icf.addFlag(
"Tracking.doHadCaloSeededSSS",
False)
103 icf.addFlag(
"Tracking.doCaloSeededAmbi",
lambda prevFlags:
104 prevFlags.Detector.EnableCalo)
106 icf.addFlag(
"Tracking.doSharedHits",
True)
108 icf.addFlag(
"Tracking.doTIDE_Ambi",
lambda prevFlags:
109 not (prevFlags.Beam.Type
is BeamType.Cosmics))
111 icf.addFlag(
"Tracking.doPixelDigitalClustering",
False)
113 icf.addFlag(
"Tracking.doPixelClusterSplitting",
114 lambda prevFlags:
not (prevFlags.Beam.Type
is BeamType.Cosmics))
116 icf.addFlag(
"Tracking.pixelClusterSplittingType",
lambda prevFlags:
117 PixelClusterSplittingType.NeuralNet
118 if prevFlags.GeoModel.Run <= LHCPeriod.Run3
119 else PixelClusterSplittingType.Truth,
120 type=PixelClusterSplittingType)
122 icf.addFlag(
"Tracking.pixelClusterSplitProb1",
124 0.5
if prevFlags.GeoModel.Run
is LHCPeriod.Run1
else 0.55))
126 icf.addFlag(
"Tracking.pixelClusterSplitProb2",
128 0.5
if prevFlags.GeoModel.Run
is LHCPeriod.Run1
else 0.45))
130 icf.addFlag(
"Tracking.doSkipAmbiROI",
False)
133 icf.addFlag(
"Tracking.TopoClusters",
"CaloTopoClusters")
134 icf.addFlag(
"Tracking.EgammaTopoClusters",
"egammaTopoClusters")
137 icf.addFlag(
"Tracking.perigeeExpression",
lambda prevFlags:
138 "Vertex" if (prevFlags.Tracking.PrimaryPassConfig
in [
139 PrimaryPassConfig.HeavyIon, PrimaryPassConfig.VtxLumiHeavyIon]
or
140 prevFlags.Tracking.ITkPrimaryPassConfig
in [
141 ITkPrimaryPassConfig.HeavyIon, ITkPrimaryPassConfig.ActsHeavyIon]
146 icf.addFlag(
"Tracking.doEndcapEtaOverlapSpacePoint",
lambda prevFlags: prevFlags.ITk.doEndcapEtaNeighbour)
150 def doLargeD0(flags):
151 if flags.GeoModel.Run <= LHCPeriod.Run3:
152 return not ((flags.Beam.Type
in
153 [BeamType.SingleBeam, BeamType.Cosmics])
or
154 flags.Tracking.PrimaryPassConfig
in [
155 PrimaryPassConfig.HeavyIon,
156 PrimaryPassConfig.UPC,
157 PrimaryPassConfig.HIP,
158 PrimaryPassConfig.VtxLumi,
159 PrimaryPassConfig.VtxLumiHeavyIon,
160 PrimaryPassConfig.VtxBeamSpot,
161 PrimaryPassConfig.HighPileup])
165 icf.addFlag(
"Tracking.doLargeD0", doLargeD0)
166 icf.addFlag(
"Tracking.storeSeparateLargeD0Container",
True)
169 icf.addFlag(
"Tracking.storeBeamLineTrackParticles",
lambda prevFlags: prevFlags.Overlay.DataOverlay)
172 icf.addFlag(
"Tracking.doLowMu",
False)
174 icf.addFlag(
"Tracking.doLowPt",
175 lambda prevFlags: prevFlags.Tracking.doLowMu)
178 icf.addFlag(
"Tracking.doStoreTrackSeeds",
False)
180 icf.addFlag(
"Tracking.doStoreSiSPSeededTracks",
False)
182 icf.addFlag(
"Tracking.writeSeedValNtuple",
False)
184 icf.addFlag(
"Tracking.writeExtendedSi_PRDInfo",
False)
185 icf.addFlag(
"Tracking.writeExtendedTRT_PRDInfo",
False)
186 icf.addFlag(
"Tracking.PRDInfo.KeepOnlyOnTrackMeasurements",
False)
190 icf.addFlag(
"Tracking.thinPixelClustersOnTrack",
False)
191 icf.addFlag(
"Tracking.thinSCTClustersOnTrack",
False)
192 icf.addFlag(
"Tracking.thinTRTClustersOnTrack",
False)
193 icf.addFlag(
"Tracking.thinInDetClustersOnTrack",
195 prevFlags.Tracking.thinPixelClustersOnTrack
or
196 prevFlags.Tracking.thinSCTClustersOnTrack
or
197 prevFlags.Tracking.thinTRTClustersOnTrack ))
200 icf.addFlag(
"Tracking.thinInDetClustersTrackContainers", [
"InDetTrackParticles"])
201 icf.addFlag(
"Tracking.thinInDetClustersPixelMSOSContainers", [
"PixelMSOSs"])
202 icf.addFlag(
"Tracking.thinInDetClustersSCTMSOSContainers", [
"SCT_MSOSs"])
203 icf.addFlag(
"Tracking.thinInDetClustersTRTMSOSContainers", [
"TRT_MSOSs"])
204 icf.addFlag(
"Tracking.thinInDetClustersSelectionStrings", [
"InDetTrackParticles.pt > (1*GeV)"])
207 icf.addFlag(
"Tracking.doSlimming",
lambda prevFlags:
208 not (prevFlags.Beam.Type
in
209 [BeamType.SingleBeam, BeamType.Cosmics]
or
210 prevFlags.Tracking.PrimaryPassConfig
in [
211 PrimaryPassConfig.VtxLumi,
212 PrimaryPassConfig.VtxLumiHeavyIon,
213 PrimaryPassConfig.VtxBeamSpot,
214 PrimaryPassConfig.HighPileup]))
221 icf.addFlag(
"Tracking.useNewParamTRT",
lambda prevFlags:
222 prevFlags.Tracking.PrimaryPassConfig
is not(
223 PrimaryPassConfig.HeavyIon))
226 icf.addFlag(
"Tracking.BackTracking.doRoISeeded",
lambda prevFlags:
227 prevFlags.Detector.EnableCalo
and not(
228 prevFlags.Tracking.doLowMu
or
229 prevFlags.Tracking.PrimaryPassConfig
is (
230 PrimaryPassConfig.HeavyIon)
or
231 prevFlags.Beam.Type
is BeamType.Cosmics
or
232 prevFlags.Tracking.doMinBias))
235 def BackTrackingMinPt(flags):
236 if flags.Tracking.doMinBias:
237 return 0.4 * Units.GeV * flags.BField.configuredSolenoidFieldScale
238 elif (flags.Tracking.doLowMu
or
239 flags.Tracking.PrimaryPassConfig
in [
240 PrimaryPassConfig.HeavyIon, PrimaryPassConfig.VtxLumiHeavyIon]
or
241 flags.Beam.Type
is BeamType.Cosmics):
242 return 1.0 * Units.GeV * flags.BField.configuredSolenoidFieldScale
244 return 3.0 * Units.GeV * flags.BField.configuredSolenoidFieldScale
245 icf.addFlag(
"Tracking.BackTracking.minPt", BackTrackingMinPt)
246 icf.addFlag(
"Tracking.BackTracking.TRTSegFinderPtBins", 50)
247 icf.addFlag(
"Tracking.BackTracking.maxTRTSharedFrac", 0.7)
248 icf.addFlag(
"Tracking.BackTracking.maxSecondaryImpact", 100.0 * Units.mm)
249 icf.addFlag(
"Tracking.BackTracking.minClusters", 4)
250 icf.addFlag(
"Tracking.BackTracking.minSiNotShared", 4)
252 icf.addFlag(
"Tracking.BackTracking.maxShared", 1)
253 icf.addFlag(
"Tracking.BackTracking.minTRT",
lambda prevFlags:
254 10
if (prevFlags.Tracking.doLowMu
or
255 prevFlags.Tracking.PrimaryPassConfig
is (
256 PrimaryPassConfig.HeavyIon))
258 icf.addFlag(
"Tracking.BackTracking.minTRTPrecFrac",
lambda prevFlags:
259 0.
if (prevFlags.Tracking.doLowMu
or
260 prevFlags.Tracking.PrimaryPassConfig
is (
261 PrimaryPassConfig.HeavyIon))
264 icf.addFlag(
"Tracking.BackTracking.maxHoles",
lambda prevFlags:
265 2
if (prevFlags.Tracking.doLowMu
or
266 prevFlags.Tracking.PrimaryPassConfig
is (
267 PrimaryPassConfig.HeavyIon))
269 icf.addFlag(
"Tracking.BackTracking.maxPixelHoles",
lambda prevFlags:
270 2
if (prevFlags.Tracking.doLowMu
or
271 prevFlags.Tracking.PrimaryPassConfig
is (
272 PrimaryPassConfig.HeavyIon))
274 icf.addFlag(
"Tracking.BackTracking.maxSCTHoles",
lambda prevFlags:
275 2
if (prevFlags.Tracking.doLowMu
or
276 prevFlags.Tracking.PrimaryPassConfig
is (
277 PrimaryPassConfig.HeavyIon))
279 icf.addFlag(
"Tracking.BackTracking.maxDoubleHoles",
lambda prevFlags:
280 1
if (prevFlags.Tracking.doLowMu
or
281 prevFlags.Tracking.PrimaryPassConfig
is (
282 PrimaryPassConfig.HeavyIon))
284 icf.addFlag(
"Tracking.BackTracking.nHolesMax", 2)
285 icf.addFlag(
"Tracking.BackTracking.nHolesGapMax", 2)
288 icf.addFlag(
"Tracking.BackTracking.rejectShortExtensions",
lambda prevFlags:
289 not(prevFlags.Beam.Type
is BeamType.Cosmics
or
290 prevFlags.Tracking.doLowMu
or
291 prevFlags.Tracking.PrimaryPassConfig
is (
292 PrimaryPassConfig.HeavyIon)))
294 icf.addFlag(
"Tracking.BackTracking.SiExtensionCuts",
lambda prevFlags:
295 not(prevFlags.Tracking.doLowMu
or
296 prevFlags.Tracking.PrimaryPassConfig
is (
297 PrimaryPassConfig.HeavyIon)))
298 icf.addFlag(
"Tracking.BackTracking.minRoIClusterEt",
lambda prevFlags:
299 0.
if (prevFlags.Tracking.doLowMu
or
300 prevFlags.Tracking.PrimaryPassConfig
in [
301 PrimaryPassConfig.HeavyIon, PrimaryPassConfig.VtxLumiHeavyIon]
or
302 prevFlags.Beam.Type
is BeamType.Cosmics
or
303 prevFlags.Tracking.doMinBias)
304 else 6.*Units.GeV * prevFlags.BField.configuredSolenoidFieldScale)
307 def TRTStandaloneMinPt(flags):
308 if flags.Tracking.doMinBias:
309 return 0.4 * Units.GeV * flags.BField.configuredSolenoidFieldScale
310 elif flags.Tracking.doLowMu
or (
311 flags.Tracking.PrimaryPassConfig
is PrimaryPassConfig.HeavyIon):
312 return 1.0 * Units.GeV * flags.BField.configuredSolenoidFieldScale
314 return 2.0 * Units.GeV * flags.BField.configuredSolenoidFieldScale
315 icf.addFlag(
"Tracking.TRTStandalone.minPt", TRTStandaloneMinPt)
316 icf.addFlag(
"Tracking.TRTStandalone.minTRTPrecFrac", 0.15)
317 icf.addFlag(
"Tracking.TRTStandalone.minTRT", 15)
320 icf.addFlag(
"Tracking.TRTStandalone.startAtOriginalPerigee",
322 (
not prevFlags.Input.isMC
and prevFlags.Input.DataYear >= 2025)
or
323 (prevFlags.Input.isMC
and prevFlags.Input.MCCampaign >= Campaign.MC23g)))
326 icf.addFlag(
"Tracking.doStats",
False)
328 icf.addFlag(
"Tracking.doTIDE_AmbiTrackMonitoring",
False)
330 icf.addFlag(
"Tracking.useBeamSpotInfoNN",
True)
332 icf.addFlag(
"Tracking.nnCutLargeD0Threshold", -1.0)
334 icf.addFlag(
"Tracking.useBroadPixClusterErrors",
False)
336 icf.addFlag(
"Tracking.useBroadSCTClusterErrors",
False)
341 icf.addFlag(
"Tracking.doTrackSegmentsPixel",
343 prevFlags.Detector.EnablePixel
and (
344 prevFlags.Tracking.doMinBias
or
345 prevFlags.Tracking.doLowMu
or
346 prevFlags.Beam.Type
is BeamType.Cosmics)))
348 icf.addFlag(
"Tracking.doTrackSegmentsSCT",
350 prevFlags.Detector.EnableSCT
and (
351 prevFlags.Tracking.doLowMu
or
352 prevFlags.Beam.Type
is BeamType.Cosmics)))
354 icf.addFlag(
"Tracking.doTrackSegmentsTRT",
356 prevFlags.Detector.EnableTRT
and
357 (prevFlags.Tracking.doLowMu
or
358 prevFlags.Beam.Type
is BeamType.Cosmics)))
360 icf.addFlag(
"Tracking.doTRTExtension",
361 lambda prevFlags: prevFlags.Detector.EnableTRT)
363 icf.addFlag(
"Tracking.doTRTSegments",
364 lambda prevFlags: (prevFlags.Detector.EnableTRT
and
365 (prevFlags.Tracking.doBackTracking
or
366 prevFlags.Tracking.doTRTStandalone)))
368 icf.addFlag(
"Tracking.doBackTracking",
lambda prevFlags: (
369 prevFlags.Detector.EnableTRT
and
370 not(prevFlags.Beam.Type
in [BeamType.SingleBeam, BeamType.Cosmics]
or
371 prevFlags.Tracking.PrimaryPassConfig
in [
372 PrimaryPassConfig.HeavyIon,
373 PrimaryPassConfig.VtxLumi,
374 PrimaryPassConfig.VtxLumiHeavyIon,
375 PrimaryPassConfig.VtxBeamSpot,
376 PrimaryPassConfig.HighPileup])))
378 icf.addFlag(
"Tracking.doTRTStandalone",
lambda prevFlags: (
379 prevFlags.Detector.EnableTRT
and
380 not(prevFlags.Tracking.PrimaryPassConfig
in [
381 PrimaryPassConfig.HeavyIon,
382 PrimaryPassConfig.VtxLumi,
383 PrimaryPassConfig.VtxLumiHeavyIon,
384 PrimaryPassConfig.VtxBeamSpot,
385 PrimaryPassConfig.HighPileup])))
388 icf.addFlag(
"Tracking.doForwardTracks",
lambda prevFlags: (
389 prevFlags.Detector.EnablePixel
and
390 not(prevFlags.Beam.Type
in [BeamType.SingleBeam, BeamType.Cosmics]
or
391 prevFlags.Tracking.PrimaryPassConfig
in [
392 PrimaryPassConfig.HeavyIon,
393 PrimaryPassConfig.VtxLumi,
394 PrimaryPassConfig.VtxLumiHeavyIon,
395 PrimaryPassConfig.VtxBeamSpot,
396 PrimaryPassConfig.HighPileup]
or
397 prevFlags.Tracking.doMinBias
or
398 prevFlags.Tracking.doLowMu)))
400 def doTrackSegmentsDisappearing(flags):
401 if flags.GeoModel.Run <= LHCPeriod.Run3:
402 return not((flags.Tracking.PrimaryPassConfig
is
403 PrimaryPassConfig.HeavyIon)
or
404 flags.Beam.Type
is BeamType.Cosmics)
407 icf.addFlag(
"Tracking.doTrackSegmentsDisappearing", doTrackSegmentsDisappearing)
410 icf.addFlag(
"Tracking.doVeryLowPt",
False)
412 icf.addFlag(
"Tracking.doLowPtLargeD0",
False)
414 icf.addFlag(
"Tracking.doLowPtRoI",
False)
416 icf.addFlag(
"Tracking.doUPC",
lambda prevFlags: prevFlags.Reco.HIMode
is HIMode.UPC)
418 icf.addFlag(
"Tracking.doHIP",
lambda prevFlags: prevFlags.Reco.HIMode
is HIMode.HIP)
420 icf.addFlag(
"Tracking.doMinBias",
lambda prevFlags:
421 prevFlags.Tracking.doUPC
or prevFlags.Tracking.doHIP)
423 icf.addFlag(
"Tracking.doBeamGas",
424 lambda prevFlags: prevFlags.Beam.Type
is BeamType.SingleBeam)
426 icf.addFlag(
"Tracking.doBLS",
False)
429 icf.addFlag(
"Tracking.doPseudoTracking",
False)
431 icf.addFlag(
"Tracking.doIdealPseudoTracking",
False)
438 icf.addFlag(
"Tracking.doITkFastTracking",
False)
441 icf.addFlag(
"Tracking.doITkConversion",
lambda prevFlags: (
442 not prevFlags.Tracking.doITkFastTracking
and prevFlags.Detector.EnableCalo))
446 icf.addFlag(
"Tracking.useITkFTF",
False)
449 from InDetGNNTracking.InDetGNNTrackingConfigFlags
import createGNNTrackingConfigFlags
450 icf.join(createGNNTrackingConfigFlags())
453 icf.addFlag(
"Tracking.recoChain", [TrackingComponent.AthenaChain])
461 from TrkConfig.TrackingPassFlags
import (
462 createTrackingPassFlags, createHighPileupTrackingPassFlags,
463 createMinBiasTrackingPassFlags, createUPCTrackingPassFlags,
464 createHIPTrackingPassFlags, createR3LargeD0TrackingPassFlags,
465 createLowPtLargeD0TrackingPassFlags,
466 createLowPtTrackingPassFlags, createVeryLowPtTrackingPassFlags,
467 createLowPtRoITrackingPassFlags, createForwardTracksTrackingPassFlags,
468 createBeamGasTrackingPassFlags, createVtxLumiTrackingPassFlags, createVtxLumiHeavyIonTrackingPassFlags,
469 createVtxBeamSpotTrackingPassFlags, createCosmicsTrackingPassFlags,
470 createHeavyIonTrackingPassFlags, createPixelTrackingPassFlags,
471 createDisappearingTrackingPassFlags, createSCTTrackingPassFlags,
472 createTRTTrackingPassFlags, createTRTStandaloneTrackingPassFlags)
474 def primaryPass(flags):
475 if flags.Beam.Type
is BeamType.Cosmics:
476 return PrimaryPassConfig.Cosmics
477 elif flags.Reco.EnableHI:
478 if flags.Tracking.doUPC:
479 return PrimaryPassConfig.UPC
480 elif flags.Tracking.doHIP:
481 return PrimaryPassConfig.HIP
483 return PrimaryPassConfig.HeavyIon
484 elif flags.Tracking.doMinBias:
485 return PrimaryPassConfig.MinBias
487 return PrimaryPassConfig.Default
489 icf.addFlag(
"Tracking.PrimaryPassConfig",
lambda prevFlags:
490 primaryPass(prevFlags), type=PrimaryPassConfig)
493 icf.addFlagsCategory(
"Tracking.MainPass",
494 createTrackingPassFlags, prefix=
True)
495 icf.addFlagsCategory(
"Tracking.HighPileupPass",
496 createHighPileupTrackingPassFlags, prefix=
True)
497 icf.addFlagsCategory(
"Tracking.UPCPass",
498 createUPCTrackingPassFlags, prefix=
True)
499 icf.addFlagsCategory(
"Tracking.HIPPass",
500 createHIPTrackingPassFlags, prefix=
True)
501 icf.addFlagsCategory(
"Tracking.MinBiasPass",
502 createMinBiasTrackingPassFlags, prefix=
True)
503 icf.addFlagsCategory(
"Tracking.R3LargeD0Pass",
504 createR3LargeD0TrackingPassFlags, prefix=
True)
505 icf.addFlagsCategory(
"Tracking.LowPtLargeD0Pass",
506 createLowPtLargeD0TrackingPassFlags, prefix=
True)
507 icf.addFlagsCategory(
"Tracking.LowPtPass",
508 createLowPtTrackingPassFlags, prefix=
True)
509 icf.addFlagsCategory(
"Tracking.VeryLowPtPass",
510 createVeryLowPtTrackingPassFlags, prefix=
True)
511 icf.addFlagsCategory(
"Tracking.LowPtRoIPass",
512 createLowPtRoITrackingPassFlags, prefix=
True)
513 icf.addFlagsCategory(
"Tracking.ForwardPass",
514 createForwardTracksTrackingPassFlags, prefix=
True)
515 icf.addFlagsCategory(
"Tracking.BeamGasPass",
516 createBeamGasTrackingPassFlags, prefix=
True)
517 icf.addFlagsCategory(
"Tracking.VtxLumiPass",
518 createVtxLumiTrackingPassFlags, prefix=
True)
519 icf.addFlagsCategory(
"Tracking.VtxLumiHeavyIonPass",
520 createVtxLumiHeavyIonTrackingPassFlags, prefix=
True)
521 icf.addFlagsCategory(
"Tracking.VtxBeamSpotPass",
522 createVtxBeamSpotTrackingPassFlags, prefix=
True)
523 icf.addFlagsCategory(
"Tracking.CosmicsPass",
524 createCosmicsTrackingPassFlags, prefix=
True)
525 icf.addFlagsCategory(
"Tracking.HeavyIonPass",
526 createHeavyIonTrackingPassFlags, prefix=
True)
527 icf.addFlagsCategory(
"Tracking.PixelPass",
528 createPixelTrackingPassFlags, prefix=
True)
529 icf.addFlagsCategory(
"Tracking.DisappearingPass",
530 createDisappearingTrackingPassFlags, prefix=
True)
531 icf.addFlagsCategory(
"Tracking.SCTPass",
532 createSCTTrackingPassFlags, prefix=
True)
533 icf.addFlagsCategory(
"Tracking.TRTPass",
534 createTRTTrackingPassFlags, prefix=
True)
535 icf.addFlagsCategory(
"Tracking.TRTStandalonePass",
536 createTRTStandaloneTrackingPassFlags, prefix=
True)
540 from TrkConfig.TrackingPassFlags
import (
541 createITkTrackingPassFlags, createITkLargeD0TrackingPassFlags,
542 createITkConversionTrackingPassFlags,
543 createITkFastTrackingPassFlags, createITkLargeD0FastTrackingPassFlags,
544 createITkFTFPassFlags, createITkFTFLargeD0PassFlags, createITkLowPtTrackingPassFlags,
545 createITkHeavyIonTrackingPassFlags)
547 def itkPrimaryPass(flags):
548 if flags.Tracking.useITkFTF:
549 return ITkPrimaryPassConfig.FTF
550 elif TrackingComponent.ActsChain
in flags.Tracking.recoChain:
551 return ITkPrimaryPassConfig.Acts
552 elif TrackingComponent.ActsLegacyChain
in flags.Tracking.recoChain:
553 return ITkPrimaryPassConfig.ActsLegacy
554 elif TrackingComponent.ActsHeavyIon
in flags.Tracking.recoChain:
555 return ITkPrimaryPassConfig.ActsHeavyIon
556 elif flags.Tracking.doITkFastTracking:
557 return ITkPrimaryPassConfig.FastTracking
558 elif flags.Reco.EnableHI:
559 return ITkPrimaryPassConfig.HeavyIon
561 return ITkPrimaryPassConfig.Default
563 icf.addFlag(
"Tracking.ITkPrimaryPassConfig",
lambda prevFlags:
564 itkPrimaryPass(prevFlags), type=ITkPrimaryPassConfig)
566 icf.addFlagsCategory (
"Tracking.ITkMainPass",
567 createITkTrackingPassFlags, prefix=
True)
568 icf.addFlagsCategory (
"Tracking.ITkLargeD0Pass",
569 createITkLargeD0TrackingPassFlags, prefix=
True)
570 icf.addFlagsCategory (
"Tracking.ITkConversionPass",
571 createITkConversionTrackingPassFlags, prefix=
True)
572 icf.addFlagsCategory (
"Tracking.ITkLowPtPass",
573 createITkLowPtTrackingPassFlags, prefix=
True)
574 icf.addFlagsCategory (
"Tracking.ITkFastPass",
575 createITkFastTrackingPassFlags, prefix=
True)
576 icf.addFlagsCategory (
"Tracking.ITkLargeD0FastPass",
577 createITkLargeD0FastTrackingPassFlags, prefix=
True)
578 icf.addFlagsCategory (
"Tracking.ITkFTFPass",
579 createITkFTFPassFlags, prefix=
True)
580 icf.addFlagsCategory (
"Tracking.ITkFTFLargeD0Pass",
581 createITkFTFLargeD0PassFlags, prefix=
True)
582 icf.addFlagsCategory (
"Tracking.ITkHeavyIonPass",
583 createITkHeavyIonTrackingPassFlags, prefix=
True)
586 from ActsConfig.ActsTrackingPassFlags
import (
587 createActsTrackingPassFlags,
588 createActsLegacyTrackingPassFlags,
589 createActsLargeRadiusTrackingPassFlags,
590 createActsConversionTrackingPassFlags,
591 createActsLowPtTrackingPassFlags,
592 createActsValidateClustersTrackingPassFlags,
593 createActsValidateLargeRadiusStandaloneTrackingPassFlags,
594 createActsValidateTracksTrackingPassFlags,
595 createActsValidateAmbiguityResolutionTrackingPassFlags,
596 createActsHeavyIonTrackingPassFlags,
597 createEFValidateF100TrackingPassFlags,
598 createEFValidateF150TrackingPassFlags
601 icf.addFlagsCategory (
"Tracking.ITkActsPass",
602 createActsTrackingPassFlags, prefix=
True)
603 icf.addFlagsCategory (
"Tracking.ITkActsLegacyPass",
604 createActsLegacyTrackingPassFlags, prefix=
True)
605 icf.addFlagsCategory (
"Tracking.ITkActsLargeRadiusPass",
606 createActsLargeRadiusTrackingPassFlags, prefix=
True)
607 icf.addFlagsCategory (
'Tracking.ITkActsConversionPass',
608 createActsConversionTrackingPassFlags, prefix=
True)
609 icf.addFlagsCategory (
'Tracking.ITkActsLowPtPass',
610 createActsLowPtTrackingPassFlags, prefix=
True)
611 icf.addFlagsCategory (
"Tracking.ITkActsValidateClustersPass",
612 createActsValidateClustersTrackingPassFlags, prefix=
True)
613 icf.addFlagsCategory (
"Tracking.ITkActsValidateLargeRadiusStandalonePass",
614 createActsValidateLargeRadiusStandaloneTrackingPassFlags, prefix=
True)
615 icf.addFlagsCategory (
"Tracking.ITkActsValidateTracksPass",
616 createActsValidateTracksTrackingPassFlags, prefix=
True)
617 icf.addFlagsCategory (
"Tracking.ITkActsValidateAmbiguityResolutionPass",
618 createActsValidateAmbiguityResolutionTrackingPassFlags, prefix=
True)
619 icf.addFlagsCategory (
"Tracking.ITkActsHeavyIonPass",
620 createActsHeavyIonTrackingPassFlags, prefix=
True)
623 icf.addFlagsCategory (
"Tracking.ITkActsValidateF100Pass",
624 createEFValidateF100TrackingPassFlags, prefix=
True)
627 icf.addFlagsCategory (
"Tracking.ITkActsValidateF150Pass",
628 createEFValidateF150TrackingPassFlags, prefix=
True)
631 from InDetGNNTracking.InDetGNNTrackingFlags
import createGNNTrackingPassFlags
632 icf.addFlagsCategory (
"Tracking.ITkGNNPass",
633 createGNNTrackingPassFlags, prefix=
True)
635 from TrkConfig.InDetFPGATrackingFlags
import createFPGATrackingPassFlags
636 icf.addFlagsCategory (
"Tracking.ITkFPGAPass",
637 createFPGATrackingPassFlags, prefix=
True)
643 from TrkConfig.VertexFindingFlags
import createPriVertexingFlags
644 icf.addFlagsCategory(
"Tracking.PriVertex",
645 createPriVertexingFlags, prefix=
True)
648 icf.addFlag(
"Tracking.doVertexFinding",
649 lambda prevFlags: prevFlags.Beam.Type
is not BeamType.Cosmics)
651 icf.addFlag(
"Tracking.doV0Finder",
False)
653 icf.addFlag(
'Tracking.TruthClusterSplittingEff', 0.9)
656 icf.addFlag(
"Tracking.dumpGBTSTrainingData", 0)