ATLAS Offline Software
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

 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_MU8F_cTAU30M', '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_SC111-CjJ40',
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 389 of file L1Seeds.py.

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

◆ 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 267 of file L1Seeds.py.

267 def getL1BKeePrescaled():
268 
269  return [
270  'L1_LFV-MU5VF',
271  'L1_BPH-2M9-0DR15-MU5VFMU3V',
272  'L1_BPH-2M9-0DR15-2MU3V',
273  'L1_BPH-2M9-0DR15-2MU3V',
274  'L1_BPH-0M9-eEM9-eEM7_MU5VF', # legacy 'L1_BPH-0M9-EM7-EM5_MU5VF',
275  'L1_BPH-0DR3-eEM9jJ40_MU5VF', # legacy 'L1_BPH-0DR3-EM7J15_MU5VF'
276  'L1_BPH-0DR3-eEM9jJ40_2MU3V', # legacy 'L1_BPH-0DR3-EM7J15_2MU3V'
277  'L1_JPSI-1M5-eEM9', # legacy 'L1_JPSI-1M5-EM7'
278  'L1_JPSI-1M5-eEM15', # legacy 'L1_JPSI-1M5-EM12'
279  'L1_jJ90', # legacy 'L1_J50'
280  'L1_jJ90_DETA20-jJ90J', # legacy 'L1_J50_DETA20-J50J'
281  'L1_jJ80', # legacy 'L1_J40'
282  # 'L1_3J25p0ETA23', # exist in menu, but currently not used at HLT. We may drop as CTP output
283  # 'L1_EM20VH_3J20', # exist in menu, but currently not used at HLT. We may drop as CTP output
284  # 'L1_EM18VHI_3J20', # exist in menu, but currently not used at HLT. We may drop as CTP output
285  'L1_eEM22M_3jJ50', # legacy L1_EM18VHI_3J20
286  'L1_eEM24L_3jJ50', # legacy L1_EM20VH_3J20
287  'L1_eTAU80',
288  'L1_eEM26L',
289  'L1_eEM18',
290  'L1_2eEM18L'
291  ]
292 

◆ 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 295 of file L1Seeds.py.

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

◆ getL1BKeePrimary()

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

Definition at line 180 of file L1Seeds.py.

180 def getL1BKeePrimary():
181 
182  return [
183  'L1_JPSI-1M5-eEM9', 'L1_JPSI-1M5-eEM15',
184  'L1_BPH-0M9-eEM9-eEM7_MU5VF', # legacy 'L1_BPH-0M9-EM7-EM5_MU5VF'
185  'L1_eEM24L_3eEM12L',
186  'L1_eEM22M_jMJJ-300', # legacy 'L1_EM18VHI_MJJ-300'
187  'L1_eEM18L_MU8F',
188  'L1_BPH-0M9-eEM9-eEM7_2MU3V', # legacy 'L1_BPH-0M9-EM7-EM5_2MU3V'
189  'L1_MU14FCH',
190  'L1_MU8F_2MU5VF',
191  'L1_MU8F_eTAU30M', # legacy 'L1_MU8F_TAU20IM'
192  'L1_MU8F_cTAU30M',
193  'L1_MU8F_eTAU20M_3jJ30', # legacy 'L1_MU8F_TAU12IM_3J12'
194  'L1_MU8F_cTAU20M_3jJ30',
195  'L1_jXE100', # legacy 'L1_XE50',
196  #'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
197  'L1_eEM18M_2cTAU20M_jXE70', # legacy 'L1_EM15VHI_2TAU12IM_XE35'
198  'L1_cTAU35M_2cTAU30M_2jJ55_3jJ50', # legacy 'L1_TAU25IM_2TAU20IM_2J25_3J20'
199  'L1_cTAU30M_2cTAU20M_4jJ30p0ETA25', # legacy 'L1_TAU20IM_2TAU12IM_4J12p0ETA25'
200  'L1_eEM18M_2cTAU20M_4jJ30', # legacy 'L1_EM15VHI_2TAU12IM_4J12'
201  'L1_jMJJ-700', # legacy 'L1_MJJ-700'
202  'L1_jMJJ-500-NFF', # legacy 'L1_MJJ-500-NFF'
203  'L1_jJ140_3jJ60', # legacy 'L1_J85_3J30',
204  'L1_jJ80p0ETA25_2jJ55_jJ50p30ETA49', # legacy 'L1_J40p0ETA25_2J25_J20p31ETA49'
205  'L1_jJ55p0ETA23_2jJ40p30ETA49', # legacy 'L1_J25p0ETA23_2J15p31ETA49'
206  'L1_jJ160', # legacy 'L1_J100'
207  'L1_4jJ40', # legacy 'L1_4J15'
208  'L1_3jJ70p0ETA23', # legacy 'L1_3J35p0ETA23'
209  # legacy 'L1_3J15p0ETA25_XE40',
210  'L1_2eEM24L',
211  'L1_eEM18','L1_2eEM18', 'L1_2eEM18M', 'L1_2eEM18L',
212  'L1_eEM26M', 'L1_eEM26L',
213  'L1_eEM28M',
214  'L1_2eEM10L_MU8F',
215  'L1_MU18VFCH',
216  'L1_eTAU80_2eTAU60',
217  'L1_cTAU30M_2cTAU20M_DR-eTAU30eTAU20-jJ55'
218  ]
219 

◆ 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 222 of file L1Seeds.py.

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

◆ 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', 'L1_eTAU30M_2eTAU20M_jJ55_2jJ50_3jJ30',
163  'L1_EM15HI_2TAU12IM_XE35',
164  'L1_MU8F_eTAU20M_jXE70',
165  'L1_MU8F_cTAU20M_jXE70',
166  'L1_TAU20_2TAU12_XE35',
167  'L1_eTAU30M_2eTAU20M_jXE70',
168  'L1_EM15HI_2TAU12IM', 'L1_EM15HI_2TAU12IM_J25_3J12',
169  'L1_EM15HI_TAU40_2TAU15',
170  'L1_MU8F_eTAU20M_jJ55_2jJ30',
171  'L1_MU8F_eTAU20M',
172  'L1_MU8F_cTAU20M',
173  'L1_J75', #'L1_4J15',
174  'L1_XE50', 'L1_3J25p0ETA23',
175  'L1_3J40', 'L1_2jJ40_jXE110',
176  'L1_MU5VF_jJ80', 'L1_J75p31ETA49'
177  ]
178 

◆ 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 348 of file L1Seeds.py.

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

◆ 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 324 of file L1Seeds.py.

◆ rpcin_type

python.HLT.Menu.L1Seeds.rpcin_type

Definition at line 11 of file L1Seeds.py.

◆ valid_multiseeds

python.HLT.Menu.L1Seeds.valid_multiseeds

Definition at line 335 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:267
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
CaloCellPos2Ntuple.int
int
Definition: CaloCellPos2Ntuple.py:24
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:180
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:389
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.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:348
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:222
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:295