Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
Functions
L1TopoOnlineMonitoringConfig Namespace Reference

Functions

def getL1TopoOnlineMonitorHypo (flags)
 
def L1TopoOnlineMonitorHypoToolGen (chainDict)
 
def getL1TopoLabels (flags, connectors={0:'LegacyTopo0', 1:'LegacyTopo1'}, bmax=128)
 
def getMultiplicityLabels (flags, topoModule)
 
def Phase1TopoMonitoringCfg (flags)
 
def getL1TopoPhase1OnlineMonitor (flags, name='L1TopoOnlineMonitor', doSimMon=True, doHwMonCtp=False, doHwMon=False, doComp=False, doMultComp=False, forceCtp=False, logLevel=None, toolName="L1TopoMonitoringTool")
 
def getL1TopoPhase1DQMonitor (flags, name='L1TopoDQMonitor', doSimMon=True, doHwMonCtp=False, doHwMon=False, doComp=False, doMultComp=False, forceCtp=False, logLevel=None, toolName="L1TopoMonitoringTool")
 
def configureHistograms (alg, flags, doHwMonCtp, doHwMon, doComp, doMultComp)
 

Function Documentation

◆ configureHistograms()

def L1TopoOnlineMonitoringConfig.configureHistograms (   alg,
  flags,
  doHwMonCtp,
  doHwMon,
  doComp,
  doMultComp 
)

Definition at line 220 of file L1TopoOnlineMonitoringConfig.py.

