ATLAS Offline Software
ThresholdDef.py
Go to the documentation of this file.
1 # Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
2 
3 from ..Base.Thresholds import MuonThreshold, eEMThreshold, eEMVarThreshold, jEMThreshold, eTauThreshold, jTauThreshold, cTauThreshold, jJetThreshold, jLJetThreshold, gJetThreshold, gLJetThreshold, XEThreshold, TEThreshold, LArSaturationThreshold, MBTSThreshold, MBTSSIThreshold, NimThreshold, NSWMonThreshold, ZeroBiasThresholdTopo
4 from .L1CaloThresholdMapping import get_threshold_cut
5 
6 # Max thresholds for SPARE triggers, corresponding to maximum value in L1Topo
7 # The pass requirement is et >= cut, so these ensure no events can pass
8 thrVal_SPARE = 819.1 # == 2^13-1 * 100 MeV
9 thrVal_SPAREXE = 104857.5 # == 2^20-1 * 100 MeV
10 
12 
13  alreadyExecuted = False
14 
15  eEMVar = {
16  1 : {
17  "eta_bin_boundaries": [0, 0.7, 0.8, 1.1, 1.3, 1.4, 1.5, 1.8, 2.5], # 8 bins => 9 boundaries
18  "shift": [ 1, 1, -1, -2, -2, -3, -1, 0]
19  }
20  }
21 
22  jJVar = {
23  0 : {
24  # boundaries fixed in L1Topo FW, do not change!
25  "eta_bin_boundaries": [0, 0.8, 1.6, 4.9], # 3 bins => 4 boundaries
26  "shift": [ 0, 0, 0]
27  },
28  1 : {
29  # boundaries fixed in L1Topo FW, do not change!
30  "eta_bin_boundaries": [0, 0.8, 1.6, 4.9], # 3 bins => 4 boundaries
31  "shift": [ 1, -1, 0]
32  }
33  }
34 
35  @staticmethod
36  def addVaryingThrValues(thr, pt, shift_set):
37  eta_bin_boundaries = ThresholdDef.eEMVar[shift_set]["eta_bin_boundaries"]
38  shift = ThresholdDef.eEMVar[shift_set]["shift"]
39  thr.addThrValue(pt+shift[0], priority=1)
40  for idx,sh in reversed(list(enumerate(shift))):
41  eta_min = int(10 * eta_bin_boundaries[idx])
42  eta_max = int(10 * eta_bin_boundaries[idx+1])
43  thr.addThrValue( pt + sh, -eta_max, -eta_min, priority=2)
44  for idx,sh in enumerate(shift):
45  eta_min = int(10 * eta_bin_boundaries[idx])
46  eta_max = int(10 * eta_bin_boundaries[idx+1])
47  thr.addThrValue( pt + sh, eta_min, eta_max, priority=2)
48  return thr
49 
50  def addJetVaryingThrValues(thr, pt, shift_set, rangemin, rangemax):
51  eta_bin_boundaries = ThresholdDef.jJVar[shift_set]["eta_bin_boundaries"]
52  shift = ThresholdDef.jJVar[shift_set]["shift"]
53  for idx,sh in reversed(list(enumerate(shift))):
54  eta_min = int(10 * eta_bin_boundaries[idx])
55  eta_max = int(10 * eta_bin_boundaries[idx+1])
56  if -eta_min < -rangemax or -eta_max > -rangemin:
57  continue
58  if -eta_min > - rangemin:
59  eta_min = rangemin
60  if -eta_max < - rangemax:
61  eta_max = rangemax
62  thr.addThrValue( pt + sh, -eta_max, -eta_min, priority=1)
63  for idx,sh in enumerate(shift):
64  eta_min = int(10 * eta_bin_boundaries[idx])
65  eta_max = int(10 * eta_bin_boundaries[idx+1])
66  if eta_min > rangemax or eta_max < rangemin:
67  continue
68  if eta_max > rangemax:
69  eta_max = rangemax
70  if eta_min < rangemin:
71  eta_min = rangemin
72  thr.addThrValue( pt + sh, eta_min, eta_max, priority=1)
73  return thr
74 
75 
76  @staticmethod
77  def registerThresholds(tc, menuName):
78 
79  if ThresholdDef.alreadyExecuted:
80  raise RuntimeError("Calling ThresholdDef.registerThresholds twice")
81  ThresholdDef.alreadyExecuted = True
82 
83  # MU (ATR-23227)
84  # Primary and emergency:
85  MuonThreshold( "MU3V" ).setThrValue( thr=3, ba=4 ) # similar to Run-2 MU4 efficiency
86  MuonThreshold( "MU3VF" ).setThrValue( thr=3, ba=4 ).setTGCFlags("F") # similar to Run-2 MU4 rate
87  MuonThreshold( "MU3VC" ).setThrValue( thr=3, ba=4 ).setTGCFlags("C") # to be checked
88  MuonThreshold( "MU5VF" ).setThrValue( thr=5, ba=6 ).setTGCFlags("F") # similar to Run-2 MU6
89  MuonThreshold( "MU8F" ).setThrValue( thr=8 ).setTGCFlags("F") # similar to Run-2 MU10
90  MuonThreshold( "MU8FC" ).setThrValue( thr=8 ).setTGCFlags("F & C") # backup for MU8F
91  MuonThreshold( "MU9VF" ).setThrValue( thr=9,ba=8 ).setTGCFlags("F") # backup for MU8F
92  MuonThreshold( "MU9VFC" ).setThrValue( thr=9,ba=8 ).setTGCFlags("F & C") # backup for MU8F
93  MuonThreshold( "MU8VF" ).setThrValue( thr=8, ba=10 ).setTGCFlags("F") # similar to Run-2 MU11
94  MuonThreshold( "MU8VFC" ).setThrValue( thr=8, ba=10 ).setTGCFlags("F & C") # backup for MU8VF
95  MuonThreshold( "MU14FCH" ).setThrValue( thr=14 ).setTGCFlags("F & C & H") # similar to Run-2 MU20
96  MuonThreshold( "MU14FCHR" ).setThrValue( thr=14 ).setTGCFlags("F & C & H").setExclusionList("rpcFeet") # similar to Run-2 MU21
97  MuonThreshold( "MU15VFCH" ).setThrValue( thr=15, ba=14 ).setTGCFlags("F & C & H") # similar to Run-2 MU20, bit lower rate than MU14
98  MuonThreshold( "MU15VFCHR").setThrValue( thr=15, ba=14 ).setTGCFlags("F & C & H").setExclusionList("rpcFeet") # emergency
99  MuonThreshold( "MU18VFCH" ).setThrValue( thr=18, ba=14 ).setTGCFlags("F & C & H") # emergency
100  # Close-by barrel muon:
101  MuonThreshold( "MU10BOM" ).setThrValue( thr=10 ).setRPCFlags("M").setRegion("BA") # multiple close-by muons, barrel-only
102  MuonThreshold( "MU12BOM" ).setThrValue( thr=12 ).setRPCFlags("M").setRegion("BA") # multiple close-by muons, barel-only, emergency
103  # Late muon:
104  MuonThreshold( "MU8FH" ).setThrValue( thr=8 ).setTGCFlags("F & H") # for late muon
105  # Alignment:
106  MuonThreshold( "MU20VFC" ).setThrValue( thr=20, ba=14 ).setTGCFlags("F & C") # alignment with toroid off
107  # Commissioning:
108  MuonThreshold( "MU12FCH" ).setThrValue( thr=12 ).setTGCFlags("F & C & H") # commissioning
109  MuonThreshold( "MU4BOM" ).setThrValue( thr=4 ).setRPCFlags("M").setRegion("BA") # multiple close-by muons, barrel-only, commissioning
110  MuonThreshold( "MU4BO" ).setThrValue( thr=4 ).setRegion("BA") # barrel-only, commissioning
111  MuonThreshold( "MU10BO" ).setThrValue( thr=10 ).setRegion("BA") # barrel-only, commissioning
112  MuonThreshold( "MU14EOF" ).setThrValue( thr=14 ).setTGCFlags("F").setRegion("EC,FW") # forward muon, commissioning
113  MuonThreshold( "MU8EOF" ).setThrValue( thr=8 ).setTGCFlags("F").setRegion("EC,FW") # forward muon, commissioning
114  MuonThreshold( "MU3EOF" ).setThrValue( thr=3, ba=4 ).setTGCFlags("F").setRegion("EC,FW") # forward muon, commissioning
115 
116  NSWMonThreshold('NSWMon')
117 
118  # eEM
119  eEM_cuts = [1, 2, 5, 7, 9, 12, 15, 18, 26]
120  # get ptMinToTopo value (different for pp and HI), then adjust threshold for lowest pT items based on this value
121  ttconfig = tc.l1menu.thresholds.typeWideThresholdConfig('eEM')
122  ptMin = ttconfig["ptMinToTopo"]
123  for thrV in eEM_cuts:
124  eEMThreshold('eEM%i' %thrV, 'eEM').addThrValue(max(get_threshold_cut('eEM', thrV), ptMin))
125 
126  # eEM beam splashes
127  eEMThreshold('eEM22A', 'eEM').addThrValue(get_threshold_cut('eEM',22),16,20)
128  eEMThreshold('eEM22C', 'eEM').addThrValue(get_threshold_cut('eEM',22),-20,-16)
129 
130  # eEM SPARES
131  for thrV in range(1,3):
132  eEMThreshold('eEMSPARE%i' % thrV, 'eEM').addThrValue(thrVal_SPARE)
133 
134  # L section (used to be VH in Run2)
135  eEM_cuts = [9, 10, 12, 18, 24, 26, 40]
136  for thrV in eEM_cuts:
137  eEMThreshold('eEM%iL' % thrV, 'eEM').addThrValue(get_threshold_cut('eEM',thrV)).setIsolation( reta = "Loose", wstot = "Loose", rhad = "Loose" )
138 
139  # M section (used to be VHI in Run2)
140  eEM_cuts = [10, 18, 22, 26, 28]
141  for thrV in eEM_cuts:
142  eEMThreshold('eEM%iM' % thrV, 'eEM').addThrValue(get_threshold_cut('eEM',thrV)).setIsolation( reta = "Medium", wstot = "Medium", rhad = "Medium" )
143 
144  # T section (used to be VHIM in Run2)
145  eEM_cuts = [26]
146  for thrV in eEM_cuts:
147  eEMThreshold('eEM%iT' % thrV, 'eEM').addThrValue(get_threshold_cut('eEM',thrV)).setIsolation( reta = "Tight", wstot = "Tight", rhad = "Tight" )
148 
149  # eEM with eta-dependent Et cuts
150  eEM_cuts = [24]
151  for thrV in eEM_cuts:
152  ThresholdDef.addVaryingThrValues( pt= get_threshold_cut('eEM',thrV), shift_set = 1,
153  thr=eEMVarThreshold( 'eEM%iVM' % thrV, 'eEM').setIsolation( reta = "Medium", wstot = "Medium", rhad = "Medium" ) )
154 
155  # jEM
156  jEM_cuts = [20]
157  for thrV in jEM_cuts:
158  jEMThreshold('jEM%i' % thrV, 'jEM').addThrValue(get_threshold_cut('jEM',thrV))
159 
160  jEM_cuts = [20] # TODO: name->cut dictionary (needed as long as jEM are not calibrated)
161  for thrV in jEM_cuts:
162  jEMThreshold('jEM%iM' % thrV, 'jEM').addThrValue(get_threshold_cut('jEM',thrV)).setIsolation( iso = "Medium", frac = "Medium", frac2 = "Medium" )
163 
164  # jEM SPARES
165  for thrV in range(1,2):
166  jEMThreshold('jEMSPARE%i' % thrV, 'jEM').addThrValue(thrVal_SPARE)
167 
168  # eTAU
169  eTAU_cuts = [1, 12, 20, 30, 35, 60, 80, 140]
170  # get ptMinToTopo value (different for pp and HI), then adjust threshold for lowest pT items based on this value
171  ttconfig = tc.l1menu.thresholds.typeWideThresholdConfig('eTAU')
172  ptMin = ttconfig["ptMinToTopo"]
173  for thrV in eTAU_cuts:
174  eTauThreshold('eTAU%i' % thrV, 'eTAU').setEt(max(get_threshold_cut('eTAU', thrV), ptMin))
175 
176  eTAU_cuts = [20]
177  for thrV in eTAU_cuts:
178  eTauThreshold('eTAU%iL' % thrV, 'eTAU').setEt(get_threshold_cut('eTAU', thrV)).setIsolation( rCore = "Loose" )
179  eTAU_cuts = [20, 30, 35]
180  for thrV in eTAU_cuts:
181  eTauThreshold('eTAU%iM' % thrV, 'eTAU').setEt(get_threshold_cut('eTAU', thrV)).setIsolation( rCore = "Medium" )
182 
183  eTAU_cuts = [40]
184  for thrV in eTAU_cuts:
185  eTauThreshold('eTAU%iHT' % thrV, 'eTAU').setEt(get_threshold_cut('eTAU', thrV)).setIsolation( rHad = "Tight" )
186  eTAU_cuts = [40,60]
187  for thrV in eTAU_cuts:
188  eTauThreshold('eTAU%iHM' % thrV, 'eTAU').setEt(get_threshold_cut('eTAU', thrV)).setIsolation( rHad = "Medium" )
189  eTAU_cuts = [60,80]
190  for thrV in eTAU_cuts:
191  eTauThreshold('eTAU%iHL' % thrV, 'eTAU').setEt(get_threshold_cut('eTAU', thrV)).setIsolation( rHad = "Loose" )
192  # eTAU SPARES
193  for thrV in range(1,10):
194  eTauThreshold('eTAUSPARE%i' % thrV, 'eTAU').setEt(thrVal_SPARE)
195 
196  # cTAU
197  cTAU_cuts = [12, 20, 30, 35]
198  for thrV in cTAU_cuts:
199  cTauThreshold('cTAU%iM' % thrV, 'cTAU').setEt(get_threshold_cut('cTAU', thrV)).setIsolation( isolation = f'Medium{thrV}' )
200 
201  # cTAU SPARES
202  for thrV in range(1,3):
203  cTauThreshold('cTAUSPARE%i' % thrV, 'cTAU').setEt(thrVal_SPARE)
204 
205  # jTAU
206  jTAU_cuts = [1, 20, 30]
207  # get ptMinToTopo1 value (different for pp and HI), then adjust threshold for lowest pT items based on this value
208  ttconfig = tc.l1menu.thresholds.typeWideThresholdConfig('jTAU')
209  ptMin = ttconfig["ptMinToTopo1"]
210  for thrV in jTAU_cuts:
211  jTauThreshold('jTAU%i' % thrV, 'jTAU').setEt(max(get_threshold_cut('jTAU', thrV), ptMin))
212  jTAU_cuts = [30]
213  for thrV in jTAU_cuts:
214  jTauThreshold('jTAU%iM' % thrV, 'jTAU').setEt(get_threshold_cut('jTAU', thrV)).setIsolation( isolation = "Medium" )
215 
216  # jTAU SPARES
217 
218  # jJET (default eta range)
219  # For correspondence to Run 2, see https://twiki.cern.ch/twiki/bin/viewauth/Atlas/TriggerNamingRun3#New_naming_for_Calo_items
220  jJ_cuts = [20, 30, 40, 50, 55, 60, 80, 90, 125, 140, 160, 180, 500]
221  for thrV in jJ_cuts:
222  ThresholdDef.addJetVaryingThrValues( jJetThreshold('jJ%i' % thrV, 'jJ'), pt=get_threshold_cut('jJ', thrV), shift_set=0, rangemin=0, rangemax=32 )
223 
224  # jJET central
225  jJ_cuts = [(30,25), (40,25), (55,23), (70,23), (80,25), (85,21)]
226  for thrV, etamax in jJ_cuts:
227  ThresholdDef.addJetVaryingThrValues( jJetThreshold( 'jJ%ip0ETA%i' % (thrV, etamax), 'jJ'), pt=get_threshold_cut('CjJ', thrV), shift_set=0, rangemin=0, rangemax=etamax )
228 
229  # jJET central, variable eta (EXAMPLE)
230  # ThresholdDef.addJetVaryingThrValues( jJetThreshold('jJ12p0ETA25V', 'jJ'), pt=12, shift_set=1, rangemin=0, rangemax=25 )
231 
232  # jJET forward jet
233  jJ_cuts = [15, 20, 40, 50, 60, 90, 125]
234  for thrV in jJ_cuts:
235  ThresholdDef.addJetVaryingThrValues( jJetThreshold('jJ%ip30ETA49' % thrV, 'jJ'), pt=get_threshold_cut('FjJ', thrV), shift_set=0, rangemin=30, rangemax=49 )
236 
237  # jJET SPARES
238  for thrV in range(1,5):
239  jJetThreshold('jJSPARE%i' % thrV, 'jJ').addThrValue(thrVal_SPARE)
240 
241  # jLJET (default range)
242  for thrV in [60, 80, 100, 120, 140, 160, 180, 200]:
243  ThresholdDef.addJetVaryingThrValues( jLJetThreshold('jLJ%i' % thrV, 'jLJ'), pt=get_threshold_cut('jLJ', thrV), shift_set=0, rangemin=0, rangemax=32 )
244 
245  # jLJET SPARES
246  for thrV in range(1,5):
247  jLJetThreshold('jLJSPARE%i' % thrV, 'jLJ').addThrValue(thrVal_SPARE)
248 
249  # gJET (default range)
250  for thrV in [20, 50, 100, 400]:
251  ThresholdDef.addJetVaryingThrValues( gJetThreshold('gJ%ip0ETA25' % thrV, 'gJ'), pt=get_threshold_cut('gJ', thrV), shift_set=0, rangemin=0, rangemax=25)
252 
253  # gJET (forward)
254  for thrV in [20]:
255  ThresholdDef.addJetVaryingThrValues( gJetThreshold('gJ%ip25ETA49' % thrV, 'gJ'), pt=get_threshold_cut('gJ', thrV), shift_set=0, rangemin=25, rangemax=49)
256 
257  # gJET SPARES
258  for thrV in range(1,2):
259  gJetThreshold('gJSPARE%i' % thrV, 'gJ').addThrValue(thrVal_SPARE)
260 
261 
262  # gLJET (default range)
263  for thrV in [80, 100, 140, 160]:
264  ThresholdDef.addJetVaryingThrValues( gLJetThreshold('gLJ%ip0ETA25' % thrV, 'gLJ'), pt=get_threshold_cut('gLJ', thrV), shift_set=0, rangemin=0, rangemax=25)
265 
266  # gLJET SPARES
267  for thrV in range(1,5):
268  gLJetThreshold('gLJSPARE%i' % thrV, 'gLJ').addThrValue(thrVal_SPARE)
269 
270  # gXE
271  gXE_cuts = [70, 100]
272  for thrV in gXE_cuts:
273  XEThreshold('gXENC%i' % thrV, 'gXE').setXE(get_threshold_cut('gXENC', thrV))
274 
275  #gXE_cuts = [70, 100]
276  #for thrV in gXE_cuts:
277  # XEThreshold('gXERHO%i' % thrV, 'gXE').setXE(get_threshold_cut('gXERHO', thrV))
278 
279  gXE_cuts = [60, 70, 80, 100, 110, 120, 500]
280  for thrV in gXE_cuts:
281  XEThreshold('gXEJWOJ%i' % thrV, 'gXE').setXE(get_threshold_cut('gXEJWOJ', thrV))
282 
283  # gMHT
284  for thrV in [500]:
285  XEThreshold('gMHT%i' % thrV, 'gXE').setXE(thrV)
286 
287  # gTE
288  for thrV in [200]:
289  TEThreshold('gTE%i' % thrV, 'gTE').setTE(thrV)
290 
291  # jXE
292  jXE_cuts = [60, 70, 80, 90, 100, 110, 120, 500]
293  for thrV in jXE_cuts:
294  XEThreshold('jXE%i' % thrV, 'jXE').setXE(get_threshold_cut('jXE', thrV))
295 
296  # ENERGY SPARES
297  # decrement jXE spares for addtional heavy ion jTE thresholds
298  for thrV in range(1,11):
299  XEThreshold('jXESPARE%i' % thrV, 'jXE').setXE(thrVal_SPAREXE)
300 
301  jXE_cuts = [100]
302  for thrV in jXE_cuts:
303  XEThreshold('jXEC%i' % thrV, 'jXE').setXE(get_threshold_cut('jXE', thrV))
304 
305  # ATR-24037
306  jXE_cuts = [100]
307  for thrV in jXE_cuts:
308  XEThreshold('jXEPerf%i' % thrV, 'jXE').setXE(get_threshold_cut('jXE', thrV))
309 
310  # jTE
311  # additional heavy ion jTE threhsolds
312  for thrV in [3,4,5,10,20,50,100,200,600,1500,3000,10000]:
313  TEThreshold('jTE%i' % thrV, 'jTE').setTE(thrV)
314 
315  for thrV in [200,]:
316  TEThreshold('jTEC%i' % thrV, 'jTE').setTE(thrV)
317 
318  for thrV in [100,]:
319  TEThreshold('jTEFWD%i' % thrV, 'jTE').setTE(thrV)
320 
321  for thrV in [100,5,1]:
322  TEThreshold('jTEFWDA%i' % thrV, 'jTE').setTE(thrV)
323 
324  for thrV in [100,5,1]:
325  TEThreshold('jTEFWDC%i' % thrV, 'jTE').setTE(thrV)
326 
327  # ATR-22344
328  LArSaturationThreshold('LArSaturation')
329 
330  ZeroBiasThresholdTopo('ZeroBiasA').setSeedThreshold(seed=[805306368, 0, 0, 0, 0, 0], bcdelay=3564) # eEM18
331  ZeroBiasThresholdTopo('ZeroBiasB')
332 
333  # CALREQ
334 
335  for i in range(3):
336  NimThreshold('CAL%i' % i, 'CALREQ', mapping=i)
337 
338 
339 
340  # MBTS naming scheme defined in
341  # https://docs.google.com/spreadsheets/d/1R0s8Lw-0nPSjqe9YTuZBCeAdedn_Ve4Ax6bbMe_4bSk/edit#gid=1818891632
342 
343  # run 1
344  thresholdA=[ 32.04, 26.98, 35.00, 33.54, 32.08, 36.46, 30.63, 32.08, 33.54, 30.63, 29.17, 33.54, 32.08, 32.08, 30.63, 26.25]
345  thresholdC=[ 55.42, 31.98, 32.81, 49.48, 98.44, 32.11, 32.62, 29.90, 24.06, 25.81, 25.52, 35.00, 27.71, 36.46, 26.25, 30.63]
346 
347  # run 2 above MBTS_A08 only the even numbers are used
348  thresholdA=[ 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0]
349  thresholdC=[ 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0, 100.0]
350 
351  for i, (vA, vC) in enumerate(zip(thresholdA, thresholdC)):
352  MBTSSIThreshold('MBTS_A%i' % i).setVoltage(vA)
353  MBTSSIThreshold('MBTS_C%i' % i).setVoltage(vC)
354 
355  thr_mbtsA = MBTSThreshold('MBTS_A', mapping=0)
356  thr_mbtsC = MBTSThreshold('MBTS_C', mapping=1)
357  for x in range(16):
358  if tc.thresholdExists('MBTS_A%i' % x):
359  thr_mbtsA.addSector( tc.getDefinedThreshold('MBTS_A%i' % x) )
360  if tc.thresholdExists('MBTS_C%i' % x):
361  thr_mbtsC.addSector( tc.getDefinedThreshold('MBTS_C%i' % x) )
362 
363 
364 
365 
366 
367  NimThreshold('ZDC_0', 'ZDC')
368  NimThreshold('ZDC_1', 'ZDC')
369  NimThreshold('ZDC_2', 'ZDC')
370 
371 
372 
373 
374  NimThreshold('BCM_AtoC', 'BCM')
375  NimThreshold('BCM_CtoA', 'BCM')
376  NimThreshold('BCM_Wide', 'BCM')
377  NimThreshold('BCM_Comb', 'BCMCMB')
378  NimThreshold('BCM_MCA', 'BCM')
379  NimThreshold('BCM_MCC', 'BCM')
380  NimThreshold('BCM6', 'BCM')
381  NimThreshold('BCM7', 'BCM')
382  NimThreshold('BCM8', 'BCM')
383 
384 
387  NimThreshold('BMA0', 'NIM')
388  NimThreshold('BMA1', 'NIM')
389  NimThreshold('BMA2', 'NIM')
390  NimThreshold('BMA3', 'NIM')
391 
392 
393 
394  NimThreshold('LUCID_A', 'LUCID')
395  NimThreshold('LUCID_C', 'LUCID')
396  NimThreshold('LUCID_Coinc_AC', 'LUCID')
397  NimThreshold('LUCID_COMM', 'LUCID')
398  NimThreshold('LUCID_05', 'LUCID')
399  NimThreshold('LUCID_06', 'LUCID')
400 
401 
402  NimThreshold('AFP_NSA', 'NIM', mapping=2)
403  NimThreshold('AFP_FSA', 'NIM', mapping=3)
404  NimThreshold('AFP_FSA_TOF_T0', 'NIM', mapping=4)
405  NimThreshold('AFP_FSA_TOF_T1', 'NIM', mapping=5)
406  NimThreshold('AFP_FSA_TOF_T2', 'NIM', mapping=6)
407  NimThreshold('AFP_FSA_TOF_T3', 'NIM', mapping=7)
408  NimThreshold('AFP_NSC', 'NIM', mapping=15)
409  NimThreshold('AFP_FSC', 'NIM', mapping=16)
410  NimThreshold('AFP_FSC_TOF_T0', 'NIM', mapping=17)
411  NimThreshold('AFP_FSC_TOF_T1', 'NIM', mapping=18)
412  NimThreshold('AFP_FSC_TOF_T2', 'NIM', mapping=19)
413  NimThreshold('AFP_FSC_TOF_T3', 'NIM', mapping=20)
414 
415 
416 
417  NimThreshold('BPTX0', 'BPTX')
418  NimThreshold('BPTX1', 'BPTX')
419 
420 
421 
422  NimThreshold('NIML1A', 'NIM', mapping=0)
423  NimThreshold('NIMLHCF', 'NIM', mapping=1)
424  NimThreshold('NIMTGC', 'NIM', mapping=12)
425  NimThreshold('NIMRPC', 'NIM', mapping=13)
426  NimThreshold('NIMTRT', 'NIM', mapping=14)
python.L1.Config.ThresholdDef.ThresholdDef.addVaryingThrValues
def addVaryingThrValues(thr, pt, shift_set)
Definition: ThresholdDef.py:36
max
#define max(a, b)
Definition: cfImp.cxx:41
python.L1.Base.Thresholds.LArSaturationThreshold
Definition: Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/Thresholds.py:977
python.L1.Base.Thresholds.MBTSThreshold
Definition: Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/Thresholds.py:1070
python.L1.Base.Thresholds.jEMThreshold
Definition: Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/Thresholds.py:431
python.L1.Base.Thresholds.jTauThreshold
Definition: Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/Thresholds.py:694
CaloCellPos2Ntuple.int
int
Definition: CaloCellPos2Ntuple.py:24
python.L1.Base.Thresholds.eTauThreshold
Definition: Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/Thresholds.py:621
python.L1.Base.Thresholds.TEThreshold
Definition: Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/Thresholds.py:1026
python.L1.Base.Thresholds.gJetThreshold
Definition: Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/Thresholds.py:891
python.L1.Base.Thresholds.NimThreshold
Definition: Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/Thresholds.py:1043
python.L1.Base.Thresholds.gLJetThreshold
Definition: Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/Thresholds.py:925
python.L1.Config.L1CaloThresholdMapping.get_threshold_cut
def get_threshold_cut(threshold_type, threshold_val)
Definition: L1CaloThresholdMapping.py:155
python.L1.Base.Thresholds.eEMThreshold
Definition: Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/Thresholds.py:293
python.L1.Base.Thresholds.jLJetThreshold
Definition: Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/Thresholds.py:857
python.L1.Base.Thresholds.MuonThreshold
Definition: Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/Thresholds.py:501
plotBeamSpotVxVal.range
range
Definition: plotBeamSpotVxVal.py:195
histSizes.list
def list(name, path='/')
Definition: histSizes.py:38
python.L1.Base.Thresholds.XEThreshold
Definition: Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/Thresholds.py:959
python.L1.Base.Thresholds.cTauThreshold
Definition: Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/Thresholds.py:758
python.L1.Config.ThresholdDef.ThresholdDef.registerThresholds
def registerThresholds(tc, menuName)
Definition: ThresholdDef.py:77
python.L1.Base.Thresholds.MBTSSIThreshold
Definition: Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/Thresholds.py:1054
python.L1.Base.Thresholds.eEMVarThreshold
Definition: Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/Thresholds.py:362
python.L1.Base.Thresholds.jJetThreshold
Definition: Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/Thresholds.py:822
python.L1.Base.Thresholds.ZeroBiasThresholdTopo
Definition: Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/Thresholds.py:988
python.L1.Base.Thresholds.NSWMonThreshold
Definition: Trigger/TriggerCommon/TriggerMenuMT/python/L1/Base/Thresholds.py:609
python.L1.Config.ThresholdDef.ThresholdDef.addJetVaryingThrValues
def addJetVaryingThrValues(thr, pt, shift_set, rangemin, rangemax)
Definition: ThresholdDef.py:50
python.L1.Config.ThresholdDef.ThresholdDef
Definition: ThresholdDef.py:11