ATLAS Offline Software
Loading...
Searching...
No Matches
python.FPGATrackSimLayerStudyConfig Namespace Reference

Functions

 FPGATrackSimBinnedHitsToolCfg (flags)
 FPGATrackSimLayerStudyToolCfg (flags)
 FPGATrackSimLayerStudyCfg (flags)

Variables

 log = logging.getLogger ('FPGATrackSim')
 flags = initConfigFlags()
str FinalProtoTrackChainxAODTracksKey = "FPGA"
 Flags used in the prototrack chain.
 EnableCalo
 doAthenaToActsSpacePoint
 doAthenaToActsCluster
 doRotCorrection
 NumThreads
 ShowDataDeps
 CheckDependencies
 DumpEvtStore
 wrapperFileName
 Files
 loadRegionMap
 loadRadii
 FakeNNonnxFile1st
 FakeNNonnxFile2nd
 ParamNNonnxFile1st
 ParamNNonnxFile2nd
 ExtensionNNVolonnxFile
 ExtensionNNHitonnxFile
 acc = MainServicesCfg(flags)
 OutputLevel
 debugLimit
 infoLimit
 statusCode = acc.run(flags.Exec.MaxEvents)

Function Documentation

◆ FPGATrackSimBinnedHitsToolCfg()

python.FPGATrackSimLayerStudyConfig.FPGATrackSimBinnedHitsToolCfg ( flags)

Definition at line 18 of file FPGATrackSimLayerStudyConfig.py.

