Loading [MathJax]/jax/output/SVG/config.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
Functions | Variables
python.HLT.Menu.L1Seeds Namespace Reference

Functions

def Lvl1ItemByTriggerType (l1object, triggertype_pattern, triggertype_bitmask)
 obtain the l1 items according to the the trigger type function taken originally from TriggerPythonConfig More...
 
def getL1BackgroundSeed ()
 define the various seeds More...
 
def getL1StandbySeed (l1items)
 
def getL1TopoSeed (l1items)
 
def getL1CaloSeed (l1seed, l1object)
 
def getL1TauSeed (l1items)
 
def getL1BSSeed ()
 
def getL1JetBS ()
 
def getL1MuonSeed (l1seed, l1object)
 
def getEBnoL1PSSeed (l1items, l1seedname)
 
def getL1LowLumi ()
 
def getL1BKeePrimary ()
 
def getL1BKeePrimaryLegacy ()
 DO NOT EDIT IT: this function is to save L1_BKeePrimary seeds for data23, Athena,23.0.35. More...
 
def getL1BKeePrescaled ()
 
def getL1BKeePrescaledLegacy ()
 DO NOT EDIT IT: this function is to save L1_BKeePrescaled seeds for data23 with Athena,23.0.35. More...
 
def getSpecificL1Seeds (l1seedname, l1itemobject, menu_name)
 
def getInputTEfromL1Item (l1item, menu_name)
 map from l1item name to inputTE More...
 

Variables

 log
 
 rpcout_type
 
 rpcin_type
 
 cl_type
 
 calo_exceptions
 
 L1_multiseed_simple_getters
 assigned the seeds to the L1 names More...
 
 valid_multiseeds
 

Function Documentation

◆ getEBnoL1PSSeed()

def python.HLT.Menu.L1Seeds.getEBnoL1PSSeed (   l1items,
  l1seedname 
)

Definition at line 108 of file L1Seeds.py.

108 def getEBnoL1PSSeed(l1items, l1seedname):
109 
110  ebitem = l1seedname.strip('L1_').rstrip('_noPS')
111  # All of these L1 items must be PS=1 for an EB campaign
112  l1EBitems = {
113  'PhysicsHigh':
114  [
115  'L1_eEM18L_MU8F','L1_eEM26M', 'L1_eEM26T', 'L1_eEM28M','L1_2eEM10L_MU8F', 'L1_2eEM18M',
116  'L1_eEM24L_3eEM12L',
117  'L1_4jJ40', 'L1_jJ160', 'L1_jXE100', 'L1_2jJ40_jXE110',
118  'L1_eTAU140',
119  'L1_cTAU30M_3DR35-MU8F-eTAU30', 'L1_MU14FCH', 'L1_MU18VFCH', 'L1_MU10BOM',
120  'L1_5jJ40p0ETA25',
121  'L1_3MU5VF','L1_MU8F_2jJ40_jJ50',
122  'L1_jJ55p0ETA23_2jJ40p30ETA49', 'L1_jJ125p30ETA49', 'L1_jJ80p0ETA25_2jJ55_jJ50p30ETA49',
123  'L1_2MU5VF_3MU3V','L1_MU8VF_2MU5VF',
124  'L1_jMJJ-500-NFF', 'L1_jJ85p0ETA21_3jJ40p0ETA25', 'L1_SC175-SCjJ10',
125  'L1_HT190-jJ40s5pETA21', 'L1_cTAU30M_2cTAU20M_4jJ30p0ETA25', #'L1_TAU20IM_2TAU12IM_4J12p0ETA25',
126  'L1_cTAU30M_2cTAU20M_DR-eTAU30eTAU20-jJ55', 'L1_eEM18M_2cTAU20M_jXE70',
127  ],
128  'PhysicsVeryHigh':
129  [
130  'L1_jJ500', 'L1_jXE500'
131  ],
132  'EMPTY':
133  [
134  'L1_jJ30_EMPTY', 'L1_MU8VF_EMPTY', 'L1_eTAU12_EMPTY', 'L1_eTAU60_EMPTY', 'L1_eEM9_EMPTY'
135  ],
136  'FIRSTEMPTY':
137  [
138  'L1_jJ30_FIRSTEMPTY', 'L1_eTAU12_FIRSTEMPTY', 'L1_eEM9_FIRSTEMPTY'
139  ],
140  'UNPAIRED_ISO':
141  [
142  'L1_jJ30_UNPAIRED_ISO', 'L1_jJ40p30ETA49_UNPAIRED_ISO',
143  'L1_MU3V_UNPAIRED_ISO', 'L1_eEM9_UNPAIRED_ISO', 'L1_eTAU12_UNPAIRED_ISO', 'L1_eTAU60_UNPAIRED_ISO'
144  ],
145  'UNPAIRED_NONISO':
146  [
147  'L1_jJ30_UNPAIRED_NONISO',
148  ],
149  'ABORTGAPNOTCALIB': [] # No more items defined in this historical bunchgroup
150  }[ebitem]
151 
152  return l1EBitems
153 

