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

Functions

def GfexInputMonitoringConfig (flags)
 

Function Documentation

◆ GfexInputMonitoringConfig()

def GfexInputMonitorAlgorithm.GfexInputMonitoringConfig (   flags)
Function to configure LVL1 GfexInput algorithm in the monitoring system.

Definition at line 4 of file GfexInputMonitorAlgorithm.py.

5  '''Function to configure LVL1 GfexInput algorithm in the monitoring system.'''
6 
7 
8  # get the component factory - used for getting the algorithms
9  from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
10  result = ComponentAccumulator()
11 
12  # use L1Calo's special MonitoringCfgHelper
13  from AthenaConfiguration.ComponentFactory import CompFactory
14  from TrigT1CaloMonitoring.LVL1CaloMonitoringConfig import L1CaloMonitorCfgHelper
15  helper = L1CaloMonitorCfgHelper(flags,CompFactory.GfexInputMonitorAlgorithm,'GfexInputMonAlg')
16 
17  # add any steering
18  groupName = 'GfexInputMonitor' # the monitoring group name is also used for the package name
19  helper.alg.PackageName = groupName
20 
21 
22  # path to the expert area for gFex Monitoring Plots
23  trigPath = 'Expert/Inputs/gFEX'
24 
25 
26  import numpy as np
27  eta_bins= [-4.9, -4.1,-3.5,-3.25,-3.2,-3.1,-2.9,-2.7,-2.5]
28  for eta in np.arange (-2.2,2.2,0.2):
29  eta_bins.append(eta)
30  eta_bins+= [2.2,2.5,2.7,2.9,3.1,3.25,3.3,3.5,4.1,4.9]
31 
32  helper.defineDQAlgorithm("Gfex_Tower_etaPhiMapFilled",
33  hanConfig={"libname":"libdqm_summaries.so","name":"Bins_Equal_Threshold","BinThreshold":"0."},
34  thresholdConfig={"NBins":[0,32*40]}, # 0 bins expected to be empty
35  )
36 
37 
38  # histograms of gFex tower variables
39  helper.defineHistogram('LBN,NGfexTowers;h_LBN_vs_nGfexTowers', title='Number of gFex towers in each event with Et > 10 GeV;LBN; gTowers per event; Number of events',
40  fillGroup = "highEtgTowers",
41  type='TH2D',
42  path=f'{trigPath}/detail',
43  hanConfig={"description":"The y value gives the number of gTowers with Et > 10 GeV; the z value gives the number of events"},
44  xbins=1,xmin=0,xmax=1,
45  ybins=1,ymin=0,ymax=1,
46  opt=['kAddBinsDynamically']
47  )
48 
49  helper.defineHistogram('TowerEta,TowerPhi;h_HotTower_EtaPhiMap', title='gFex Tower Eta vs Phi (gTowerEt > 2 GeV) ;#eta;#phi; Number of gTowers',
50  fillGroup = "highEtgTowers",
51  type='TH2F',
52  path=trigPath,
53  hanConfig={
54  "algorithm": "Gfex_Tower_etaPhiMapFilled",
55  "description":"Look for hot spots with unusual high statistics; Check <a href='./detail/h_HotTowers_posVsLBN'>detail plot</a> to get timeseries for each location", "display":"SetPalette(55),Draw=COL1Z"},
56  xbins=eta_bins, ybins=32,ymin=-3.2,ymax=3.2)
57 
58 
59 
60  helper.defineHistogram('LBN,binNumber;h_HotTowers_posVsLBN',title='gFex Towers with Et > 2GeV;LB;40(y-1)+x',
61  path=f"{trigPath}/detail",
62  fillGroup = "highEtgTowers",
63  hanConfig={"description":"x and y correspond to axis bin numbers on <a href='../h_HotTower_EtaPhiMap'/>eta-phi plot</a>. Use this plot to check if hotspot/coldspots affected whole or part of run: turn on Projection X1 to see 1D hist of individual locations"},
64  type='TH2I',
65  xbins=1,xmin=0,xmax=10,
66  ybins=40*32,ymin=0.5,ymax=40*32+0.5,
67  opt=['kAddBinsDynamically','kAlwaysCreate'],merge="merge")
68 
69  # helper.defineHistogram('TowerEta,TowerPhi,TowerEt;h_TowerHeatMapHotTowers', title='gFex Tower Average Et Distribution (gTowerEt > 2 GeV) ;#eta;#phi;averageEt (count x 50 MeV)',
70  # fillGroup = "highEtgTowers",
71  # type='TProfile2D',
72  # path=trigPath,
73  # hanConfig={"description":"The histogram is an average Et distrribution og the gTowers in the eta-phi space. The z-axis gives the average Et."},
74  # **eta_phi_bins)
75 
76 
77  helper.defineHistogram('TowerEta,TowerPhi;h_ColdTower_EtaPhiMap', title='gFex Tower Eta vs Phi (gTower Et < - 2 GeV) ;#eta;#phi;Number of gTowers',
78  fillGroup = "lowEtgTowers",
79  type='TH2F',
80  path=trigPath,
81  hanConfig={
82  "algorithm": "Gfex_Tower_etaPhiMapFilled",
83  "description":"Look for cold spots with unusual high statistics; Check <a href='./detail/h_ColdTowers_posVsLBN'>detail plot</a> to get timeseries for each location ", "display":"SetPalette(55),Draw=COL1Z"},
84  xbins=eta_bins, ybins=32,ymin=-3.2,ymax=3.2)
85 
86  helper.defineHistogram('LBN,binNumber;h_ColdTowers_posVsLBN',title='gFex Towers with Et < -2GeV;LB;40(y-1)+x',
87  path=f"{trigPath}/detail",
88  fillGroup = "lowEtgTowers",
89  hanConfig={"description":"x and y correspond to axis bin numbers on <a href='../h_ColdTower_EtaPhiMap'/>eta-phi plot</a>. Use this plot to check if hotspot/coldspots affected whole or part of run: turn on Projection X1 to see 1D hist of individual locations"},
90  type='TH2I',
91  xbins=1,xmin=0,xmax=10,
92  ybins=40*32,ymin=0.5,ymax=40*32+0.5,
93  opt=['kAddBinsDynamically','kAlwaysCreate'],merge="merge")
94 
95 # helper.defineHistogram('TowerEta,TowerPhi,TowerEt;h_TowerHeatMapColdTowers', title='gFex Tower Average Et Distribution (gTower Et < - 2 GeV) ;#eta;#phi;averageEt (count x 50 MeV)',
96 # fillGroup = "lowEtgTowers",
97 # type='TProfile2D',
98 # path=trigPath,
99 # hanConfig={"description":"The histogram is an average Et distrribution og the gTowers in the eta-phi space. This includes only those gTowers with Et < 10 GeV. The z-axis gives the average Et."},
100 # **eta_phi_bins)
101 
102  helper.defineHistogram('TowerEt;h_TowerEt', title='gFex Tower Et ; Et (count x 50 MeV)',
103  fillGroup = "gTowers",
104  type='TH1I',
105  path='Developer/gFexInput',
106  hanConfig={"description":""},
107  xbins= 1000, xmin=-500.0, xmax=500.0)
108 
109  helper.defineHistogram('TowerSaturationflag;h_TowerSaturationflag', title='gFex Tower Saturation FLag',
110  fillGroup = "gTowers",
111  type='TH1F',
112  path='Developer/gFexInput',
113  xbins=3,xmin=0.0,xmax=3.0)
114 
115 
116  acc = helper.result()
117  result.merge(acc)
118  return result
119 
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
GfexInputMonitorAlgorithm.GfexInputMonitoringConfig
def GfexInputMonitoringConfig(flags)
Definition: GfexInputMonitorAlgorithm.py:4