18def FPGATrackSimBinnedHitsToolCfg(flags):
19 # This can probably be imported in the future from the analysis config, but for now it's here.
20 result = ComponentAccumulator()
21 log.info("Setting binning parameters")
22
23 # Allow the initial set of cuts to be read in via config flags, instead of the cuts file.
24 # This effectively eliminates the need to make a "step 0" cut file.
25 # If not set then default to loading the cuts file.
26 if flags.Trigger.FPGATrackSim.GenScan.initialLayerStudy:
27 cutset = {"rin": flags.Trigger.FPGATrackSim.GenScan.rin,
28 "rout": flags.Trigger.FPGATrackSim.GenScan.rout,
29 "parBins": flags.Trigger.FPGATrackSim.GenScan.parBins,
30 "parMin": flags.Trigger.FPGATrackSim.GenScan.parMin,
31 "parMax": flags.Trigger.FPGATrackSim.GenScan.parMax,
32 "parSet": flags.Trigger.FPGATrackSim.GenScan.parSet
33 }
34 log.info("Running initial layer study, taking FPGATrackSimBinning cuts from flags")
35 log.info(cutset)
36 elif flags.Trigger.FPGATrackSim.GenScan.layerStudyCutFile:
37 if flags.Trigger.FPGATrackSim.oldRegionDefs:
38 cutset = importlib.import_module(flags.Trigger.FPGATrackSim.GenScan.layerStudyCutFile).cuts[flags.Trigger.FPGATrackSim.region]
39 else:
40 # this allows the cut file defined in python to be loaded from the map directory
41 # Updated to use python path resolver. It seems like we have to manually pass in CALIBPATH.
42 relpath = os.path.join(flags.Trigger.FPGATrackSim.mapsDir, flags.Trigger.FPGATrackSim.GenScan.layerStudyCutFile + ".py")
43 abspath = unixtools.find_datafile(relpath, pathlist=os.getenv("CALIBPATH").split(":"))
44 spec=importlib.util.spec_from_file_location("FPGATrackSimGenScanCuts", abspath)
45 if spec is None:
46 log.fatal("Failed to load cuts file")
47 cutmodule = importlib.util.module_from_spec(spec)
48 spec.loader.exec_module(cutmodule)
49 cutset=cutmodule.cuts[flags.Trigger.FPGATrackSim.region]
50 log.info("Running layer study using configured cuts file")
51 log.info(cutset)
52 else:
53 log.fatal("Must either set initialLayerStudy=True or set layerStudyCutFile to the name of a cut file!")
54
55 # make the binned hits class
56 BinnnedHits = CompFactory.FPGATrackSimBinnedHits("BinnedHits_LayerStudy")
57 BinnnedHits.OutputLevel=flags.Trigger.FPGATrackSim.loglevel
58 BinnnedHits.FPGATrackSimEventSelectionSvc = result.getPrimaryAndMerge(FPGATrackSimDataPrepConfig.FPGATrackSimEventSelectionSvcCfg(flags))
59
60 # make the bintool class
61 BinTool = CompFactory.FPGATrackSimBinTool("BinTool_LayerStudy")
62 BinTool.OutputLevel=flags.Trigger.FPGATrackSim.loglevel
63
64 # Inputs for the BinTool
65 binsteps=[]
66 BinDesc=None
67 if (cutset["parSet"]=="PhiSlicedKeyLyrPars"):
68 BinDesc = CompFactory.FPGATrackSimKeyLayerBinDesc("KeyLayerBinDescLayerStudy")
69 BinDesc.OutputLevel=flags.Trigger.FPGATrackSim.loglevel
70 BinDesc.rin=cutset["rin"]
71 BinDesc.rout=cutset["rout"]
72 phirange = FPGATrackSimDataPrepConfig.getPhiRange(flags)
73 if flags.Trigger.FPGATrackSim.GenScan.useLayerRadiiFile:
74 phicenter = (phirange[0]+phirange[1])/2.0
75 BinDesc.PhiOffset = -1.0*phicenter
76
77 BinDesc.region = flags.Trigger.FPGATrackSim.region
78
79 # parameters for key layer bindesc are :"zR1", "zR2", "phiR1", "phiR2", "xm"
80 step1 = CompFactory.FPGATrackSimBinStep("PhiBinning")
81 step1.OutputLevel=flags.Trigger.FPGATrackSim.loglevel
82 step1.parBins = [1,1,cutset["parBins"][2],cutset["parBins"][3],cutset["parBins"][4]]
83 step2 = CompFactory.FPGATrackSimBinStep("FullBinning")
84 step2.OutputLevel=flags.Trigger.FPGATrackSim.loglevel
85 step2.parBins = cutset["parBins"]
86 binsteps = [step1,step2]
87 else:
88 log.fatal("Unknown Binning Setup: ",cutset["parSet"])
89
90 BinTool.BinDesc = BinDesc
91 BinTool.Steps = binsteps
92
93
94 # configure the padding around the nominal region
95 BinTool.d0FractionalPadding =0.05
96 BinTool.z0FractionalPadding =0.05
97 BinTool.etaFractionalPadding =0.05
98 BinTool.phiFractionalPadding =0.05
99 BinTool.qOverPtFractionalPadding =0.05
100 BinTool.parMin = cutset["parMin"]
101 BinTool.parMax = cutset["parMax"]
102 BinnnedHits.BinTool = BinTool
103
104 result.setPrivateTools(BinnnedHits)
105
106 return result
107
std::vector< std::string > split(const std::string &s, const std::string &t=":")
Definition hcg.cxx:177

◆ FPGATrackSimLayerStudyCfg()

python.FPGATrackSimLayerStudyConfig.FPGATrackSimLayerStudyCfg ( flags)

Definition at line 128 of file FPGATrackSimLayerStudyConfig.py.