◆ getInputTEfromL1Item()

def python.HLT.Menu.L1Seeds.getInputTEfromL1Item (   l1item,
  menu_name 
)

map from l1item name to inputTE

Definition at line 384 of file L1Seeds.py.

384 def getInputTEfromL1Item(l1item, menu_name):
385 
386  L1Map = {
387  'L1_TAU8_EMPTY' : ['HA8'],
388  'L1_TAU8_FIRSTEMPTY' : ['HA8'],
389  'L1_TAU8_UNPAIRED_ISO' : ['HA8'],
390  'L1_TAU8_UNPAIRED_NONISO': ['HA8'],
391  'L1_TAU12_EMPTY' : ['HA12'],
392  'L1_TAU12_FIRSTEMPTY' : ['HA12'],
393  'L1_TAU12_UNPAIRED_ISO' : ['HA12'],
394  'L1_RD0_FIRSTEMPTY' : [''],
395  'L1_TAU30' : ['HA30'],
396  'L1_TAU30_EMPTY' : ['HA30'],
397  'L1_TAU30_UNPAIRED_ISO' : ['HA30'],
398  'L1_TAU40' : ['HA40'],
399  'L1_TAU60' : ['HA60'],
400  'L1_TAU100' : ['HA100'],
401  }
402 
403  L1Map['L1_CALREQ2']=['CAL2']
404 
405  if l1item in L1Map:
406  TE = L1Map[l1item]
407  log.debug('Mapped L1 input TE from %s to %s.', l1item, TE)
408  return TE
409  else:
410  TE = l1item.replace("L1_","").split("_")[0]
411  TE = TE[1:] if TE[0].isdigit() else TE
412  return TE
413 

◆ getL1BackgroundSeed()

def python.HLT.Menu.L1Seeds.getL1BackgroundSeed ( )

define the various seeds

Definition at line 42 of file L1Seeds.py.

43  return [
44  'L1_BCM_2A_2C_BGRP12', 'L1_BCM_2A_2C_UNPAIRED_ISO',
45  'L1_BCM_Wide_CALIB', 'L1_BCM_Wide_BGRP12', 'L1_BCM_Wide_EMPTY', 'L1_BCM_Wide_UNPAIREDB1', 'L1_BCM_Wide_UNPAIREDB2',
46  'L1_BCM_2A_CALIB', 'L1_BCM_2C_CALIB',
47  'L1_BCM_2A_EMPTY', 'L1_BCM_2C_EMPTY',
48  'L1_BCM_2A_UNPAIREDB1', 'L1_BCM_2C_UNPAIREDB1', 'L1_BCM_2A_UNPAIREDB2', 'L1_BCM_2C_UNPAIREDB2',
49  'L1_BCM_2A_FIRSTINTRAIN', 'L1_BCM_2C_FIRSTINTRAIN',
50  'L1_jJ30_UNPAIREDB1', 'L1_jJ30_UNPAIREDB2',
51  'L1_jJ30_UNPAIRED_ISO', 'L1_jJ30_UNPAIRED_NONISO',
52  'L1_jJ90_UNPAIRED_ISO', 'L1_jJ90_UNPAIRED_NONISO',
53  'L1_jJ30_EMPTY', 'L1_jJ30_FIRSTEMPTY', 'L1_jJ30_BGRP12',
54  ]
55 