220 def configureHistograms(alg, flags, doHwMonCtp, doHwMon, doComp, doMultComp):
221 
222  label_topo_all = []
223  for cable in range(2):
224  name = 'CableElec_'+str(cable+2)
225  name += ';Topo'+str(cable+2)+'El'
226  title = f'Topo Electric Cable {cable+2}'
227  labels = getL1TopoLabels(flags,{0: f'Topo{cable+2}El'},64)
228  label_topo_all += labels
229  alg.MonTool.defineHistogram(name, path='EXPERT', type='TH1I',
230  title=title, xbins=64, xlabels=labels,
231  xmin=0, xmax=64)
232 
233  for cable in range(4):
234  topoName = 'Topo1Opt'+str(cable)
235  name = 'CableOpti_'+str(cable)
236  weight = name+'_weight'
237  name += f';{topoName}'
238  title = f'Topo Optical Cable {cable}'
239  labels = getMultiplicityLabels(flags=flags,topoModule=topoName)
240  xlabels = [x for x in labels if x]
241  alg.MonTool.defineHistogram(name, path='EXPERT', type='TH1I',
242  title=title, xbins=len(xlabels), xlabels=xlabels,
243  weight=weight,
244  xmin=0, xmax=len(xlabels))
245  for cable in range(4):
246  topoName = 'Topo1Opt'+str(cable)
247  name = 'HdwTopo1Opt'+str(cable)
248  weight = name+'_weight'
249  name += f';{topoName}_data'
250  title = f'Topo Optical Cable {cable} (Data)'
251  labels = getMultiplicityLabels(flags=flags,topoModule=topoName)
252  xlabels = [x for x in labels if x]
253  alg.MonTool.defineHistogram(name, path='EXPERT', type='TH1I',
254  title=title, xbins=len(xlabels), xlabels=xlabels,
255  weight=weight,
256  xmin=0, xmax=len(xlabels))
257 
258  for cable in range(4):
259  ylabels = ['#splitline{Sim counts <}{Hdw counts}','#splitline{Sim counts >}{Hdw counts}','#splitline{Sim counts =}{Hdw counts}']
260  topoName = 'Topo1Opt'+str(cable)
261  name = 'MultiplicityTopo1Opt'+str(cable)+',MultiplicityMatchTopo1Opt'+str(cable)
262  name += f';{topoName}_mismatch'
263  title = f'Topo Optical Cable {cable} Miss/Matches Summary'
264  labels = getMultiplicityLabels(flags=flags,topoModule=topoName)
265  xlabels = [x for x in labels if x]
266  alg.MonTool.defineHistogram(name, path='EXPERT', type='TH2F',
267  title=title, xbins=len(xlabels), ybins=3,
268  xlabels=xlabels,ylabels=ylabels,
269  xmin=0, xmax=len(xlabels),
270  ymin=0, ymax=len(ylabels))
271 
272  for cable in range(4):
273  topoName = 'Topo1Opt'+str(cable)
274  labels = getMultiplicityLabels(flags=flags,topoModule=topoName)
275  labels = [x for x in labels if x]
276  for i,label in enumerate(labels):
277  name = f'Topo1Opt{cable}_{i}_Sim,Topo1Opt{cable}_{i}_Hdw;Topo1Opt{cable}_{label}'
278  title = f'Topo1Opt{cable}_{label};Simulation Counts;Hardware Counts'
279  alg.MonTool.defineHistogram(name, path='EXPERT', type='TH2F',
280  title=title,xbins=10,ybins=10,
281  xmin=0, xmax=10,
282  ymin=0, ymax=10)
283 
284  alg.MonTool.defineHistogram('TopoSim', path='EXPERT', type='TH1I',
285  title='Simulation Results for L1Topo', xbins=128, xlabels=label_topo_all,
286  xmin=0, xmax=128)
287  alg.MonTool.defineHistogram('TopoSim_overflows', path='EXPERT', type='TH1I',
288  title='Overflow Simulation Results for L1Topo', xbins=128, xlabels=label_topo_all,
289  xmin=0, xmax=128)
290  alg.MonTool.defineHistogram('TopoSim_ambiguity', path='EXPERT', type='TH1I',
291  title='Ambiguity Results for L1Topo', xbins=128, xlabels=label_topo_all,
292  xmin=0, xmax=128)
293 
294  if doHwMonCtp:
295  alg.MonTool.defineHistogram('TopoCTP', path='EXPERT', type='TH1I',
296  title='CTP Results for L1Topo', xbins=128, xlabels=label_topo_all,
297  xmin=0, xmax=128)
298 
299  if doComp:
300  alg.MonTool.defineHistogram('SimNotHdwL1TopoResult', path='EXPERT', type='TH1I',
301  title='L1Topo events with simulation accept and hardware fail',
302  xbins=128, xlabels=label_topo_all,
303  xmin=0, xmax=128)
304  alg.MonTool.defineHistogram('HdwNotSimL1TopoResult', path='EXPERT', type='TH1I',
305  title='L1Topo events with hardware accept and simulation fail',
306  xbins=128, xlabels=label_topo_all,
307  xmin=0, xmax=128)
308  alg.MonTool.defineHistogram('Ambiguity_SimANDHdwDecisions', path='EXPERT', type='TH1I',
309  title='L1Topo ambiguity events with simulation accept and hardware accept',
310  xbins=128, xlabels=label_topo_all,
311  xmin=0, xmax=128)
312  alg.MonTool.defineHistogram('Ambiguity_DecisionMismatches', path='EXPERT', type='TH1I',
313  title='L1Topo ambiguity events with mismatches between simulation and hardware',
314  xbins=128, xlabels=label_topo_all,
315  xmin=0, xmax=128)
316 
317  if doMultComp:
318  ylabels = ['#frac{HdwNotSim}{Hdw}','#frac{SimNotHdw}{Sim}','#frac{HdwAndSim}{HdwOrSim}','#frac{Hdw}{Sim}']
319  for topo in [(0,'2a'),(1,'2b'),(2,'3a'),(3,'3b')]:
320  name = f'Phase1TopoTrigger_{topo[0]},Phase1TopoMissMatch_{topo[0]};Ph1Topo{topo[1]}'
321  title = f'Phase1 Topo{topo[1]} Miss/Matches Summary'
322  alg.MonTool.defineHistogram(name, path='EXPERT', type='TH2F',
323  title=title,xbins=32,ybins=4,
324  weight=f'Phase1TopoWeight_{topo[0]}',
325  xlabels=label_topo_all[topo[0]*32:(topo[0]+1)*32],
326  ylabels=ylabels,
327  xmin=0, xmax=32,
328  ymin=0, ymax=len(ylabels))
329  ylabelsOF = ['#frac{HdwOFnotSimOF}{HdwOF}','#frac{SimOFnotHdwOF}{SimOF}','#frac{HdwOFandSimOF}{HdwOForSimOF}','#frac{HdwOF}{SimOF}']
330  for topo in [(0,'2a'),(1,'2b'),(2,'3a'),(3,'3b')]:
331  name_OF = f'Phase1TopoTrigger_{topo[0]},Phase1TopoMissMatch_{topo[0]};Ph1Topo{topo[1]}_overflows'
332  title_OF = f'Phase1 Topo{topo[1]} Overflow Miss/Matches Summary'
333  alg.MonTool.defineHistogram(name_OF, path='EXPERT', type='TH2F',
334  title=title_OF,xbins=32,ybins=4,
335  weight=f'Phase1TopoOFWeight_{topo[0]}',
336  xlabels=label_topo_all[topo[0]*32:(topo[0]+1)*32],
337  ylabels=ylabelsOF,
338  xmin=0, xmax=32,
339  ymin=0, ymax=len(ylabelsOF))
340 
341  if doHwMon:
342  alg.MonTool.defineHistogram('HdwResults', path='EXPERT', type='TH1I',
343  title='Hardware Results for L1Topo', xbins=128, xlabels=label_topo_all,
344  xmin=0, xmax=128)
345  alg.MonTool.defineHistogram('OverflowResults', path='EXPERT', type='TH1I',
346  title='Overflow Results for L1Topo', xbins=128, xlabels=label_topo_all,
347  xmin=0, xmax=128)
348  rod_errors_labels = ["CT", "pc", "hc", "pe", "lm", "hm", "pt"]
349  alg.MonTool.defineHistogram('ROD_Errors', path='EXPERT', type='TH1I',
350  title='Counts of ROD errors', xbins=len(rod_errors_labels), xlabels=rod_errors_labels,
351  xmin=0, xmax=len(rod_errors_labels))
352  fpga_errors_labels = ["CT", "sm", "pe", "lm", "hm", "pt"]
353  fpga_indexes = ["topo1fpga1", "topo1fpga0", "topo2fpga1", "topo2fpga0", "topo3fpga1", "topo3fpga0"]
354  alg.MonTool.defineHistogram('FPGA_Errors, FPGA_Labels; FPGA_Errors', path='EXPERT', type='TH2I',
355  title='Counts of FPGA errors',xbins=len(fpga_errors_labels),ybins=len(fpga_indexes),
356  xlabels=fpga_errors_labels,
357  ylabels=fpga_indexes,
358  xmin=0, xmax=len(fpga_errors_labels),
359  ymin=0, ymax=len(fpga_indexes))
360 
361 
362  mon_failure_labels = ['doHwMon', 'doSimMon', 'doHwMonCTP', 'doComp', 'doMultComp']
363  alg.MonTool.defineHistogram('MonitoringFailures', path='EXPERT', type='TH1F',
364  title='Counts of mon functions returning failure;;Entries',
365  xlabels=mon_failure_labels, xbins=len(mon_failure_labels),
366  xmin=0, xmax=len(mon_failure_labels))

