ATLAS Offline Software
FPGATrackSimBankTags.py
Go to the documentation of this file.
1 # Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
2 '''
3 @file FPGATrackSimBankTags.py
4 @author Riley Xu - riley.xu@cern.ch
5 @date Feb 6th 2020
6 
7 This file declares a set of tags that the bank service uses to select files.
8 This allows for a consistent selection of sectors, fit constants, and map files
9 for downstream uses
10 
11 The tags also store information about the bank generation configuration used to generate
12 the files, and represent a canonical configuration (the variables are used as defaults
13 in new bank generation jobs, when the tag is specified).
14 
15 In general, tags should not be edited after creation for consistent results.
16 
17 All options can be further overridden from the command line or job options. For
18 example, if you're working outside of lxplus but the tag references files on EOS,
19 you can simply just copy the files to some directory and then override the
20 bankDir variable. The bank service will still use the file names in the tag.
21 See FPGATrackSimBankConfig.py, FPGATrackSimBankGenConfig.py, and the top-level FPGATrackSim README for details.
22 '''
23 
24 # Template to add a new tag, and some description of the fields
25 empty_tag = {
26  'name': '', # Name of this tag
27  'package': 'bank', # Package identifier
28  'mapTag': '', # Dependent map tag name
29 
30 
31  'bankDir': '', # Root directory of all the files referenced below
32  'formatted': False, # If the filenames below have {} replacement fields (see FPGATrackSimTagConfig)
33  'constants_1st': '', # Filename for first stage constants
34  'constants_2nd': '', # Filename for second stage constants
35  'constantsNoGuess_1st': [], # Filenames for first stage no-guess missing hit constants
36  'constantsNoGuess_2nd': [], # Filenames for second stage no-guess missing hit constants
37  'sectorBank_1st': '', # Filename for the first stage sectors
38  'sectorBank_2nd': '', # Filename for the second stage sectors
39  'sectorSlices': '', # Filename for the sector slices
40 
41 
42  'sectorQPtBins': [-0.001, -0.0005, 0, 0.0005, 0.001], # q/pt bin edges.
43  'qptAbsBinning': False, # Whether to bin in |q/pt| when defining sectors or not
44 
45 
46  'missHitsConsts': False, # Whether to generate constants for all permutations of missing hits
47 }
48 
49 
50 # Default tag to be used (should be updated to be the latest configuration)
51 defaultTag = 'EF_TaskForce_dev22'
52 
53 # Listed with most recent first. Keys are the tag names.
54 FPGATrackSimBankTags = {
55  'EF_TaskForce_dev22': {
56 
57  'name': 'EF_TaskForce_dev22',
58  'package': 'bank',
59  'mapTag': 'EF_TaskForce_dev22',
60 
61  'bankDir': '/eos/atlas/atlascerngroupdisk/det-htt/HTTsim/ATLAS-P2-ITK-22-02-00/21.9.16/{regionName}/',
62  'formatted': True,
63  'constants_1st': 'SectorBanks/corrgen_raw_8L_reg0_checkGood1.gcon',
64  'constants_2nd': 'SectorBanks/corrgen_raw_13L_reg0_checkGood1.gcon',
65  'sectorBank_1st': 'SectorBanks/sectorsHW_raw_8L_reg0_checkGood1.patt',
66  'sectorBank_2nd': 'SectorBanks/sectorsHW_raw_13L_reg0_checkGood1.patt',
67  'sectorSlices': 'SectorBanks/slices_8L.root',
68  'constantsNoGuess_1st': [
69  'SectorBanks/corrgen_raw_8L_skipPlane0.gcon',
70  'SectorBanks/corrgen_raw_8L_skipPlane1.gcon',
71  'SectorBanks/corrgen_raw_8L_skipPlane2.gcon',
72  'SectorBanks/corrgen_raw_8L_skipPlane3.gcon',
73  'SectorBanks/corrgen_raw_8L_skipPlane4.gcon',
74  'SectorBanks/corrgen_raw_8L_skipPlane5.gcon',
75  'SectorBanks/corrgen_raw_8L_skipPlane6.gcon',
76  'SectorBanks/corrgen_raw_8L_skipPlane7.gcon',
77  ],
78  'constantsNoGuess_2nd': [
79  'SectorBanks/corrgen_raw_13L_skipPlane0.gcon',
80  'SectorBanks/corrgen_raw_13L_skipPlane1.gcon',
81  'SectorBanks/corrgen_raw_13L_skipPlane2.gcon',
82  'SectorBanks/corrgen_raw_13L_skipPlane3.gcon',
83  'SectorBanks/corrgen_raw_13L_skipPlane4.gcon',
84  'SectorBanks/corrgen_raw_13L_skipPlane5.gcon',
85  'SectorBanks/corrgen_raw_13L_skipPlane6.gcon',
86  'SectorBanks/corrgen_raw_13L_skipPlane7.gcon',
87  ],
88 
89  'WCmax': 2,
90 
91  'missHitsConsts': False,
92 
93  'sectorQPtBins': [-0.001, -0.0005, 0, 0.0005, 0.001], # q/pt bin edges.
94  'qptAbsBinning': False, # Whether to bin in |q/pt| when defining sectors or not
95  },
96  'EF_TaskForce_dev23': {
97 
98  'name': 'EF_TaskForce_dev23',
99  'package': 'bank',
100  'mapTag': 'EF_TaskForce_dev23',
101 
102  'bankDir': '/eos/atlas/atlascerngroupdisk/det-htt/HTTsim/ATLAS-P2-ITK-23-00-01/21.9.15/{regionName}/',
103  'formatted': True,
104  'constants_1st': 'SectorBanks/corrgen_raw_8L_reg0_checkGood1.gcon',
105  'constants_2nd': 'SectorBanks/corrgen_raw_13L.gcon',
106  'sectorBank_1st': 'SectorBanks/sectorsHW_raw_8L_reg0_checkGood1.patt',
107  'sectorBank_2nd': 'SectorBanks/sectorsHW_raw_13L.patt',
108  'sectorSlices': 'SectorBanks/slices_8L.root',
109  'constantsNoGuess_1st': [
110  'SectorBanks/corrgen_raw_8L_skipPlane0.gcon',
111  'SectorBanks/corrgen_raw_8L_skipPlane1.gcon',
112  'SectorBanks/corrgen_raw_8L_skipPlane2.gcon',
113  'SectorBanks/corrgen_raw_8L_skipPlane3.gcon',
114  'SectorBanks/corrgen_raw_8L_skipPlane4.gcon',
115  'SectorBanks/corrgen_raw_8L_skipPlane5.gcon',
116  'SectorBanks/corrgen_raw_8L_skipPlane6.gcon',
117  'SectorBanks/corrgen_raw_8L_skipPlane7.gcon',
118  ],
119  'constantsNoGuess_2nd': [
120  'SectorBanks/corrgen_raw_13L_skipPlane0.gcon',
121  'SectorBanks/corrgen_raw_13L_skipPlane1.gcon',
122  'SectorBanks/corrgen_raw_13L_skipPlane2.gcon',
123  'SectorBanks/corrgen_raw_13L_skipPlane3.gcon',
124  'SectorBanks/corrgen_raw_13L_skipPlane4.gcon',
125  'SectorBanks/corrgen_raw_13L_skipPlane5.gcon',
126  'SectorBanks/corrgen_raw_13L_skipPlane6.gcon',
127  'SectorBanks/corrgen_raw_13L_skipPlane7.gcon',
128  ],
129 
130  'WCmax': 2,
131 
132  'missHitsConsts': False,
133 
134  'sectorQPtBins': [-0.001, -0.0005, 0, 0.0005, 0.001], # q/pt bin edges.
135  'qptAbsBinning': False, # Whether to bin in |q/pt| when defining sectors or not
136  },
137  '21.9.2': {
138 
139  'name': '21.9.2',
140  'package': 'bank',
141  'mapTag': 'TDRConf-v1',
142 
143  'bankDir': '/eos/atlas/atlascerngroupdisk/det-htt/HTTsim/ATLAS-P2-ITK-17-06-00/21.9.2/{regionName}/',
144  'formatted': True,
145  'constants_1st': 'SectorBanks/corrgen_raw_8L_reg0_checkGood1.gcon',
146  'constants_2nd': 'SectorBanks/corrgen_raw_13L_reg0_checkGood1.gcon',
147  'sectorBank_1st': 'SectorBanks/sectorsHW_raw_8L_reg0_checkGood1.patt',
148  'sectorBank_2nd': 'SectorBanks/sectorsHW_raw_13L_reg0_checkGood1.patt',
149  'sectorSlices': 'SectorBanks/slices_8L.root',
150  'constantsNoGuess_1st': [
151  'SectorBanks/corrgen_raw_8L_skipPlane0.gcon',
152  'SectorBanks/corrgen_raw_8L_skipPlane1.gcon',
153  'SectorBanks/corrgen_raw_8L_skipPlane2.gcon',
154  'SectorBanks/corrgen_raw_8L_skipPlane3.gcon',
155  'SectorBanks/corrgen_raw_8L_skipPlane4.gcon',
156  'SectorBanks/corrgen_raw_8L_skipPlane5.gcon',
157  'SectorBanks/corrgen_raw_8L_skipPlane6.gcon',
158  'SectorBanks/corrgen_raw_8L_skipPlane7.gcon',
159  ],
160  'constantsNoGuess_2nd': [
161  'SectorBanks/corrgen_raw_13L_skipPlane0.gcon',
162  'SectorBanks/corrgen_raw_13L_skipPlane1.gcon',
163  'SectorBanks/corrgen_raw_13L_skipPlane2.gcon',
164  'SectorBanks/corrgen_raw_13L_skipPlane3.gcon',
165  'SectorBanks/corrgen_raw_13L_skipPlane4.gcon',
166  'SectorBanks/corrgen_raw_13L_skipPlane5.gcon',
167  'SectorBanks/corrgen_raw_13L_skipPlane6.gcon',
168  'SectorBanks/corrgen_raw_13L_skipPlane7.gcon',
169  ],
170 
171  'WCmax': 2,
172 
173  'missHitsConsts': False,
174 
175  'sectorQPtBins': [-0.001, -0.0005, 0, 0.0005, 0.001], # q/pt bin edges.
176  'qptAbsBinning': False, # Whether to bin in |q/pt| when defining sectors or not
177  },
178  'jahreda_20-07-20' : {
179  'name': 'jahreda_20-07-20',
180  'package': 'bank',
181  'mapTag': 'TDRConf-v1',
182  'bankDir': '/eos/atlas/atlascerngroupdisk/det-htt/HTTsim/ATLAS-P2-ITK-17-06-00/21.9.2/eta0103phi0305/SectorBanks/20-07-20-jahreda/',
183  'formatted': False,
184  'constants_1st': 'corrgen_raw_8L_reg0_checkGood1.gcon',
185  'constants_2nd': 'corrgen_raw_13L_reg0_checkGood1.gcon',
186  'sectorBank_1st': 'sectorsHW_raw_8L_reg0_checkGood1.patt',
187  'sectorBank_2nd': 'sectorsHW_raw_13L_reg0_checkGood1.patt',
188  'sectorSlices': 'slices_8L_reg0.root',
189  'constantsNoGuess_1st': [
190  'corrgen_raw_8L_reg0_checkGood1_skipPlane0.gcon',
191  'corrgen_raw_8L_reg0_checkGood1_skipPlane1.gcon',
192  'corrgen_raw_8L_reg0_checkGood1_skipPlane2.gcon',
193  'corrgen_raw_8L_reg0_checkGood1_skipPlane3.gcon',
194  'corrgen_raw_8L_reg0_checkGood1_skipPlane4.gcon',
195  'corrgen_raw_8L_reg0_checkGood1_skipPlane5.gcon',
196  'corrgen_raw_8L_reg0_checkGood1_skipPlane6.gcon',
197  'corrgen_raw_8L_reg0_checkGood1_skipPlane7.gcon',
198  ],
199  'constantsNoGuess_2nd': [
200  'corrgen_raw_13L_reg0_checkGood1_skipPlane0.gcon',
201  'corrgen_raw_13L_reg0_checkGood1_skipPlane1.gcon',
202  'corrgen_raw_13L_reg0_checkGood1_skipPlane2.gcon',
203  'corrgen_raw_13L_reg0_checkGood1_skipPlane3.gcon',
204  'corrgen_raw_13L_reg0_checkGood1_skipPlane4.gcon',
205  'corrgen_raw_13L_reg0_checkGood1_skipPlane5.gcon',
206  'corrgen_raw_13L_reg0_checkGood1_skipPlane6.gcon',
207  'corrgen_raw_13L_reg0_checkGood1_skipPlane7.gcon',
208  ],
209 
210  'WCmax': 2,
211 
212  'missHitsConsts': False,
213 
214  'sectorQPtBins': [-0.001, -0.0005, 0, 0.0005, 0.001], # q/pt bin edges.
215  'qptAbsBinning': False, # Whether to bin in |q/pt| when defining sectors or not
216  }
217 }
218