◆ getL1BKeePrescaled()

def python.HLT.Menu.L1Seeds.getL1BKeePrescaled ( )

Definition at line 263 of file L1Seeds.py.

263 def getL1BKeePrescaled():
264 
265  return [
266  'L1_LFV-MU5VF',
267  'L1_BPH-2M9-0DR15-MU5VFMU3V', # disabled
268  'L1_BPH-2M9-0DR15-C-MU5VFMU3V',
269  'L1_BPH-2M9-0DR15-2MU3V', #disabled
270  'L1_BPH-2M9-0DR15-2MU3VF',
271  'L1_BPH-0M9-eEM9-eEM7_MU5VF', # legacy 'L1_BPH-0M9-EM7-EM5_MU5VF',
272  'L1_BPH-0DR3-eEM9jJ40_MU5VF', # legacy 'L1_BPH-0DR3-EM7J15_MU5VF'
273  'L1_BPH-0DR3-eEM9jJ40_2MU3V', # legacy 'L1_BPH-0DR3-EM7J15_2MU3V'
274  'L1_JPSI-1M5-eEM9', # legacy 'L1_JPSI-1M5-EM7'
275  'L1_JPSI-1M5-eEM15', # legacy 'L1_JPSI-1M5-EM12'
276  'L1_jJ90', # legacy 'L1_J50'
277  'L1_jJ90_DETA20-jJ90J', # legacy 'L1_J50_DETA20-J50J'
278  'L1_jJ80', # legacy 'L1_J40'
279  'L1_3jJ55p0ETA23', # 'L1_3J25p0ETA23', # exist in menu
280  'L1_eEM22M_3jJ50', # legacy L1_EM18VHI_3J20
281  'L1_eEM24L_3jJ50', # legacy L1_EM20VH_3J20
282  'L1_eTAU80',
283  'L1_eEM26L',
284  'L1_eEM18',
285  'L1_2eEM18L'
286  ]
287 

◆ getL1BKeePrescaledLegacy()

def python.HLT.Menu.L1Seeds.getL1BKeePrescaledLegacy ( )

DO NOT EDIT IT: this function is to save L1_BKeePrescaled seeds for data23 with Athena,23.0.35.

Definition at line 290 of file L1Seeds.py.

291 
292  return [
293  'L1_LFV-MU5VF',
294  'L1_BPH-2M9-0DR15-MU5VFMU3V',
295  'L1_BPH-2M9-0DR15-2MU3V',
296  'L1_BPH-2M9-0DR15-2MU3V',
297  'L1_BPH-0M9-EM7-EM5_MU5VF',
298  'L1_BPH-0DR3-EM7J15_MU5VF',
299  'L1_BPH-0DR3-EM7J15_2MU3V',
300  'L1_JPSI-1M5-EM7',
301  'L1_JPSI-1M5-EM12',
302  'L1_TAU60',
303  'L1_J50',
304  'L1_J50_DETA20-J50J',
305  'L1_J40',
306  'L1_3J25p0ETA23', # exist in menu, but currently not used at HLT. We may drop as CTP output
307  'L1_EM20VH_3J20', # exist in menu, but currently not used at HLT. We may drop as CTP output
308  'L1_EM18VHI_3J20', # exist in menu, but currently not used at HLT. We may drop as CTP output
309  'L1_eTAU80',
310  'L1_eEM26L',
311  'L1_eEM18',
312  'L1_2eEM18L'
313  ]
314 

◆ getL1BKeePrimary()

def python.HLT.Menu.L1Seeds.getL1BKeePrimary ( )