◆ getL1TopoLabels()

def L1TopoOnlineMonitoringConfig.getL1TopoLabels (   flags,
  connectors = {0: 'LegacyTopo0', 1: 'LegacyTopo1'},
  bmax = 128 
)

Definition at line 21 of file L1TopoOnlineMonitoringConfig.py.

21 def getL1TopoLabels(flags,connectors = {0: 'LegacyTopo0', 1: 'LegacyTopo1'}, bmax = 128):
22  topo_trigline_labels = ["" for i in range(bmax)]
23  lvl1access = getL1MenuAccess(flags)
24  for connector_id, connectorKey in connectors.items():
25  topo_triglines_dict = lvl1access.connector(connectorKey)['triggerlines']
26  if not isinstance(topo_triglines_dict, list):
27  for fpga_id in [0,1]:
28  topo_fpga = topo_triglines_dict['fpga{:d}'.format(fpga_id)]
29  for clock_id in [0,1]:
30  topo_clock = topo_fpga['clock{:d}'.format(clock_id)]
31  for topo_trigline in topo_clock:
32  topo_trigline_name = topo_trigline['name']
33  bit_id = topo_trigline['startbit']
34  topo_trigline_index = 64*connector_id + 32*fpga_id + 2*bit_id + clock_id
35  topo_trigline_labels[topo_trigline_index] = topo_trigline_name
36  else:
37  for topo_trigline in topo_triglines_dict:
38  topo_trigline_name = topo_trigline['name']
39  topo_trigline_name= topo_trigline_name.replace("TOPO_","")
40  bit_id = topo_trigline['startbit']
41  fpga_id = topo_trigline['fpga']
42  clock_id = topo_trigline['clock']
43  topo_trigline_index = 64*connector_id + 32*fpga_id + 2*bit_id + clock_id
44  topo_trigline_labels[topo_trigline_index] = topo_trigline_name
45 
46  for i in range(len(topo_trigline_labels)):
47  if ( topo_trigline_labels[i] == ""):
48  topo_trigline_labels[i] = "-- Unassigned Item --"
49 
50  return topo_trigline_labels
51 