128def FPGATrackSimLayerStudyCfg(flags):
129 from AthenaConfiguration.ComponentFactory import CompFactory
130 flags = FPGATrackSimAnalysisConfig.prepareFlagsForFPGATrackSimLogicalHitsProcessAlg(flags)
131 result = ComponentAccumulator()
132 if not flags.Trigger.FPGATrackSim.wrapperFileName:
133 from InDetConfig.InDetPrepRawDataFormationConfig import AthenaTrkClusterizationCfg
134 result.merge(AthenaTrkClusterizationCfg(flags))
135
136 reg = flags.Trigger.FPGATrackSim.region
137
138 monitor_tool = CompFactory.FPGATrackSimLayerStudyTool(
139 f"BinMonitoring_reg{reg}",
140 LayerStudyTreeName=FPGATrackSimDataPrepConfig.nameWithRegionSuffix(flags, "LayerStudy"),
141 TruthTreeName=FPGATrackSimDataPrepConfig.nameWithRegionSuffix(flags, "TruthTree"),
142 )
143
144 theFPGATrackSimLayerStudyAlg = CompFactory.FPGATrackSimLayerStudyAlg(name=f"FPGATrackSimLayerStudyAlg_reg{reg}")
145
146 theFPGATrackSimLayerStudyAlg.BinningTool = result.getPrimaryAndMerge(FPGATrackSimBinnedHitsToolCfg(flags))
147 theFPGATrackSimLayerStudyAlg.BinMonitoringTool = monitor_tool
148 theFPGATrackSimLayerStudyAlg.threshold = flags.Trigger.FPGATrackSim.ActiveConfig.threshold[0]
149 theFPGATrackSimLayerStudyAlg.stage = flags.Trigger.FPGATrackSim.layerStudyStage
150 theFPGATrackSimLayerStudyAlg.eventSelector = result.getPrimaryAndMerge(FPGATrackSimDataPrepConfig.FPGATrackSimEventSelectionSvcCfg(flags))
151 theFPGATrackSimLayerStudyAlg.FPGATrackSimMapping = result.getPrimaryAndMerge(FPGATrackSimDataPrepConfig.FPGATrackSimMappingCfg(flags))
152
153 result.addEventAlgo(theFPGATrackSimLayerStudyAlg)
154 return result
155
156

◆ FPGATrackSimLayerStudyToolCfg()

python.FPGATrackSimLayerStudyConfig.FPGATrackSimLayerStudyToolCfg ( flags)

Definition at line 108 of file FPGATrackSimLayerStudyConfig.py.

108def FPGATrackSimLayerStudyToolCfg(flags):
109 result=ComponentAccumulator()
110
111 Monitor = CompFactory.FPGATrackSimLayerStudyTool("BinMonitoring")
112 Monitor.THistSvc = CompFactory.THistSvc()
113 Monitor.OutputLevel=flags.Trigger.FPGATrackSim.loglevel
114 Monitor.phiScale = 10.0
115 Monitor.etaScale = 100.0
116 Monitor.drScale = 20.0
117 Monitor.plotAllBins = False
118
119 Monitor.D0Pad=getPadding(flags.Trigger.FPGATrackSim.region)["d0"]
120 Monitor.EtaPad=getPadding(flags.Trigger.FPGATrackSim.region)["eta"]
121 Monitor.QPtPad=getPadding(flags.Trigger.FPGATrackSim.region)["qpt"]
122 Monitor.PhiPad=getPadding(flags.Trigger.FPGATrackSim.region)["phi"]
123 Monitor.Z0Pad=getPadding(flags.Trigger.FPGATrackSim.region)["z0"]
124
125 result.setPrivateTools(Monitor)
126 return result
127

Variable Documentation

◆ acc

python.FPGATrackSimLayerStudyConfig.acc = MainServicesCfg(flags)

Definition at line 210 of file FPGATrackSimLayerStudyConfig.py.

◆ CheckDependencies

python.FPGATrackSimLayerStudyConfig.CheckDependencies

Definition at line 181 of file FPGATrackSimLayerStudyConfig.py.

◆ debugLimit

python.FPGATrackSimLayerStudyConfig.debugLimit

Definition at line 250 of file FPGATrackSimLayerStudyConfig.py.

◆ doAthenaToActsCluster

python.FPGATrackSimLayerStudyConfig.doAthenaToActsCluster

Definition at line 172 of file FPGATrackSimLayerStudyConfig.py.

◆ doAthenaToActsSpacePoint

python.FPGATrackSimLayerStudyConfig.doAthenaToActsSpacePoint

Definition at line 171 of file FPGATrackSimLayerStudyConfig.py.