Definition at line 179 of file L1Seeds.py.

179 def getL1BKeePrimary():
180 
181  return [
182  'L1_eEM24L_3eEM12L',
183  'L1_eEM22M_jMJJ-300', # legacy 'L1_EM18VHI_MJJ-300'
184  'L1_eEM18L_MU8F',
185  'L1_BPH-0M9-eEM9-eEM7_2MU3V', # legacy 'L1_BPH-0M9-EM7-EM5_2MU3V'
186  'L1_MU14FCH',
187  'L1_MU8VF_2MU5VF', # Replacing 'L1_MU8F_2MU5VF'
188  'L1_BPH-2M9-2DR15-2MU5VF',
189  'L1_cTAU30M_3DR35-MU8F-eTAU30',
190  'L1_MU8F_cTAU20M_3jJ30',
191  'L1_jXE100', # legacy 'L1_XE50',
192  'L1_eTAU60_2cTAU20M_jXE80', # legacy 'L1_TAU40_2TAU12IM_XE40', TriggerMenuMT:L1Seeds ERROR L1 item L1_eTAU60_2cTAU20M_jXE80 from L1_BKeePrimary seeds is not in current L1 menu
193  'L1_eEM18M_2cTAU20M_jXE70', # legacy 'L1_EM15VHI_2TAU12IM_XE35'
194  'L1_cTAU35M_2cTAU30M_2jJ55_3jJ50', # legacy 'L1_TAU25IM_2TAU20IM_2J25_3J20'
195  'L1_cTAU30M_2cTAU20M_4jJ30p0ETA25', # legacy 'L1_TAU20IM_2TAU12IM_4J12p0ETA25'
196  'L1_eEM18M_2cTAU20M_4jJ30', # legacy 'L1_EM15VHI_2TAU12IM_4J12'
197  'L1_jMJJ-700', # legacy 'L1_MJJ-700'
198  'L1_jMJJ-500-NFF', # legacy 'L1_MJJ-500-NFF'
199  'L1_jJ140_3jJ60', # legacy 'L1_J85_3J30',
200  'L1_jJ80p0ETA25_2jJ55_jJ50p30ETA49', # legacy 'L1_J40p0ETA25_2J25_J20p31ETA49'
201  'L1_jJ55p0ETA23_2jJ40p30ETA49', # legacy 'L1_J25p0ETA23_2J15p31ETA49'
202  'L1_jJ160', # legacy 'L1_J100'
203  'L1_4jJ40', # legacy 'L1_4J15'
204  'L1_3jJ70p0ETA23', # legacy 'L1_3J35p0ETA23'
205  'L1_3jJ40p0ETA25_jXE80', # legacy 'L1_3J15p0ETA25_XE40'
206  'L1_2eEM24L',
207  'L1_2eEM18', 'L1_2eEM18M',
208  'L1_eEM26M',
209  'L1_eEM28M',
210  'L1_2eEM10L_MU8F',
211  'L1_MU18VFCH',
212  'L1_eTAU80_2eTAU60',
213  'L1_cTAU30M_2cTAU20M_DR-eTAU30eTAU20-jJ55'
214  ]
215 

◆ getL1BKeePrimaryLegacy()

def python.HLT.Menu.L1Seeds.getL1BKeePrimaryLegacy ( )

DO NOT EDIT IT: this function is to save L1_BKeePrimary seeds for data23, Athena,23.0.35.

Definition at line 218 of file L1Seeds.py.