◆ getL1TopoOnlineMonitorHypo()

def L1TopoOnlineMonitoringConfig.getL1TopoOnlineMonitorHypo (   flags)

Definition at line 8 of file L1TopoOnlineMonitoringConfig.py.

9  hypo = CompFactory.L1TopoOnlineMonitorHypo()
10  return hypo
11 

◆ getL1TopoPhase1DQMonitor()

def L1TopoOnlineMonitoringConfig.getL1TopoPhase1DQMonitor (   flags,
  name = 'L1TopoDQMonitor',
  doSimMon = True,
  doHwMonCtp = False,
  doHwMon = False,
  doComp = False,
  doMultComp = False,
  forceCtp = False,
  logLevel = None,
  toolName = "L1TopoMonitoringTool" 
)

Definition at line 88 of file L1TopoOnlineMonitoringConfig.py.

88 def getL1TopoPhase1DQMonitor(flags, name='L1TopoDQMonitor', doSimMon=True, doHwMonCtp=False, doHwMon=False, doComp=False, doMultComp=False, forceCtp=False, logLevel = None, toolName="L1TopoMonitoringTool"):
89  from TrigT1CaloMonitoring.LVL1CaloMonitoringConfig import L1CaloMonitorCfgHelper
90  helper = L1CaloMonitorCfgHelper(flags,CompFactory.L1TopoOnlineMonitor,toolName,
91  doHwMon = doHwMon,
92  doHwErrorMon = False,
93  doSimMon = doSimMon,
94  doHwMonCTP = doHwMonCtp,
95  doComp = doComp,
96  doMultComp = doMultComp,
97  MultiplicityVetoList=["ZeroBiasA","ZeroBiasB"],
98  AlgorithmVetoList =["jXE40delay"],
99  forceCTPasHdw=forceCtp)
100 
101  #Define the Monitoring plots for L1Calo DQ
102  helper.defineDQAlgorithm("L1TopoMismatchRate",
103  hanConfig={"libname":"libdqm_summaries.so","name":"Bins_GreaterThan_Threshold","BinThreshold":"0.001","PublishBins":"1"}, # counts bins with value>0.001
104  thresholdConfig={"NBins":[0,1]}, # warn if any high rate, error if more than 1 bin anywhere.
105  )
106 
107  helper.defineDQAlgorithm("L1TopoMismatchCountVerticalRange",
108  hanConfig={"libname":"libdqm_summaries.so","name":"Bins_GreaterThan_Threshold","BinThreshold":"0.001","PublishBins":"1","yMax":"2"}, #,"IgnoreBins":"\"25:1,26:2,*:25,*:58,500:*\""}, # counts bins with value>0.001 for Bins in Y between 0 and 1.
109  thresholdConfig={"NBins":[0,1]}, # warn if any high rate, error if more than 1 bin anywhere.
110  )
111 
112  #Multiplicity mismatches between Sim and Hdw
113  ylabels = ['#splitline{Sim counts <}{Hdw counts}','#splitline{Sim counts >}{Hdw counts}','#splitline{Sim counts =}{Hdw counts}']
114  name = 'LBN,MultiplicityAllBoards,L1TopoMultiplicityMissMatchVsLumi;L1TopoMultiplicityMismatchRateVsLumi'
115  AllLabels = []
116  for cable in range(4):
117  topoName = 'Topo1Opt'+str(cable)
118  AllLabels+=getMultiplicityLabels(flags=flags,topoModule=topoName)
119 
120  AllLabels = [x for x in AllLabels if x]
121 
122  helper.defineHistogram(name,
123  fillGroup="L1TopoDQ_mismatches",
124  paths=['Expert/Sim'],
125  hanConfig={"algorithm":"L1TopoMismatchRate","description":"Agreements and Mismatches between L1Topo Simulation and Hdw perLumi-Block","display":"SetPalette(87),Draw=COLZTEXT"},
126  type='TProfile2D',
127  title="L1Topo Multiplicities Sim/Hdw mismatch rate", xbins=32, ybins=len(AllLabels),
128  xmin=0, xmax=32,
129  ymin=0, ymax=len(AllLabels),
130  ylabels = AllLabels,
131  opt=['kAddBinsDynamically','kCanRebin','kAlwaysCreate'],merge='merge')
132 
133  for cable in range(4):
134 
135  topoName = 'Topo1Opt'+str(cable)
136  name = 'MultiplicityTopo1Opt'+str(cable)+',MultiplicityMatchTopo1Opt'+str(cable)
137  name += f';{topoName}_mismatch'
138  title = f'Topo Optical Cable {cable} Miss/Matches Summary'
139  labels = getMultiplicityLabels(flags=flags,topoModule=topoName)
140  xlabels = [x for x in labels if x]
141 
142  helper.defineHistogram(name,
143  fillGroup="L1TopoDQ_mismatches",
144  paths=['Expert/Sim/detail/L1Topo/Multiplicities'],
145  hanConfig={"algorithm":"L1TopoMismatchCountVerticalRange","description":"Agreements and Mismatches between L1Topo Simulation and Hdw per L1Topo Item (x-axis). The upper row should be filled (Sim and Hdw agrees), while the lower two rows shouldn't have any entry","display":"SetPalette(55)"},
146  type='TH2D',
147  title=title, xbins=len(xlabels), ybins=3,
148  xlabels=xlabels,ylabels=ylabels,
149  xmin=0, xmax=len(xlabels),
150  ymin=0, ymax=len(ylabels),
151  opt=['kAddBinsDynamically','kCanRebin','kAlwaysCreate'],merge='merge')
152 
153  label_topo_all = []
154  for cable in range(2):
155  name = 'CableElec_'+str(cable+2)
156  name += ';Topo'+str(cable+2)+'El'
157  title = f'Topo Electric Cable {cable+2}'
158  labels = getL1TopoLabels(flags,{0: f'Topo{cable+2}El'},64)
159  label_topo_all += labels
160 
161  #L1Topo Algorithms mismatches
162  #ylabels = ['#frac{HdwNotSim}{Hdw}','#frac{SimNotHdw}{Sim}','#frac{HdwAndSim}{HdwOrSim}','#frac{Hdw}{Sim}']
163  ylabels = ['#splitline{Sim counts <}{Hdw counts}','#splitline{Sim counts >}{Hdw counts}','#splitline{Sim counts =}{Hdw counts}']
164  nameLB = 'LBN,L1TopoAlgorithmAllBoards,L1TopoAlgorithmMissMatchVsLumi;L1TopoAlgoMismatchRateVsLB'
165 
166  helper.defineHistogram(nameLB,
167  fillGroup="L1TopoDQ_mismatches",
168  paths=['Expert/Sim'],
169  hanConfig={"algorithm":"L1TopoMismatchRate","description":"Mismatch Rate between L1Topo Simulation and Hardware vs Lumi-Block (x-axis)","display":"SetPalette(87),Draw=COLZTEXT"},
170  type='TProfile2D',
171  title="L1Topo Algorithms Sim/Hdw mismatch rate",xbins=32,ybins=128,
172  #weight=f'Phase1TopoWeight_{topo[0]}',
173  ylabels=label_topo_all,
174  xmin=0, xmax=32,
175  ymin=0, ymax=128,
176  opt=['kAddBinsDynamically','kCanRebin','kAlwaysCreate'],merge='merge')
177 
178  for topo in [(0,'2a'),(1,'2b'),(2,'3a'),(3,'3b')]:
179  name = f'Phase1TopoTrigger_{topo[0]},L1TopoAlgorithmMissMatch_{topo[0]};L1TopoAlgo_{topo[1]}'
180  title = f'L1Topo_Algo_{topo[1]} Miss/Matches Summary'
181  helper.defineHistogram(name,
182  fillGroup="L1TopoDQ_mismatches",
183  paths=['Expert/Sim/detail/L1Topo/Algos'],
184  hanConfig={"algorithm":"L1TopoMismatchCountVerticalRange","description":"Agreements and Mismatches between L1Topo Simulation and Hardware per L1Topo Item (x-axis). The upper row should be filled (Sim and Hdw agrees), while the lower two rows shouldn't have any entry","display":"SetPalette(55)"},
185  type='TH2F',
186  title=title,xbins=32,ybins=3,
187  #weight=f'Phase1TopoWeight_{topo[0]}',
188  xlabels=label_topo_all[topo[0]*32:(topo[0]+1)*32],
189  ylabels=ylabels,
190  xmin=0, xmax=32,
191  ymin=0, ymax=len(ylabels),
192  opt=['kAddBinsDynamically','kCanRebin','kAlwaysCreate'],merge='merge')
193 
194  '''
195  #Not Including Overflow plots for now
196  #L1Topo Algorithms Overflow mismatches
197  #ylabelsOF = ['#frac{HdwOFnotSimOF}{HdwOF}','#frac{SimOFnotHdwOF}{SimOF}','#frac{HdwOFandSimOF}{HdwOForSimOF}','#frac{HdwOF}{SimOF}']
198  ylabelsOF = ['#splitline{Sim counts <}{Hdw counts}','#splitline{Sim counts >}{Hdw counts}','#splitline{Sim counts =}{Hdw counts}']
199  for topo in [(0,'2a'),(1,'2b'),(2,'3a'),(3,'3b')]:
200  #name_OF = f'Phase1TopoTrigger_{topo[0]},Phase1TopoMissMatch_{topo[0]};Ph1Topo{topo[1]}_overflows'
201  name_OF = f'Phase1TopoTrigger_{topo[0]},L1TopoAlgorithmOverflowMissMatch_{topo[0]};L1TopoAlgo_OF{topo[1]}'
202  title_OF = f' L1Topo_Algo_{topo[1]} Overflow Miss/Matches Summary'
203  helper.defineHistogram(name_OF,
204  fillGroup="L1TopoDQ_mismatches",
205  paths=['Expert/Sim/detail/L1Topo/Algos/Overflows'],
206  hanConfig={"description":"Agreements and Mismatches between L1Topo Simulation and Hardware per L1Topo Item (x-axis). The upper row should be filled (Sim and Hdw agrees), while the lower two rows shouldn't have any entry","display":"SetPalette(55)"}, type='TH2F',
207  title=title_OF,xbins=32,ybins=3,
208  #weight=f'Phase1TopoOFWeight_{topo[0]}',
209  xlabels=label_topo_all[topo[0]*32:(topo[0]+1)*32],
210  ylabels=ylabelsOF,
211  xmin=0, xmax=32,
212  ymin=0, ymax=len(ylabelsOF),
213  opt=['kAddBinsDynamically','kCanRebin','kAlwaysCreate'],merge='merge')
214  '''
215 
216  helper.alg.MonTool = helper.fillGroups["L1TopoDQ_mismatches"]
217  return helper.result()
218 
219 

