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(
'runOnPreProducedHeaderFiles',
False)
13 cf.addFlag(
'secondInputToolN', 0)
14 cf.addFlag(
'mapsDir',
'__MUST_BE_SET__')
15 cf.addFlag(
'loadRegionMap',
True)
16 cf.addFlag(
'loadRadii',
True)
17 cf.addFlag(
'wrapperMetaData',
"Default Meta Data")
18 cf.addFlag(
'sampleType',
'singleMuons')
19 cf.addFlag(
'doMultiTruth',
True)
20 cf.addFlag(
'SetTruthParametersForTracks', -1)
21 cf.addFlag(
'FPGATrackSimTestFiles',
'')
22 cf.addFlag(
'FPGATrackSimMatrixFileRegEx', [])
23 cf.addFlag(
'FPGATrackSimMaxnMatrixInputFiles', -1)
24 cf.addFlag(
'outputMergedFPGATrackSimMatrixFile',
'combined_matrix.root')
25 cf.addFlag(
'FPGATrackSimNBanks', 1)
26 cf.addFlag(
'FPGATrackSimallBanks',
False)
27 cf.addFlag(
'region', 34)
28 cf.addFlag(
'regionList',
"")
29 cf.addFlag(
'd0min', -2.0)
30 cf.addFlag(
'd0max', +2.0)
31 cf.addFlag(
'z0min', -150.0)
32 cf.addFlag(
'z0max', +150.0)
33 cf.addFlag(
'qOverPtmin', -0.001)
34 cf.addFlag(
'qOverPtmax', +0.001)
35 cf.addFlag(
'oldRegionDefs',
False)
36 cf.addFlag(
'phiShift', 0.0)
37 cf.addFlag(
'minSpacePlusPixel', 3)
38 cf.addFlag(
'dropUnpairedIfSP',
False)
39 cf.addFlag(
'baseName',
'')
40 cf.addFlag(
'CheckGood2ndStage',
True)
41 cf.addFlag(
'Is2ndStage',
False)
42 cf.addFlag(
'UseHitScaleFactor',
False)
43 cf.addFlag(
'missHitsConsts',
False)
44 cf.addFlag(
'tracking',
False)
45 cf.addFlag(
'secondTracking',
True)
46 cf.addFlag(
'layerStudyStage', 0)
47 cf.addFlag(
'doOverlapRemoval',
True)
48 cf.addFlag(
'doOverlapRemovalBetweenRegions',
True)
49 cf.addFlag(
'clustering', 1)
50 cf.addFlag(
'LorentzAngleShift', 2)
51 cf.addFlag(
'bankDir',
'')
52 cf.addFlag(
'slicesFile',
'eventSelectionSlices/v1.0/slices.txt')
53 cf.addFlag(
'spacePoints',
True)
54 cf.addFlag(
'outputMonitorFile',
"monitoring.root")
55 cf.addFlag(
'connectToToITkTracking',
True)
56 cf.addFlag(
'loglevel', AthenaCommon.Constants.INFO)
57 cf.addFlag(
'msgLimit',-1)
58 cf.addFlag(
'singleTrackSample',
True)
59 cf.addFlag(
'FakeNNonnxFile1st',
'NN/1stStage/v0.11/Class_5Hits_V007')
60 cf.addFlag(
'FakeNNonnxFile2nd',
'NN/2ndStage/v0.11/Class_13Hits_V007')
61 cf.addFlag(
'ExtensionNNVolonnxFile',
'NN/2ndStage/v0.11/NNPathfinderVol_4Hits_V011')
62 cf.addFlag(
'ExtensionNNHitonnxFile',
'NN/2ndStage/v0.11/NNPathfinderHit_4Hits_V011')
63 cf.addFlag(
'ParamNNonnxFile1st',
'NN/1stStage/v0.11/Param_5Hits_V004')
64 cf.addFlag(
'ParamNNonnxFile2nd',
'NN/2ndStage/v0.11/Param_13Hits_V007')
65 cf.addFlag(
'doNNPathFinder',
False)
66 cf.addFlag(
'NNCartesianCoordinates',
False)
67 cf.addFlag(
'windowRScaling', 1.0)
68 cf.addFlag(
'windowPhiScaling', 1.0)
69 cf.addFlag(
'windowZScaling', 1.0)
70 cf.addFlag(
'lowPtvalueR', -1)
71 cf.addFlag(
'lowPtvaluePhi', -1)
72 cf.addFlag(
'lowPtvalueZ', -1)
73 cf.addFlag(
'lowPtWindowRScaling', 1.0)
74 cf.addFlag(
'lowPtWindowPhiScaling', 1.0)
75 cf.addFlag(
'lowPtWindowZScaling', 1.0)
76 cf.addFlag(
'missedHitRScaling', -1.0)
77 cf.addFlag(
'missedHitPhiScaling', -1.0)
78 cf.addFlag(
'missedHitZScaling', -1.0)
79 cf.addFlag(
'maxBranches', [2])
80 cf.addFlag(
'hitThreshold', 2)
81 cf.addFlag(
'varyingThreshold',
True)
82 cf.addFlag(
'varyingHitThresholds', [])
83 cf.addFlag(
'MinSpacePointsPerSeed',3)
84 cf.addFlag(
'MaxSpacePointsPerSeed',3)
86 cf.addFlag(
'runF150hw',
False)
89 def __httHough1DFlags():
90 """Additional function delays import"""
91 from FPGATrackSimConfTools.FPGATrackSimConfigFlags
import createHough1dFPGATrackSimConfigFlags
93 cf.addFlagsCategory(
"Hough1D", __httHough1DFlags, prefix=
True )
95 def __httHoughFlags():
96 """Additional function delays import"""
97 from FPGATrackSimConfTools.FPGATrackSimConfigFlags
import createHoughFPGATrackSimConfigFlags
99 cf.addFlagsCategory(
"Hough", __httHoughFlags, prefix=
True )
101 def __httGenScanFlags():
102 """Additional function delays import"""
103 from FPGATrackSimConfTools.FPGATrackSimConfigFlags
import createGenScanFPGATrackSimConfigFlags
105 cf.addFlagsCategory(
"GenScan", __httGenScanFlags, prefix=
True )
107 def __httSecondStageFlags():
108 """Additional function delays import"""
109 from FPGATrackSimConfTools.FPGATrackSimConfigFlags
import createSecondStageFPGATrackSimConfigFlags
111 cf.addFlagsCategory(
"SecondStage", __httSecondStageFlags, prefix=
True )
113 def __httSecondStageFlags():
114 """Additional function delays import"""
115 from FPGATrackSimConfTools.FPGATrackSimConfigFlags
import createSecondStageFPGATrackSimConfigFlags
117 cf.addFlagsCategory(
"SecondStage", __httSecondStageFlags, prefix=
True )
119 def __httDev21_02_15Flags():
120 """Additional function delays import"""
121 from FPGATrackSimConfTools.FPGATrackSimConfigFlags
import createDev21_02_15_FPGATrackSimConfigFlags
123 cf.addFlagsCategory(
"Dev21_02_15", __httDev21_02_15Flags, prefix=
True )
126 """Additional function delays import"""
127 from FPGATrackSimConfTools.FPGATrackSimConfigFlags
import createGNNFPGATrackSimConfigFlags
129 cf.addFlagsCategory(
"GNN", __GNNFlags, prefix=
True )
132 cf.addFlag(
'doEDMConversion',
False)
133 cf.addFlag(
'convertSPs',
False)
134 cf.addFlag(
'convertUnmappedHits',
False)
135 cf.addFlag(
'writeToAOD',
False)
136 cf.addFlag(
'writeClustersToAOD',
False)
137 cf.addFlag(
'writeOfflPRDInfo',
False)
138 cf.addFlag(
'broadErrors',
False)
141 cf.addFlag(
'writeAdditionalOutputData',
True)
142 cf.addFlag(
'regionToWriteDPTree', -1)
143 cf.addFlag(
'writeOutputEventLimit', -1)
144 cf.addFlag(
'readOfflineObjects',
True)
147 cf.addFlag(
'runCKF',
False)
148 cf.addFlag(
'useFPGATruthTrackMatching',
False)
153 from AthenaConfiguration.AthConfigFlags
import AthConfigFlags
154 cf = AthConfigFlags()
157 cf.addFlag(
'name',
'')
160 cf.addFlag(
'firstInputToolN', 1)
161 cf.addFlag(
'realHitsOverlay',
False)
162 cf.addFlag(
'hitFiltering',
False)
163 cf.addFlag(
'spacePointFiltering',
False)
164 cf.addFlag(
'writeTestOutput',
True)
167 cf.addFlag(
'houghRootoutput1st',
False)
168 cf.addFlag(
'houghRootoutput2nd',
False)
169 cf.addFlag(
'hough',
True)
170 cf.addFlag(
'hough1D',
False)
171 cf.addFlag(
'houghType',
'Original')
172 cf.addFlag(
'roadMerge',
False)
173 cf.addFlag(
'genScan',
False)
174 cf.addFlag(
'NumOfHitPerGrouping', 5)
176 cf.addFlag(
'etaPatternFilter',
False)
177 cf.addFlag(
'phiRoadFilter',
False)
178 cf.addFlag(
'GNN',
False)
182 cf.addFlag(
'trackNNAnalysis',
False)
184 cf.addFlag(
'trackNNAnalysis2nd',
False)
188 cf.addFlag(
'doFastOR',
False)
191 cf.addFlag(
'passLowestChi2TrackOnly',
False)
194 cf.addFlag(
'xVar',
'phi')
195 cf.addFlag(
'yVar',
'q/pt')
196 cf.addFlag(
'qptMin', -1.0)
197 cf.addFlag(
'qptMax', 1.0)
198 cf.addFlag(
'd0Slices', [])
199 cf.addFlag(
'slicing',
True)
200 cf.addFlag(
'localMaxWindowSize', 0)
201 cf.addFlag(
'roadSliceOR',
False)
202 cf.addFlag(
'fieldCorrection',
True)
203 cf.addFlag(
'addAllHits',
False)
204 cf.addFlag(
'detectorZoneWindows',
False)
205 cf.addFlag(
'phiMin', 0.0)
206 cf.addFlag(
'phiMax', 0.0)
207 cf.addFlag(
'xBins', 216)
208 cf.addFlag(
'yBins', 216)
209 cf.addFlag(
'xBufferBins', 6)
210 cf.addFlag(
'yBufferBins', 2)
211 cf.addFlag(
'threshold', [8])
212 cf.addFlag(
'IdealGeoRoads',
True)
213 cf.addFlag(
'convolution', [])
214 cf.addFlag(
'convSizeX', 0)
215 cf.addFlag(
'convSizeY', 0)
216 cf.addFlag(
'hitExtendX', [])
218 cf.addFlag(
'doMajority', 1)
219 cf.addFlag(
'doTracking',
False)
220 cf.addFlag(
'outputHitTxt',
False)
222 cf.addFlag(
'requirements',
'')
224 cf.addFlag(
'r_max',2047)
225 cf.addFlag(
'phi_coord_max',65535)
226 cf.addFlag(
'phi_range', 6.399609375)
227 cf.addFlag(
'r_max_mm',1137.5)
228 cf.addFlag(
'bitwise_qApt_conv',204)
229 cf.addFlag(
'bitwise_phi0_conv',1)
230 cf.addFlag(
'phi0_sectors',1)
231 cf.addFlag(
'qApt_sectors',7)
232 cf.addFlag(
'pipes_qApt',8)
233 cf.addFlag(
'pipes_phi0',1)
236 cf.addFlag(
'barcodeFracMatch', 0.5)
239 cf.addFlag(
'chi2DoFRecoveryMin', 40)
240 cf.addFlag(
'chi2DoFRecoveryMax', 20000)
241 cf.addFlag(
'nHitsNoRecovery', -1)
242 cf.addFlag(
'guessHits',
True)
243 cf.addFlag(
'doMissingHitsChecks',
False)
244 cf.addFlag(
'idealCoordFitType', 2)
245 cf.addFlag(
'doDeltaGPhis',
False)
246 cf.addFlag(
'chi2cut', 2.25)
247 cf.addFlag(
'useVaryingChi2Cut',
False)
248 cf.addFlag(
'fitFromRoad',
True)
251 cf.addFlag(
'secondStage',
False)
252 cf.addFlag(
'secondChi2Cut', 36)
255 cf.addFlag(
'fastMon',
False)
256 cf.addFlag(
'canExtendHistRanges',
False)
257 cf.addFlag(
'dataClass', 2)
260 cf.addFlag(
'lrt',
False)
261 cf.addFlag(
'lrtUseBasicHitFilter',
False)
262 cf.addFlag(
'lrtUseMlHitFilter',
False)
263 cf.addFlag(
'lrtUseStraightTrackHT',
False)
264 cf.addFlag(
'lrtUseDoubletHT',
False)
265 cf.addFlag(
'lrtDoubletD0Range', 120.0)
266 cf.addFlag(
'lrtDoubletD0Bins', 216)
267 cf.addFlag(
'lrtDoubletQptRange', 0.02)
268 cf.addFlag(
'lrtDoubletQptBins', 216)
269 cf.addFlag(
'lrtMonPhiRange', (0.2, 0.5))
270 cf.addFlag(
'lrtMonD0Range', (-100,100))
271 cf.addFlag(
'lrtMonZ0Range', (-300,300))
272 cf.addFlag(
'sampleType',
'')
288 cf.hitExtendX = [1] * 9
290 cf.addFlag(
'phiRangeCut',
True)
291 cf.addFlag(
'splitpt', 1)
292 cf.addFlag(
'phifilterwindow', 0.005)
312 cf.addFlag(
'combineLayers', [])
313 cf.addFlag(
'scale', [])
314 cf.hitExtendX = [2,1,0,0,0,0,0,0,0]
316 cf.addFlag(
'lrtSkipHitFiltering',
False)
317 cf.addFlag(
'lrtPtmin', 5)
318 cf.addFlag(
'allowHighTruthBarcode',
False)
319 cf.addFlag(
'mLRTpdgID', 0)
320 cf.addFlag(
'lrtStraighttrackXVar',
'phi')
321 cf.addFlag(
'lrtStraighttrackYVar',
'd0')
322 cf.addFlag(
'lrtStraighttrackPhiMin', 0.3)
323 cf.addFlag(
'lrtStraighttrackPhiMax', 0.5)
324 cf.addFlag(
'lrtStraighttrackD0Min', -300.0)
325 cf.addFlag(
'lrtStraighttrackD0Max', 300.0)
326 cf.addFlag(
'lrtStraighttrackXBins', 216)
327 cf.addFlag(
'lrtStraighttrackYBins', 216)
328 cf.addFlag(
'lrtStraighttrackXBufferBins', 6)
329 cf.addFlag(
'lrtStraighttrackYBufferBins', 2)
330 cf.addFlag(
'lrtStraighttrackSlicing',
True)
331 cf.addFlag(
'lrtStraighttrackThreshold', [1])
332 cf.addFlag(
'lrtStraighttrackConvolution', [])
333 cf.addFlag(
'lrtStraighttrackCombineLayers', [0,1,2,3,4,5,6,7])
334 cf.addFlag(
'lrtStraighttrackScale', [1])
335 cf.addFlag(
'lrtStraighttrackConvSizeX', 0)
336 cf.addFlag(
'lrtStraighttrackConvSizeY', 0)
337 cf.addFlag(
'lrtStraighttrackHitExtendX', [])
338 cf.addFlag(
'lrtStraighttrackStereo',
False)
339 cf.addFlag(
'lrtStraighttrackLocalMaxWindowSize', 0)
347 cf.name =
'dev_21-02-15'
355 cf.convolution = [1, 10, 1]
356 cf.addFlag(
'combineLayers', [])
357 cf.addFlag(
'scale', [])
370 cf.addFlag(
'genScanCuts',
'FPGATrackSimGenScanCuts')
371 cf.addFlag(
'reverse',
'True')
372 cf.addFlag(
'binFilter',
'IncrementalBuild')
373 cf.addFlag(
'layerStudy',
False)
374 cf.addFlag(
'layerMapFile',
'')
375 cf.addFlag(
'useLayerRadiiFile',
False)
376 cf.addFlag(
'noCuts',
False)
378 cf.addFlag(
'filterInBin',
False)
379 cf.addFlag(
'phiChi2Weight', 1.0)
380 cf.addFlag(
'etaChi2Weight', 1.0)
384 cf.addFlag(
'initialLayerStudy',
False)
385 cf.addFlag(
'layerStudyCutFile',
"")
386 cf.addFlag(
'rin', 30)
387 cf.addFlag(
'rout', 300)
388 cf.addFlag(
'parBins', [20, 20, 5, 20, 3])
389 cf.addFlag(
'parMin', [-1000, -1000, 0.0, 0.0, -10])
390 cf.addFlag(
'parMax', [ 1000, 1000, 1.0, 1.0, 10])
391 cf.addFlag(
'parSet',
"PhiSlicedKeyLyrPars")
392 cf.addFlag(
'keepHitsStrategy', -1)
397 cf.name =
'SecondStage'
398 cf.addFlag(
'CutFile',
"Cuts_step1_2ndStage")
399 cf.addFlag(
'LayerMapFile',
"")
403 ModuleMap =
'ModuleMap'
404 MetricLearning =
'MetricLearning'
413 ConnectedComponents =
'ConnectedComponents'
414 JunctionAwareCC =
'JunctionAwareCC'
420 cf.addFlag(
"graphTool", graphTool.ModuleMap, type=graphTool)
421 cf.addFlag(
"moduleMapType", moduleMapType.doublet, type=moduleMapType)
422 cf.addFlag(
"moduleMapFunc", moduleMapFunc.minmax, type=moduleMapFunc)
423 cf.addFlag(
"moduleMapTol",0.0000000001)
424 cf.addFlag(
"moduleMapPath",
'')
425 cf.addFlag(
"metricLearningR",0.1)
426 cf.addFlag(
"metricLearningMaxN", 512)
427 cf.addFlag(
"MLModelPath",
'')
428 cf.addFlag(
"GNNModelPath",
'')
429 cf.addFlag(
"roadMakerTool", roadMakerTool.ConnectedComponents, type=roadMakerTool)
430 cf.addFlag(
"edgeScoreCut",0.8)
431 cf.addFlag(
"doGNNRootOutput",
False)
432 cf.addFlag(
"doGNNTracking",
False)
433 cf.addFlag(
"doGNNPixelSeeding",
False)
434 cf.addFlag(
"nInputsGNN",13)
442 if __name__ ==
"__main__":
445 flags.loadAllDynamicFlags()
448 assert flags.Hough.firstInputToolN == 1 ,
"default firstInputToolN is wrong"
449 assert flags.Hough.barcodeFracMatch == 0.5,
"default barcodeFracMatch is wrong"
450 assert flags.Hough.fastMon
is False ,
"default fastMon is wrong"
451 assert flags.Hough.lrtMonZ0Range == (-300,300),
"default lrtMonZ0Rang is wrong"