219 
220  return [
221  'L1_JPSI-1M5-eEM9', 'L1_JPSI-1M5-eEM15',
222  'L1_BPH-0M9-eEM9-eEM7_MU5VF',
223  'L1_eEM24L_3eEM12L',
224  'L1_EM18VHI_MJJ-300',
225  'L1_eEM18L_MU8F',
226  'L1_BPH-0M9-EM7-EM5_2MU3V',
227  'L1_MU14FCH',
228  'L1_MU8F_2MU5VF',
229  'L1_MU8F_TAU20IM',
230  'L1_MU8F_TAU12IM_3J12',
231  'L1_XE50',
232  'L1_TAU60_2TAU40',
233  'L1_TAU40_2TAU12IM_XE40',
234  'L1_EM15VHI_2TAU12IM_XE35',
235  'L1_TAU25IM_2TAU20IM_2J25_3J20',
236  'L1_TAU20IM_2TAU12IM_4J12p0ETA25',
237  'L1_EM15VHI_2TAU12IM_4J12',
238  'L1_DR-TAU20ITAU12I-J25',
239  'L1_MJJ-700',
240  'L1_MJJ-500-NFF',
241  'L1_J85_3J30',
242  'L1_J40p0ETA25_2J25_J20p31ETA49',
243  'L1_J25p0ETA23_2J15p31ETA49',
244  'L1_J100',
245  #'L1_4J15',
246  'L1_3J35p0ETA23',
247  'L1_3J15p0ETA25_XE40',
248  'L1_2eEM24L',
249  'L1_eEM18','L1_2eEM18', 'L1_2eEM18M', 'L1_2eEM18L',
250  'L1_eEM26M', 'L1_eEM26L',
251  'L1_eEM28M',
252  'L1_eEM24L_3eEM12L',
253  'L1_eEM22M_jMJJ-300',
254  'L1_eEM18L_MU8F',
255  'L1_2eEM10L_MU8F',
256  'L1_BPH-0M9-eEM9-eEM7_2MU3V',
257  'L1_MU18VFCH',
258  'L1_eTAU80_2eTAU60',
259  'L1_jJ160'
260  ]
261 

◆ getL1BSSeed()

def python.HLT.Menu.L1Seeds.getL1BSSeed ( )

Definition at line 87 of file L1Seeds.py.

87 def getL1BSSeed():
88  return ['L1_J15','L1_3J15','L1_3J10','L1_4J10']
89 

◆ getL1CaloSeed()

def python.HLT.Menu.L1Seeds.getL1CaloSeed (   l1seed,
  l1object 
)

Definition at line 70 of file L1Seeds.py.

70 def getL1CaloSeed(l1seed, l1object):
71  if ('EMPTY' in l1seed):
72  #l1calo_seeds = ','.join([ x for x in Lvl1ItemByTriggerType(l1object, cl_type, cl_type) \
73  # if (x not in calo_exceptions) ])
74  l1calo_seeds = [ x for x in Lvl1ItemByTriggerType(l1object, cl_type, cl_type) \
75  if ('EMPTY' in x and 'FIRSTEMPTY' not in x) ]
76  else:
77  l1calo_seeds = [ x for x in Lvl1ItemByTriggerType(l1object, cl_type, cl_type) if ("EMPTY" not in x or "FIRSTEMPTY" in x) \
78  and (x not in calo_exceptions) ]
79  return l1calo_seeds
80 

◆ getL1JetBS()

def python.HLT.Menu.L1Seeds.getL1JetBS ( )

Definition at line 90 of file L1Seeds.py.

90 def getL1JetBS():
91  return ['L1_J15','L1_3J15','L1_3J10','L1_4J10']
92 

◆ getL1LowLumi()

def python.HLT.Menu.L1Seeds.getL1LowLumi ( )

Definition at line 155 of file L1Seeds.py.

155 def getL1LowLumi():
156  return [
157  'L1_eEM24L',
158  'L1_2EM10VH',
159  'L1_2MU5VF', 'L1_3MU3V',
160  'L1_eEM18L_MU8F',
161  'L1_2eEM10L_MU8F',
162  'L1_TAU60',
163  'L1_cTAU30M_2cTAU20M_jJ55_2jJ50_3jJ30',
164  'L1_EM15HI_2TAU12IM_XE35',
165  'L1_MU8F_cTAU20M_jXE70',
166  'L1_TAU20_2TAU12_XE35',
167  'L1_cTAU30M_2cTAU20M_jXE70',
168  'L1_EM15HI_2TAU12IM', 'L1_EM15HI_2TAU12IM_J25_3J12',
169  'L1_EM15HI_TAU40_2TAU15',
170  'L1_MU8F_cTAU20M_jJ55_2jJ30',
171  'L1_MU8F_cTAU20M',
172  'L1_J75', #'L1_4J15',
173  'L1_XE50', 'L1_3J25p0ETA23',
174  'L1_3J40', 'L1_2jJ40_jXE110',
175  'L1_MU5VF_jJ80', 'L1_J75p31ETA49'
176  ]
177 