◆ getL1TopoPhase1OnlineMonitor()

def L1TopoOnlineMonitoringConfig.getL1TopoPhase1OnlineMonitor (   flags,
  name = 'L1TopoOnlineMonitor',
  doSimMon = True,
  doHwMonCtp = False,
  doHwMon = False,
  doComp = False,
  doMultComp = False,
  forceCtp = False,
  logLevel = None,
  toolName = "L1TopoMonitoringTool" 
)

Definition at line 70 of file L1TopoOnlineMonitoringConfig.py.

70 def getL1TopoPhase1OnlineMonitor(flags, name='L1TopoOnlineMonitor', doSimMon=True, doHwMonCtp=False, doHwMon=False, doComp=False, doMultComp=False, forceCtp=False, logLevel = None, toolName="L1TopoMonitoringTool"):
71  alg = CompFactory.L1TopoOnlineMonitor(toolName,
72  doHwMon = doHwMon,
73  doHwErrorMon = False,
74  doSimMon = doSimMon,
75  doHwMonCTP = doHwMonCtp,
76  doComp = doComp,
77  doMultComp = doMultComp,
78  forceCTPasHdw=forceCtp,
79  MultiplicityVetoList=["ZeroBiasA","ZeroBiasB"],
80  AlgorithmVetoList =["jXE40delay"])
81  if logLevel : alg.OutputLevel=logLevel
82  alg.MonTool = GenericMonitoringTool(flags, 'MonTool')
83  alg.MonTool.HistPath = name
84  configureHistograms(alg, flags, doHwMonCtp, doHwMon, doComp, doMultComp)
85 
86  return alg
87 

