Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
Functions
python.ITkActsHelpers Namespace Reference

Functions

bool isPrimaryPass (flags)
 
bool primaryPassUsesActs (flags)
 
list extractTrackingPasses (flags)
 

Function Documentation

◆ extractTrackingPasses()

list python.ITkActsHelpers.extractTrackingPasses (   flags)

Definition at line 13 of file ITkActsHelpers.py.

13 def extractTrackingPasses(flags) -> list:
14  # Function for extracting the requested tracking passes that need to be scheduled
15  trackingPasses = []
16 
17  # Check there is only one chain
18  # for the time being we still technically allow for a list, but we should move to a single value eventually
19  if len(flags.Tracking.recoChain) != 1:
20  raise ValueError(f"Conflicting reco configuration: Tracking.recoChain should have only one element but we found {flags.Tracking.recoChain}")
21 
22  # Quick check about fast tracking configuration
23  from TrkConfig.TrkConfigFlags import ITkPrimaryPassConfig
24  if flags.Tracking.ITkPrimaryPassConfig is ITkPrimaryPassConfig.ActsFast:
25  if not flags.Tracking.doITkFastTracking:
26  raise ValueError(f"Main pass is set to Fast Tracking but Tracking.doITkFastTracking is set to {flags.Tracking.doITkFastTracking}")
27  else:
28  if flags.Tracking.doITkFastTracking:
29  raise ValueError(f"Main pass is NOT set to Fast Tracking but Tracking.doITkFastTracking is set to {flags.Tracking.doITkFastTracking}")
30 
31  # Primary pass
32  trackingPasses += [flags.cloneAndReplace(
33  "Tracking.ActiveConfig",
34  f"Tracking.{flags.Tracking.ITkPrimaryPassConfig.value}Pass")]
35 
36  # Large Radius pass
37  if flags.Acts.doLargeRadius:
38  trackingPasses += [flags.cloneAndReplace(
39  "Tracking.ActiveConfig",
40  "Tracking.ITkActsLargeRadiusPass")]
41 
42  # Conversion pass
43  if flags.Acts.doITkConversion:
44  # Check that we can schedule the conversion
45  if not flags.Detector.EnableCalo:
46  raise ValueError("Problem in the job configuration: required reconstruction of photon conversion tracks but Calorimeter Detector is not enabled")
47  trackingPasses += [flags.cloneAndReplace(
48  "Tracking.ActiveConfig",
49  "Tracking.ITkActsConversionPass")]
50 
51  # Low pT pass
52  if flags.Acts.doLowPt:
53  trackingPasses += [flags.cloneAndReplace(
54  "Tracking.ActiveConfig",
55  "Tracking.ITkActsLowPtPass")]
56 
57  print("List of scheduled passes:")
58  for trackingPass in trackingPasses:
59  print(f'- {trackingPass.Tracking.ActiveConfig.extension}')
60 
61  return trackingPasses
62 

◆ isPrimaryPass()

bool python.ITkActsHelpers.isPrimaryPass (   flags)

Definition at line 3 of file ITkActsHelpers.py.

3 def isPrimaryPass(flags) -> bool:
4  return f"{flags.Tracking.ITkPrimaryPassConfig.value}Pass" not in flags.Tracking
5 

◆ primaryPassUsesActs()

bool python.ITkActsHelpers.primaryPassUsesActs (   flags)

Definition at line 6 of file ITkActsHelpers.py.

6 def primaryPassUsesActs(flags) -> bool:
7  from TrkConfig.TrkConfigFlags import ITkPrimaryPassConfig
8  return flags.Tracking.ITkPrimaryPassConfig in [ITkPrimaryPassConfig.Acts, \
9  ITkPrimaryPassConfig.ActsFast, \
10  ITkPrimaryPassConfig.ActsHeavyIon]
11 
12 
python.ITkActsHelpers.isPrimaryPass
bool isPrimaryPass(flags)
Definition: ITkActsHelpers.py:3
python.ITkActsHelpers.primaryPassUsesActs
bool primaryPassUsesActs(flags)
Definition: ITkActsHelpers.py:6
python.ITkActsHelpers.extractTrackingPasses
list extractTrackingPasses(flags)
Definition: ITkActsHelpers.py:13
print
void print(char *figname, TCanvas *c1)
Definition: TRTCalib_StrawStatusPlots.cxx:25