◆ getL1MuonSeed()

def python.HLT.Menu.L1Seeds.getL1MuonSeed (   l1seed,
  l1object 
)

Definition at line 94 of file L1Seeds.py.

94 def getL1MuonSeed(l1seed, l1object):
95  if ('EMPTY' in l1seed): # to only get MU*_EMPTY items
96  muon_seeds_list = [ x for x in Lvl1ItemByTriggerType(l1object, rpcout_type, rpcout_type) if ('MU' in x and '_EMPTY' in x ) ]
97  muon_seeds_list = list(set(muon_seeds_list))
98  muon_seeds = muon_seeds_list
99  else: #this one does NOT include the EMPTY items
100  muon_seeds_list = [ x for x in Lvl1ItemByTriggerType(l1object, rpcout_type, rpcout_type) if ('MU' in x and 'FIRSTEMPTY' in x ) ]
101  muon_seeds_list += [ x for x in Lvl1ItemByTriggerType(l1object, rpcin_type, rpcin_type) ]
102  muon_seeds_list = list(set(muon_seeds_list))
103  muon_seeds = muon_seeds_list
104 
105  return muon_seeds
106 

◆ getL1StandbySeed()

def python.HLT.Menu.L1Seeds.getL1StandbySeed (   l1items)

Definition at line 57 of file L1Seeds.py.

57 def getL1StandbySeed(l1items):
58  standby_seeds = [ x for x in l1items if \
59  "_EMPTY" not in x and "CALREQ" not in x and "ZB" not in x and \
60  "-" not in x and "CMU" not in x and "RD" not in x and \
61  "BCM" not in x and "BGRP12" not in x
62  ]
63  return standby_seeds
64 

◆ getL1TauSeed()

def python.HLT.Menu.L1Seeds.getL1TauSeed (   l1items)

Definition at line 82 of file L1Seeds.py.

82 def getL1TauSeed(l1items):
83  tau_seeds = [ x for x in l1items if "TAU" in x and "-" not in x and "EMPTY" not in x and "ISO" not in x]
84  return tau_seeds
85 

◆ getL1TopoSeed()

def python.HLT.Menu.L1Seeds.getL1TopoSeed (   l1items)

Definition at line 66 of file L1Seeds.py.

66 def getL1TopoSeed(l1items):
67  return [ x for x in l1items if "-" in x or "CMU" in x ]
68 

◆ getSpecificL1Seeds()

def python.HLT.Menu.L1Seeds.getSpecificL1Seeds (   l1seedname,
  l1itemobject,
  menu_name 
)

Definition at line 343 of file L1Seeds.py.

