ATLAS Offline Software
Functions
JfexSimMonitorAlgorithm Namespace Reference

Functions

def JfexSimMonitoringConfig (flags)
 

Function Documentation

◆ JfexSimMonitoringConfig()

def JfexSimMonitorAlgorithm.JfexSimMonitoringConfig (   flags)
Function to configure LVL1 Efex simulation comparison algorithm in the monitoring system.

Definition at line 4 of file JfexSimMonitorAlgorithm.py.

4 def JfexSimMonitoringConfig(flags):
5  '''Function to configure LVL1 Efex simulation comparison algorithm in the monitoring system.'''
6 
7  # use L1Calo's special MonitoringCfgHelper
8  from AthenaConfiguration.ComponentFactory import CompFactory
9  from TrigT1CaloMonitoring.LVL1CaloMonitoringConfig import L1CaloMonitorCfgHelper
10  helper = L1CaloMonitorCfgHelper(flags,CompFactory.JfexSimMonitorAlgorithm,'JfexSimMonAlg')
11  JfexSimMonAlg = helper.alg
12 
13  doXtobs = False
14  if doXtobs:
15  JfexSimMonAlg.jFexSRJetRoIContainer = "L1_jFexSRJetxRoI"
16  JfexSimMonAlg.jFexLRJetRoIContainer = "L1_jFexLRJetxRoI"
17  JfexSimMonAlg.jFexTauRoIContainer = "L1_jFexTauxRoI"
18  JfexSimMonAlg.jFexFwdElRoIContainer = "L1_jFexFwdElxRoI"
19  JfexSimMonAlg.jFexMETRoIContainer = "L1_jFexMETxRoI"
20  JfexSimMonAlg.jFexSumETRoIContainer = "L1_jFexSumETxRoI"
21 
22  JfexSimMonAlg.jFexSRJetRoISimContainer = "L1_jFexSRJetxRoISim"
23  JfexSimMonAlg.jFexLRJetRoISimContainer = "L1_jFexLRJetxRoISim"
24  JfexSimMonAlg.jFexTauRoISimContainer = "L1_jFexTauxRoISim"
25  JfexSimMonAlg.jFexFwdElRoISimContainer = "L1_jFexFwdElxRoISim"
26  JfexSimMonAlg.jFexMETRoISimContainer = "L1_jFexMETxRoISim"
27  JfexSimMonAlg.jFexSumETRoISimContainer = "L1_jFexSumETxRoISim"
28 
29  helper.defineDQAlgorithm("L1CaloMismatchRate",
30  hanConfig={"libname":"libdqm_summaries.so","name":"Bins_GreaterThan_Threshold","BinThreshold":"0.9"}, # counts bins with value>0.9
31  thresholdConfig={"NBins":[0,10]}, # warn if any high rate, error if more than 10 bins anywhere.
32  )
33 
34  helper.defineHistogram('EventType,Signature,tobMismatched;h_simSummary',title='Sim-HW Mismatches (percentage);Event Type;Signature',
35  fillGroup="mismatches",
36  path='Expert/Sim/detail', # place summary plot in the detail path in Expert audience
37  hanConfig={"display":"SetPalette(87),Draw=COLZTEXT"},
38  type='TProfile2D',
39  xlabels=["DataTowers","EmulatedTowers"],
40  ymin=0,ymax=len(L1CaloMonitorCfgHelper.SIGNATURES),ylabels=L1CaloMonitorCfgHelper.SIGNATURES,
41  opt=['kCanRebin','kAlwaysCreate'],merge="merge")
42  helper.defineHistogram('LBN,Signature;h_mismatched_SimReady',
43  fillGroup="mismatches_count",
44  paths=['Shifter/Sim'],
45  hanConfig={"algorithm":"Histogram_Empty","description":"Number of events with a mismatch, per LB (x-axis), per signature (y-axis) for signatures that are deemed simulation-ready","display":"SetPalette(55)"},
46  type='TH2I', cutmask='SimulationReady',
47  title='Mismatched Simulation-Ready Events;LB;Signature;Events',
48  xbins=1,xmin=0,xmax=1,
49  ylabels=["gJ","gLJ","jJ","jTAU","jXE","jTE","eTAU","eEM"],
50  opt=['kAddBinsDynamically','kCanRebin','kAlwaysCreate'],merge='merge')
51  helper.defineHistogram('LBN,Signature,tobMismatched;h_mismatched_SimReadyRate',
52  fillGroup="mismatches",
53  paths=['Expert/Sim'],
54  hanConfig={"algorithm":"L1CaloMismatchRate","description":"Mismatch rate, per LB (x-axis), per signature (y-axis) for signatures that are deemed simulation-ready - should not be high rate (see DQ algo)","display":"SetPalette(55)"},
55  type='TProfile2D', cutmask='SimulationReady',
56  title='Mismatched Rate for Simulation-Ready Signatures;LB;Signature;Event Rate (%)',
57  xbins=1,xmin=0,xmax=1,
58  ylabels=["gJ","gLJ","jJ","jTAU","jXE","jTE","eTAU","eEM"],
59  opt=['kAddBinsDynamically','kCanRebin','kAlwaysCreate'],merge='merge')
60  helper.defineHistogram('LBNString,Signature;h_mismatched_DataTowerEvts',
61  fillGroup="mismatches",
62  type='TH2I', cutmask='IsDataTowers',
63  title='Mismatched DataTower Events;LB:FirstEvtNum;Signature;Events',
64  xbins=1,xmin=0,xmax=1,
65  ybins=1,ymin=0,ymax=1,
66  opt=['kCanRebin','kAlwaysCreate'],merge='merge')
67  helper.defineHistogram('LBN,Signature;h_mismatched_EmulatedTowerEvts',
68  fillGroup="mismatches",
69  type='TH2I', cutmask='IsEmulatedTowers',
70  title='Mismatched EmulatedTower Events;LB;Signature;Events',
71  xbins=1,xmin=0,xmax=1,
72  ybins=1,ymin=0,ymax=1,
73  opt=['kCanRebin','kAlwaysCreate','kAddBinsDynamically'],merge='merge')
74  helper.defineTree('LBN,Signature,LBNString,EventNumber,EventType,dataEtas,dataPhis,dataWord0s,simEtas,simPhis,simWord0s;mismatched',
75  "lbn/l:Signature/string:lbnString/string:eventNumber/l:EventType/string:dataEtas/vector<float>:dataPhis/vector<float>:dataWord0s/vector<unsigned int>:simEtas/vector<float>:simPhis/vector<float>:simWord0s/vector<unsigned int>",
76  title="mismatched;LBN;Signature",fillGroup="mismatches")
77 
78 
79  return helper.result()
80 
81 
JfexSimMonitorAlgorithm.JfexSimMonitoringConfig
def JfexSimMonitoringConfig(flags)
Definition: JfexSimMonitorAlgorithm.py:4