◆ getMultiplicityLabels()

def L1TopoOnlineMonitoringConfig.getMultiplicityLabels (   flags,
  topoModule 
)

Definition at line 52 of file L1TopoOnlineMonitoringConfig.py.

52 def getMultiplicityLabels(flags,topoModule):
53  topo_trigline_labels = ["" for i in range(128)]
54  lvl1access = getL1MenuAccess(flags)
55  topo_triglines_dict = lvl1access.connector(topoModule)['triggerlines']
56 
57  for topo_trigline in topo_triglines_dict:
58  topo_trigline_name = topo_trigline['name']
59  bit_id = topo_trigline['startbit']
60  topo_trigline_labels[bit_id] = topo_trigline_name
61  if ( topo_trigline_labels[bit_id].find("SPARE") >= 0):
62  topo_trigline_labels[bit_id] = "-- Unassigned Item --"
63 
64  return topo_trigline_labels
65 

◆ L1TopoOnlineMonitorHypoToolGen()

def L1TopoOnlineMonitoringConfig.L1TopoOnlineMonitorHypoToolGen (   chainDict)

Definition at line 12 of file L1TopoOnlineMonitoringConfig.py.

12 def L1TopoOnlineMonitorHypoToolGen(chainDict):
13  tool = CompFactory.L1TopoOnlineMonitorHypoTool(
14  chainDict['chainName'],
15  # Select error flags to accept events
16  ErrorFlagsKey = 'L1TopoErrorFlags',
17  AcceptTrivialFlag = True)
18 
19  return tool
20 