343 def getSpecificL1Seeds(l1seedname, l1itemobject, menu_name):
344  l1items = l1itemobject.keys()
345  L1Seed = ''
346 
347  if l1seedname == '':
348  log.error('No L1item name given!')
349  raise RuntimeError('No name provided to multiseed getter')
350 
351  if l1seedname in L1_multiseed_simple_getters:
352  L1Seed = L1_multiseed_simple_getters[l1seedname]()
353  elif l1seedname == 'L1_Standby':
354  L1Seed = getL1StandbySeed(l1items)
355  elif l1seedname == 'L1_Topo':
356  L1Seed = getL1TopoSeed(l1items)
357  elif l1seedname == 'L1_TAU':
358  L1Seed = getL1TauSeed(l1items)
359  elif (l1seedname in ['L1_PhysicsHigh_noPS', 'L1_PhysicsVeryHigh_noPS', 'L1_EMPTY_noPS', 'L1_FIRSTEMPTY_noPS', 'L1_UNPAIRED_ISO_noPS', 'L1_UNPAIRED_NONISO_noPS', 'L1_UNPAIREDB1_noPS', 'L1_UNPAIREB2_noPS', 'L1_ABORTGAPNOTCALIB_noPS']):
360  L1Seed = getEBnoL1PSSeed(l1items, l1seedname)
361  elif (l1seedname in ['L1_Calo', 'L1_Calo_EMPTY']):
362  L1Seed = getL1CaloSeed(l1seedname, l1itemobject)
363  elif (l1seedname in ['L1_Muon', 'L1_Muon_EMPTY']):
364  L1Seed = getL1MuonSeed(l1seedname, l1itemobject)
365  elif (l1seedname == 'L1_All'):
366  return []
367  else:
368  log.error('Given seed %s could not be found!', l1seedname)
369  raise RuntimeError(f'Failed to retrieve L1 item list for {l1seedname}')
370 
371  # check if all the l1 background seeds given are in the current L1 menu
372  for item in L1Seed:
373  if item not in l1items:
374  log.error('L1 item %s from %s seeds is not in current L1 menu', item, l1seedname)
375 
376  L1Seed.sort()
377  L1Seed = ",".join(L1Seed)
378 
379  return L1Seed
380 

◆ Lvl1ItemByTriggerType()

def python.HLT.Menu.L1Seeds.Lvl1ItemByTriggerType (   l1object,
  triggertype_pattern,
  triggertype_bitmask 
)

obtain the l1 items according to the the trigger type function taken originally from TriggerPythonConfig

The function returns those items where the items triggertype, after applying the mask, matches the pattern.
With this one can also select items where a certain bit is disabled

Definition at line 22 of file L1Seeds.py.

22 def Lvl1ItemByTriggerType(l1object, triggertype_pattern, triggertype_bitmask):
23  """
24  The function returns those items where the items triggertype, after applying the mask, matches the pattern.
25  With this one can also select items where a certain bit is disabled
26  """
27  if triggertype_pattern<0 or triggertype_pattern>0xFF:
28  raise RuntimeError('TriggerPythonConfig.Lvl1ItemByTriggerType(triggertype_pattern,triggertype_bitmask) needs to be called with 0<=triggertype_pattern<=0xFF, ' + \
29  + 'but is called with triggertype_pattern=%i' % triggertype_pattern)
30  if triggertype_bitmask<0 or triggertype_bitmask>0xFF:
31  raise RuntimeError('TriggerPythonConfig.Lvl1ItemByTriggerType(triggertype_pattern,triggertype_bitmask) needs to be called with 0<=triggertype_bitmask<=0xFF, ' + \
32  + 'but is called with triggertype_bitmask=%i' % triggertype_bitmask)
33  itemsForMenu = [item for item in l1object if l1object[item]['ctpid'] != -1]
34  if not itemsForMenu:
35  log.error('No item defined for the L1 Menu, the TriggerConfL1 object does not contain items')
36  res = [item for item in itemsForMenu if ( (triggertype_bitmask & int(l1object[item]['triggerType'],2)) == triggertype_pattern)]
37  return res
38 

Variable Documentation

◆ calo_exceptions

python.HLT.Menu.L1Seeds.calo_exceptions

Definition at line 15 of file L1Seeds.py.

◆ cl_type

python.HLT.Menu.L1Seeds.cl_type

Definition at line 12 of file L1Seeds.py.

◆ L1_multiseed_simple_getters

python.HLT.Menu.L1Seeds.L1_multiseed_simple_getters

assigned the seeds to the L1 names

Definition at line 319 of file L1Seeds.py.

◆ log

python.HLT.Menu.L1Seeds.log

Definition at line 4 of file L1Seeds.py.

◆ rpcin_type

python.HLT.Menu.L1Seeds.rpcin_type

