3 from AthenaConfiguration.Enums
import FlagEnum
6 from AthenaConfiguration.AthConfigFlags
import AthConfigFlags
8 cf.addFlag(
'pipeline',
'')
9 cf.addFlag(
'algoTag',
'Hough')
10 cf.addFlag(
'wrapperFileName', [])
11 cf.addFlag(
'wrapperFileName2', [])
12 cf.addFlag(
'secondInputToolN', 0)
13 cf.addFlag(
'mapsDir',
'__MUST_BE_SET__')
14 cf.addFlag(
'wrapperMetaData',
"Default Meta Data")
15 cf.addFlag(
'sampleType',
'singleMuons')
16 cf.addFlag(
'doMultiTruth',
True)
17 cf.addFlag(
'SetTruthParametersForTracks', -1)
18 cf.addFlag(
'FPGATrackSimMatrixFileRegEx', [])
19 cf.addFlag(
'FPGATrackSimMaxnMatrixInputFiles', -1)
20 cf.addFlag(
'outputMergedFPGATrackSimMatrixFile',
'combined_matrix.root')
21 cf.addFlag(
'FPGATrackSimNBanks', 1)
22 cf.addFlag(
'FPGATrackSimallBanks',
False)
23 cf.addFlag(
'region', 34)
24 cf.addFlag(
'regionList',
"")
25 cf.addFlag(
'd0min', -2.0)
26 cf.addFlag(
'd0max', +2.0)
27 cf.addFlag(
'z0min', -150.0)
28 cf.addFlag(
'z0max', +150.0)
29 cf.addFlag(
'qOverPtmin', -0.001)
30 cf.addFlag(
'qOverPtmax', +0.001)
31 cf.addFlag(
'oldRegionDefs',
False)
32 cf.addFlag(
'phiShift', 0.0)
33 cf.addFlag(
'minSpacePlusPixel', 3)
34 cf.addFlag(
'dropUnpairedIfSP',
False)
35 cf.addFlag(
'baseName',
'')
36 cf.addFlag(
'CheckGood2ndStage',
True)
37 cf.addFlag(
'Is2ndStage',
False)
38 cf.addFlag(
'UseHitScaleFactor',
False)
39 cf.addFlag(
'missHitsConsts',
False)
40 cf.addFlag(
'tracking',
False)
41 cf.addFlag(
'secondTracking',
True)
42 cf.addFlag(
'layerStudyStage', 0)
43 cf.addFlag(
'doOverlapRemoval',
True)
44 cf.addFlag(
'doOverlapRemovalBetweenRegions',
True)
45 cf.addFlag(
'clustering', 1)
46 cf.addFlag(
'LorentzAngleShift', 2)
47 cf.addFlag(
'bankDir',
'')
48 cf.addFlag(
'slicesFile',
'eventSelectionSlices/v1.0/slices.txt')
49 cf.addFlag(
'spacePoints',
True)
50 cf.addFlag(
'outputMonitorFile',
"monitoring.root")
51 cf.addFlag(
'connectToToITkTracking',
True)
52 cf.addFlag(
'loglevel', AthenaCommon.Constants.INFO)
53 cf.addFlag(
'msgLimit',-1)
54 cf.addFlag(
'singleTrackSample',
True)
55 cf.addFlag(
'FakeNNonnxFile1st',
'NN/1stStage/v0.11/Class_5Hits_V007')
56 cf.addFlag(
'FakeNNonnxFile2nd',
'NN/2ndStage/v0.11/Class_13Hits_V007')
57 cf.addFlag(
'ExtensionNNVolonnxFile',
'NN/2ndStage/v0.11/NNPathfinderVol_4Hits_V011')
58 cf.addFlag(
'ExtensionNNHitonnxFile',
'NN/2ndStage/v0.11/NNPathfinderHit_4Hits_V011')
59 cf.addFlag(
'ParamNNonnxFile1st',
'NN/1stStage/v0.11/Param_5Hits_V004')
60 cf.addFlag(
'ParamNNonnxFile2nd',
'NN/2ndStage/v0.11/Param_13Hits_V007')
61 cf.addFlag(
'doNNPathFinder',
False)
62 cf.addFlag(
'NNCartesianCoordinates',
False)
63 cf.addFlag(
'windowRScaling', 1.0)
64 cf.addFlag(
'windowPhiScaling', 1.0)
65 cf.addFlag(
'windowZScaling', 1.0)
66 cf.addFlag(
'lowPtvalueR', -1)
67 cf.addFlag(
'lowPtvaluePhi', -1)
68 cf.addFlag(
'lowPtvalueZ', -1)
69 cf.addFlag(
'lowPtWindowRScaling', 1.0)
70 cf.addFlag(
'lowPtWindowPhiScaling', 1.0)
71 cf.addFlag(
'lowPtWindowZScaling', 1.0)
72 cf.addFlag(
'missedHitRScaling', -1.0)
73 cf.addFlag(
'missedHitPhiScaling', -1.0)
74 cf.addFlag(
'missedHitZScaling', -1.0)
75 cf.addFlag(
'maxBranches', [2])
76 cf.addFlag(
'hitThreshold', 2)
77 cf.addFlag(
'varyingThreshold',
True)
78 cf.addFlag(
'varyingHitThresholds', [])
80 def __httHough1DFlags():
81 """Additional function delays import"""
82 from FPGATrackSimConfTools.FPGATrackSimConfigFlags
import createHough1dFPGATrackSimConfigFlags
84 cf.addFlagsCategory(
"Hough1D", __httHough1DFlags, prefix=
True )
86 def __httHoughFlags():
87 """Additional function delays import"""
88 from FPGATrackSimConfTools.FPGATrackSimConfigFlags
import createHoughFPGATrackSimConfigFlags
90 cf.addFlagsCategory(
"Hough", __httHoughFlags, prefix=
True )
92 def __httGenScanFlags():
93 """Additional function delays import"""
94 from FPGATrackSimConfTools.FPGATrackSimConfigFlags
import createGenScanFPGATrackSimConfigFlags
96 cf.addFlagsCategory(
"GenScan", __httGenScanFlags, prefix=
True )
98 def __httSecondStageFlags():
99 """Additional function delays import"""
100 from FPGATrackSimConfTools.FPGATrackSimConfigFlags
import createSecondStageFPGATrackSimConfigFlags
102 cf.addFlagsCategory(
"SecondStage", __httSecondStageFlags, prefix=
True )
104 def __httSecondStageFlags():
105 """Additional function delays import"""
106 from FPGATrackSimConfTools.FPGATrackSimConfigFlags
import createSecondStageFPGATrackSimConfigFlags
108 cf.addFlagsCategory(
"SecondStage", __httSecondStageFlags, prefix=
True )
110 def __httDev21_02_15Flags():
111 """Additional function delays import"""
112 from FPGATrackSimConfTools.FPGATrackSimConfigFlags
import createDev21_02_15_FPGATrackSimConfigFlags
114 cf.addFlagsCategory(
"Dev21_02_15", __httDev21_02_15Flags, prefix=
True )
117 """Additional function delays import"""
118 from FPGATrackSimConfTools.FPGATrackSimConfigFlags
import createGNNFPGATrackSimConfigFlags
120 cf.addFlagsCategory(
"GNN", __GNNFlags, prefix=
True )
123 cf.addFlag(
'doEDMConversion',
False)
124 cf.addFlag(
'convertSPs',
False)
125 cf.addFlag(
'convertUnmappedHits',
False)
126 cf.addFlag(
'writeToAOD',
False)
127 cf.addFlag(
'writeClustersToAOD',
False)
128 cf.addFlag(
'writeOfflPRDInfo',
False)
129 cf.addFlag(
'broadErrors',
False)
132 cf.addFlag(
'writeAdditionalOutputData',
True)
133 cf.addFlag(
'writeOutputEventLimit', -1)
134 cf.addFlag(
'readOfflineObjects',
True)
137 cf.addFlag(
'runCKF',
False)
138 cf.addFlag(
'useFPGATruthTrackMatching',
False)
143 from AthenaConfiguration.AthConfigFlags
import AthConfigFlags
144 cf = AthConfigFlags()
147 cf.addFlag(
'name',
'')
150 cf.addFlag(
'firstInputToolN', 1)
151 cf.addFlag(
'realHitsOverlay',
False)
152 cf.addFlag(
'hitFiltering',
False)
153 cf.addFlag(
'spacePointFiltering',
False)
154 cf.addFlag(
'writeTestOutput',
True)
157 cf.addFlag(
'houghRootoutput1st',
False)
158 cf.addFlag(
'houghRootoutput2nd',
False)
159 cf.addFlag(
'hough',
True)
160 cf.addFlag(
'hough1D',
False)
161 cf.addFlag(
'houghType',
'Original')
162 cf.addFlag(
'roadMerge',
False)
163 cf.addFlag(
'genScan',
False)
164 cf.addFlag(
'NumOfHitPerGrouping', 5)
166 cf.addFlag(
'etaPatternFilter',
False)
167 cf.addFlag(
'phiRoadFilter',
False)
168 cf.addFlag(
'GNN',
False)
172 cf.addFlag(
'trackNNAnalysis',
False)
174 cf.addFlag(
'trackNNAnalysis2nd',
False)
178 cf.addFlag(
'doFastOR',
False)
181 cf.addFlag(
'passLowestChi2TrackOnly',
False)
184 cf.addFlag(
'xVar',
'phi')
185 cf.addFlag(
'yVar',
'q/pt')
186 cf.addFlag(
'qptMin', -1.0)
187 cf.addFlag(
'qptMax', 1.0)
188 cf.addFlag(
'd0Slices', [])
189 cf.addFlag(
'slicing',
True)
190 cf.addFlag(
'localMaxWindowSize', 0)
191 cf.addFlag(
'roadSliceOR',
False)
192 cf.addFlag(
'fieldCorrection',
True)
193 cf.addFlag(
'addAllHits',
False)
194 cf.addFlag(
'detectorZoneWindows',
False)
195 cf.addFlag(
'phiMin', 0.0)
196 cf.addFlag(
'phiMax', 0.0)
197 cf.addFlag(
'xBins', 216)
198 cf.addFlag(
'yBins', 216)
199 cf.addFlag(
'xBufferBins', 6)
200 cf.addFlag(
'yBufferBins', 2)
201 cf.addFlag(
'threshold', [8])
202 cf.addFlag(
'IdealGeoRoads',
True)
203 cf.addFlag(
'convolution', [])
204 cf.addFlag(
'convSizeX', 0)
205 cf.addFlag(
'convSizeY', 0)
206 cf.addFlag(
'hitExtendX', [])
208 cf.addFlag(
'doMajority', 1)
209 cf.addFlag(
'doTracking',
False)
210 cf.addFlag(
'outputHitTxt',
False)
212 cf.addFlag(
'requirements',
'')
214 cf.addFlag(
'r_max',2047)
215 cf.addFlag(
'phi_coord_max',65535)
216 cf.addFlag(
'phi_range', 6.399609375)
217 cf.addFlag(
'r_max_mm',1137.5)
218 cf.addFlag(
'bitwise_qApt_conv',204)
219 cf.addFlag(
'bitwise_phi0_conv',1)
220 cf.addFlag(
'phi0_sectors',1)
221 cf.addFlag(
'qApt_sectors',7)
222 cf.addFlag(
'pipes_qApt',8)
223 cf.addFlag(
'pipes_phi0',1)
226 cf.addFlag(
'barcodeFracMatch', 0.5)
229 cf.addFlag(
'chi2DoFRecoveryMin', 40)
230 cf.addFlag(
'chi2DoFRecoveryMax', 20000)
231 cf.addFlag(
'nHitsNoRecovery', -1)
232 cf.addFlag(
'guessHits',
True)
233 cf.addFlag(
'doMissingHitsChecks',
False)
234 cf.addFlag(
'idealCoordFitType', 2)
235 cf.addFlag(
'doDeltaGPhis',
False)
236 cf.addFlag(
'chi2cut', 9)
237 cf.addFlag(
'useVaryingChi2Cut',
False)
238 cf.addFlag(
'fitFromRoad',
True)
241 cf.addFlag(
'secondStage',
False)
242 cf.addFlag(
'secondChi2Cut', 36)
245 cf.addFlag(
'fastMon',
False)
246 cf.addFlag(
'canExtendHistRanges',
False)
247 cf.addFlag(
'dataClass', 2)
250 cf.addFlag(
'lrt',
False)
251 cf.addFlag(
'lrtUseBasicHitFilter',
False)
252 cf.addFlag(
'lrtUseMlHitFilter',
False)
253 cf.addFlag(
'lrtUseStraightTrackHT',
False)
254 cf.addFlag(
'lrtUseDoubletHT',
False)
255 cf.addFlag(
'lrtDoubletD0Range', 120.0)
256 cf.addFlag(
'lrtDoubletD0Bins', 216)
257 cf.addFlag(
'lrtDoubletQptRange', 0.02)
258 cf.addFlag(
'lrtDoubletQptBins', 216)
259 cf.addFlag(
'lrtMonPhiRange', (0.2, 0.5))
260 cf.addFlag(
'lrtMonD0Range', (-100,100))
261 cf.addFlag(
'lrtMonZ0Range', (-300,300))
262 cf.addFlag(
'sampleType',
'')
278 cf.hitExtendX = [1] * 9
280 cf.addFlag(
'phiRangeCut',
True)
281 cf.addFlag(
'splitpt', 1)
282 cf.addFlag(
'phifilterwindow', 0.005)
302 cf.addFlag(
'combineLayers', [])
303 cf.addFlag(
'scale', [])
304 cf.hitExtendX = [2,1,0,0,0,0,0,0,0]
306 cf.addFlag(
'lrtSkipHitFiltering',
False)
307 cf.addFlag(
'lrtPtmin', 5)
308 cf.addFlag(
'allowHighTruthBarcode',
False)
309 cf.addFlag(
'mLRTpdgID', 0)
310 cf.addFlag(
'lrtStraighttrackXVar',
'phi')
311 cf.addFlag(
'lrtStraighttrackYVar',
'd0')
312 cf.addFlag(
'lrtStraighttrackPhiMin', 0.3)
313 cf.addFlag(
'lrtStraighttrackPhiMax', 0.5)
314 cf.addFlag(
'lrtStraighttrackD0Min', -300.0)
315 cf.addFlag(
'lrtStraighttrackD0Max', 300.0)
316 cf.addFlag(
'lrtStraighttrackXBins', 216)
317 cf.addFlag(
'lrtStraighttrackYBins', 216)
318 cf.addFlag(
'lrtStraighttrackXBufferBins', 6)
319 cf.addFlag(
'lrtStraighttrackYBufferBins', 2)
320 cf.addFlag(
'lrtStraighttrackSlicing',
True)
321 cf.addFlag(
'lrtStraighttrackThreshold', [1])
322 cf.addFlag(
'lrtStraighttrackConvolution', [])
323 cf.addFlag(
'lrtStraighttrackCombineLayers', [0,1,2,3,4,5,6,7])
324 cf.addFlag(
'lrtStraighttrackScale', [1])
325 cf.addFlag(
'lrtStraighttrackConvSizeX', 0)
326 cf.addFlag(
'lrtStraighttrackConvSizeY', 0)
327 cf.addFlag(
'lrtStraighttrackHitExtendX', [])
328 cf.addFlag(
'lrtStraighttrackStereo',
False)
329 cf.addFlag(
'lrtStraighttrackLocalMaxWindowSize', 0)
337 cf.name =
'dev_21-02-15'
345 cf.convolution = [1, 10, 1]
346 cf.addFlag(
'combineLayers', [])
347 cf.addFlag(
'scale', [])
360 cf.addFlag(
'genScanCuts',
'FPGATrackSimGenScanCuts')
361 cf.addFlag(
'reverse',
'True')
362 cf.addFlag(
'binFilter',
'IncrementalBuild')
363 cf.addFlag(
'layerStudy',
False)
364 cf.addFlag(
'layerMapFile',
'')
365 cf.addFlag(
'noCuts',
False)
367 cf.addFlag(
'filterInBin',
False)
368 cf.addFlag(
'phiChi2Weight', 1.0)
369 cf.addFlag(
'etaChi2Weight', 1.0)
373 cf.addFlag(
'initialLayerStudy',
False)
374 cf.addFlag(
'layerStudyCutFile',
"")
375 cf.addFlag(
'rin', 30)
376 cf.addFlag(
'rout', 300)
377 cf.addFlag(
'parBins', [20, 20, 5, 20, 3])
378 cf.addFlag(
'parMin', [-1000, -1000, 0.0, 0.0, -10])
379 cf.addFlag(
'parMax', [ 1000, 1000, 1.0, 1.0, 10])
380 cf.addFlag(
'parSet',
"PhiSlicedKeyLyrPars")
386 cf.name =
'SecondStage'
387 cf.addFlag(
'CutFile',
"Cuts_step1_2ndStage")
388 cf.addFlag(
'LayerMapFile',
"")
392 ModuleMap =
'ModuleMap'
393 MetricLearning =
'MetricLearning'
402 ConnectedComponents =
'ConnectedComponents'
408 cf.addFlag(
"graphTool", graphTool.ModuleMap, type=graphTool)
409 cf.addFlag(
"moduleMapType", moduleMapType.doublet, type=moduleMapType)
410 cf.addFlag(
"moduleMapFunc", moduleMapFunc.minmax, type=moduleMapFunc)
411 cf.addFlag(
"moduleMapTol",0.0000000001)
412 cf.addFlag(
"moduleMapPath",
'')
413 cf.addFlag(
"metricLearningR",0.1)
414 cf.addFlag(
"metricLearningMaxN", 512)
415 cf.addFlag(
"MLModelPath",
'')
416 cf.addFlag(
"GNNModelPath",
'')
417 cf.addFlag(
"roadMakerTool", roadMakerTool.ConnectedComponents, type=roadMakerTool)
418 cf.addFlag(
"edgeScoreCut",0.8)
419 cf.addFlag(
"doGNNRootOutput",
False)
420 cf.addFlag(
"doGNNTracking",
False)
421 cf.addFlag(
"nInputsGNN",9)
429 if __name__ ==
"__main__":
432 flags.loadAllDynamicFlags()
435 assert flags.Hough.firstInputToolN == 1 ,
"default firstInputToolN is wrong"
436 assert flags.Hough.barcodeFracMatch == 0.5,
"default barcodeFracMatch is wrong"
437 assert flags.Hough.fastMon
is False ,
"default fastMon is wrong"
438 assert flags.Hough.lrtMonZ0Range == (-300,300),
"default lrtMonZ0Rang is wrong"