◆ Phase1TopoMonitoringCfg()

def L1TopoOnlineMonitoringConfig.Phase1TopoMonitoringCfg (   flags)

Definition at line 66 of file L1TopoOnlineMonitoringConfig.py.

66 def Phase1TopoMonitoringCfg(flags):
67  IsData = not flags.Input.isMC
68  return getL1TopoPhase1DQMonitor(flags,"L1TopoInL1CaloDQMonitor",doHwMon=IsData,doComp=IsData, doMultComp=IsData)
69 
L1TopoOnlineMonitoringConfig.L1TopoOnlineMonitorHypoToolGen
def L1TopoOnlineMonitorHypoToolGen(chainDict)
Definition: L1TopoOnlineMonitoringConfig.py:12
L1TopoOnlineMonitoringConfig.getL1TopoPhase1DQMonitor
def getL1TopoPhase1DQMonitor(flags, name='L1TopoDQMonitor', doSimMon=True, doHwMonCtp=False, doHwMon=False, doComp=False, doMultComp=False, forceCtp=False, logLevel=None, toolName="L1TopoMonitoringTool")
Definition: L1TopoOnlineMonitoringConfig.py:88
vtune_athena.format
format
Definition: vtune_athena.py:14
L1TopoOnlineMonitoringConfig.getL1TopoLabels
def getL1TopoLabels(flags, connectors={0:'LegacyTopo0', 1:'LegacyTopo1'}, bmax=128)
Definition: L1TopoOnlineMonitoringConfig.py:21
find
std::string find(const std::string &s)
return a remapped string
Definition: hcg.cxx:135
GenericMonitoringTool
Definition: GenericMonitoringTool.h:53
python.TriggerConfigAccess.getL1MenuAccess
L1MenuAccess getL1MenuAccess(flags=None)
Definition: TriggerConfigAccess.py:129
L1TopoOnlineMonitoringConfig.getL1TopoOnlineMonitorHypo
def getL1TopoOnlineMonitorHypo(flags)
Definition: L1TopoOnlineMonitoringConfig.py:8
plotBeamSpotVxVal.range
range
Definition: plotBeamSpotVxVal.py:195
L1TopoOnlineMonitoringConfig.getMultiplicityLabels
def getMultiplicityLabels(flags, topoModule)
Definition: L1TopoOnlineMonitoringConfig.py:52
L1TopoOnlineMonitoringConfig.Phase1TopoMonitoringCfg
def Phase1TopoMonitoringCfg(flags)
Definition: L1TopoOnlineMonitoringConfig.py:66
L1TopoOnlineMonitoringConfig.getL1TopoPhase1OnlineMonitor
def getL1TopoPhase1OnlineMonitor(flags, name='L1TopoOnlineMonitor', doSimMon=True, doHwMonCtp=False, doHwMon=False, doComp=False, doMultComp=False, forceCtp=False, logLevel=None, toolName="L1TopoMonitoringTool")
Definition: L1TopoOnlineMonitoringConfig.py:70
L1TopoOnlineMonitoringConfig.configureHistograms
def configureHistograms(alg, flags, doHwMonCtp, doHwMon, doComp, doMultComp)
Definition: L1TopoOnlineMonitoringConfig.py:220
str
Definition: BTagTrackIpAccessor.cxx:11