Definition at line 11 of file L1Seeds.py.

◆ rpcout_type

python.HLT.Menu.L1Seeds.rpcout_type

Definition at line 10 of file L1Seeds.py.

◆ valid_multiseeds

python.HLT.Menu.L1Seeds.valid_multiseeds

Definition at line 330 of file L1Seeds.py.

python.HLT.Menu.L1Seeds.Lvl1ItemByTriggerType
def Lvl1ItemByTriggerType(l1object, triggertype_pattern, triggertype_bitmask)
obtain the l1 items according to the the trigger type function taken originally from TriggerPythonCon...
Definition: L1Seeds.py:22
python.HLT.Menu.L1Seeds.getEBnoL1PSSeed
def getEBnoL1PSSeed(l1items, l1seedname)
Definition: L1Seeds.py:108
python.HLT.Menu.L1Seeds.getL1BKeePrescaled
def getL1BKeePrescaled()
Definition: L1Seeds.py:263
python.HLT.Menu.L1Seeds.getL1CaloSeed
def getL1CaloSeed(l1seed, l1object)
Definition: L1Seeds.py:70
python.HLT.Menu.L1Seeds.getL1StandbySeed
def getL1StandbySeed(l1items)
Definition: L1Seeds.py:57
python.HLT.Menu.L1Seeds.getL1TopoSeed
def getL1TopoSeed(l1items)
Definition: L1Seeds.py:66
python.HLT.Menu.L1Seeds.getL1JetBS
def getL1JetBS()
Definition: L1Seeds.py:90
python.HLT.Menu.L1Seeds.getL1MuonSeed
def getL1MuonSeed(l1seed, l1object)
Definition: L1Seeds.py:94
python.HLT.Menu.L1Seeds.getL1BKeePrimary
def getL1BKeePrimary()
Definition: L1Seeds.py:179
python.HLT.Menu.L1Seeds.getL1LowLumi
def getL1LowLumi()
Definition: L1Seeds.py:155
histSizes.list
def list(name, path='/')
Definition: histSizes.py:38
python.HLT.Menu.L1Seeds.getInputTEfromL1Item
def getInputTEfromL1Item(l1item, menu_name)
map from l1item name to inputTE
Definition: L1Seeds.py:384
CxxUtils::set
constexpr std::enable_if_t< is_bitmask_v< E >, E & > set(E &lhs, E rhs)
Convenience function to set bits in a class enum bitmask.
Definition: bitmask.h:232
TCS::join
std::string join(const std::vector< std::string > &v, const char c=',')
Definition: Trigger/TrigT1/L1Topo/L1TopoCommon/Root/StringUtils.cxx:10
python.CaloAddPedShiftConfig.int
int
Definition: CaloAddPedShiftConfig.py:45
python.HLT.Menu.L1Seeds.getL1BackgroundSeed
def getL1BackgroundSeed()
define the various seeds
Definition: L1Seeds.py:42
python.HLT.Menu.L1Seeds.getSpecificL1Seeds
def getSpecificL1Seeds(l1seedname, l1itemobject, menu_name)
Definition: L1Seeds.py:343
python.HLT.Menu.L1Seeds.getL1TauSeed
def getL1TauSeed(l1items)
Definition: L1Seeds.py:82
python.HLT.Menu.L1Seeds.getL1BSSeed
def getL1BSSeed()
Definition: L1Seeds.py:87
python.HLT.Menu.L1Seeds.getL1BKeePrimaryLegacy
def getL1BKeePrimaryLegacy()
DO NOT EDIT IT: this function is to save L1_BKeePrimary seeds for data23, Athena,23....
Definition: L1Seeds.py:218
Trk::split
@ split
Definition: LayerMaterialProperties.h:38
python.HLT.Menu.L1Seeds.getL1BKeePrescaledLegacy
def getL1BKeePrescaledLegacy()
DO NOT EDIT IT: this function is to save L1_BKeePrescaled seeds for data23 with Athena,...
Definition: L1Seeds.py:290