◆ doRotCorrection

python.FPGATrackSimLayerStudyConfig.doRotCorrection

Definition at line 175 of file FPGATrackSimLayerStudyConfig.py.

◆ DumpEvtStore

python.FPGATrackSimLayerStudyConfig.DumpEvtStore

Definition at line 182 of file FPGATrackSimLayerStudyConfig.py.

◆ EnableCalo

python.FPGATrackSimLayerStudyConfig.EnableCalo

Definition at line 168 of file FPGATrackSimLayerStudyConfig.py.

◆ ExtensionNNHitonnxFile

python.FPGATrackSimLayerStudyConfig.ExtensionNNHitonnxFile

Definition at line 205 of file FPGATrackSimLayerStudyConfig.py.

◆ ExtensionNNVolonnxFile

python.FPGATrackSimLayerStudyConfig.ExtensionNNVolonnxFile

Definition at line 204 of file FPGATrackSimLayerStudyConfig.py.

◆ FakeNNonnxFile1st

python.FPGATrackSimLayerStudyConfig.FakeNNonnxFile1st

Definition at line 200 of file FPGATrackSimLayerStudyConfig.py.

◆ FakeNNonnxFile2nd

python.FPGATrackSimLayerStudyConfig.FakeNNonnxFile2nd

Definition at line 201 of file FPGATrackSimLayerStudyConfig.py.

◆ Files

python.FPGATrackSimLayerStudyConfig.Files

Definition at line 191 of file FPGATrackSimLayerStudyConfig.py.

◆ FinalProtoTrackChainxAODTracksKey

str python.FPGATrackSimLayerStudyConfig.FinalProtoTrackChainxAODTracksKey = "FPGA"

Flags used in the prototrack chain.

Definition at line 167 of file FPGATrackSimLayerStudyConfig.py.

◆ flags

python.FPGATrackSimLayerStudyConfig.flags = initConfigFlags()

Definition at line 163 of file FPGATrackSimLayerStudyConfig.py.

◆ infoLimit

python.FPGATrackSimLayerStudyConfig.infoLimit

Definition at line 251 of file FPGATrackSimLayerStudyConfig.py.

◆ loadRadii

python.FPGATrackSimLayerStudyConfig.loadRadii

Definition at line 196 of file FPGATrackSimLayerStudyConfig.py.

◆ loadRegionMap

python.FPGATrackSimLayerStudyConfig.loadRegionMap

Definition at line 195 of file FPGATrackSimLayerStudyConfig.py.

◆ log

python.FPGATrackSimLayerStudyConfig.log = logging.getLogger ('FPGATrackSim')

Definition at line 12 of file FPGATrackSimLayerStudyConfig.py.

◆ NumThreads

python.FPGATrackSimLayerStudyConfig.NumThreads

Definition at line 178 of file FPGATrackSimLayerStudyConfig.py.

◆ OutputLevel

python.FPGATrackSimLayerStudyConfig.OutputLevel

Definition at line 248 of file FPGATrackSimLayerStudyConfig.py.

◆ ParamNNonnxFile1st

python.FPGATrackSimLayerStudyConfig.ParamNNonnxFile1st

Definition at line 202 of file FPGATrackSimLayerStudyConfig.py.

◆ ParamNNonnxFile2nd

python.FPGATrackSimLayerStudyConfig.ParamNNonnxFile2nd

Definition at line 203 of file FPGATrackSimLayerStudyConfig.py.

◆ ShowDataDeps

python.FPGATrackSimLayerStudyConfig.ShowDataDeps

Definition at line 180 of file FPGATrackSimLayerStudyConfig.py.

◆ statusCode

python.FPGATrackSimLayerStudyConfig.statusCode = acc.run(flags.Exec.MaxEvents)

Definition at line 253 of file FPGATrackSimLayerStudyConfig.py.

◆ wrapperFileName

python.FPGATrackSimLayerStudyConfig.wrapperFileName

Definition at line 190 of file FPGATrackSimLayerStudyConfig.py.