Commit 4e26386f authored by Iskander Ibragimov's avatar Iskander Ibragimov Committed by Frank Winklmeier
Browse files

PixelMonitoring: separate online histograms with limited history from their offline versions

parent d47900d8
......@@ -24,15 +24,18 @@ from PixelMonitoring.PixelAthErrorMonAlgCfg import PixelAthErrorMonAlgCfg
from InDetRecExample.InDetKeys import InDetKeys
from InDetRecExample import TrackingCommon
if forceOnline : athenaCommonFlags.isOnline = True
kwargsHitMonAlg = { 'doOnline' : True if athenaCommonFlags.isOnline() else False, #Histograms for online (GlobalMonitoring) running
'doLumiBlock' : False if athenaCommonFlags.isOnline() else True, #Turn on/off histograms stored every 1(20) lumi block(s)
if forceOnline :
isOnline = True
else:
isOnline = athenaCommonFlags.isOnline()
kwargsHitMonAlg = { 'doOnline' : isOnline, #Histograms for online (GlobalMonitoring) running
'doLumiBlock' : not isOnline, #Turn on/off histograms stored every 1(20) lumi block(s)
'doFEPlots' : True, #Turn on/off per FE-I3 histograms
'RDOName' : InDetKeys.PixelRDOs()
}
kwargsClusMonAlg = { 'doOnline' : True if athenaCommonFlags.isOnline() else False, #Histograms for online (GlobalMonitoring) running
'doLumiBlock' : False if athenaCommonFlags.isOnline() else True, #Turn on/off histograms stored every 1(20) lumi block(s)
kwargsClusMonAlg = { 'doOnline' : isOnline, #Histograms for online (GlobalMonitoring) running
'doLumiBlock' : not isOnline, #Turn on/off histograms stored every 1(20) lumi block(s)
'doLowOccupancy' : InDetFlags.doCosmics(), #Setting up 1D histogram ranges and binnings, if False, high occupancy i.e. collisions settings will be used
'doHeavyIonMon' : InDetFlags.doHeavyIon(), #Setting up 1D histogram ranges and binnings for heavy ions
'doFEPlots' : True, #Turn on/off per FE-I3 histograms
......@@ -40,11 +43,9 @@ kwargsClusMonAlg = { 'doOnline' : True if athenaCommonFlags.isOnline() el
'TrackName' : InDetKeys.Tracks()
}
kwargsErrMonAlg = { 'doOnline' : True if athenaCommonFlags.isOnline() else False, #Histograms for online (GlobalMonitoring) running
'doLumiBlock' : False if athenaCommonFlags.isOnline() else True #Turn on/off histograms stored every 1(20) lumi block(s)
kwargsErrMonAlg = { 'doOnline' : isOnline, #Histograms for online (GlobalMonitoring) running
'doLumiBlock' : not isOnline #Turn on/off histograms stored every 1(20) lumi block(s)
}
if forceOnline : athenaCommonFlags.isOnline = False
from AthenaMonitoring.DQMonFlags import DQMonFlags
from AthenaMonitoring import AthMonitorCfgHelperOld
......
......@@ -34,8 +34,9 @@ def PixelAthClusterMonAlgCfg(helper, alg, **kwargs):
title = 'Modules Status (0=Active+Good, 1=Active+Bad, 2=Inactive)'
define2DProfHist(helper, alg, histoGroupName, title, path, type='TProfile2D')
title = 'Modules Status Reset (0=Active+Good, 1=Active+Bad, 2=Inactive)'
define2DProfHist(helper, alg, histoGroupName, title, path, type='TProfile2D', zmin=0, zmax=2, opt='kLBNHistoryDepth=2', histname='MapOfModulesStatusMon')
if doOnline:
title = 'Modules Status (0=Active+Good, 1=Active+Bad, 2=Inactive) reset every 2 LBs'
define2DProfHist(helper, alg, histoGroupName, title, path, type='TProfile2D', zmin=0, zmax=2, opt='kLBNHistoryDepth=2', histname='MapOfModulesStatusMon')
if doFEPlots:
histoGroupName = 'MapOfFEsStatus'
......@@ -173,11 +174,11 @@ def PixelAthClusterMonAlgCfg(helper, alg, **kwargs):
if forceOnline: athenaCommonFlags.isOnline = False
histoGroupName = 'HolesRatio5min'
title = 'Holes per track reset every 5 min'
title = 'Holes per track reset every 5 LBs'
define2DProfHist(helper, alg, 'HolesRatio', title, path, type='TProfile2D', zmin=0, zmax=1.1, opt='kLBNHistoryDepth=5', histname=histoGroupName)
histoGroupName = 'MissHitsRatio5min'
title = 'Hole+Outlier per track reset every 5 min'
title = 'Hole+Outlier per track reset every 5 LBs'
define2DProfHist(helper, alg, 'MissHitsRatio', title, path, type='TProfile2D', zmin=0, zmax=1.1, opt='kLBNHistoryDepth=5', histname=histoGroupName)
varName = 'trkdataread_err;ReadingTrackDataErr'
......@@ -314,7 +315,7 @@ def PixelAthClusterMonAlgCfg(helper, alg, **kwargs):
if doOnline:
histoGroupName = addOnTrackTxt('ClusterMapMon', ontrack)
title = addOnTrackTxt('Cluster map for monitoring', ontrack, True)
title = addOnTrackTxt('Cluster map reset every 2 LBs', ontrack, True)
define2DProfHist(helper, alg, histoGroupName, title, pathGroup, type='TH2D', zmin=0, zmax=1e4, opt='kLBNHistoryDepth=2') #FIXME zmax value w/ high stat
###
......@@ -332,8 +333,13 @@ def PixelAthClusterMonAlgCfg(helper, alg, **kwargs):
define2DProfHist(helper, alg, histoGroupName, title, pathGroup, type='TH2D')
if ontrack:
histoGroupName = addOnTrackTxt('ClusterOccupancyPP0', ontrack)
title = addOnTrackTxt('Average per module(FE) cluster occupancy reset every 5 min', ontrack, True)
definePP0Histos(helper, alg, histoGroupName, title, pathGroup, opt='kLBNHistoryDepth=5')
if doOnline:
title = addOnTrackTxt('Average per module(FE) cluster occupancy per PP0 reset every 5 LBs', ontrack, True)
definePP0Histos(helper, alg, histoGroupName, title, pathGroup, opt='kLBNHistoryDepth=5')
else:
title = addOnTrackTxt('Average per module(FE) cluster occupancy per PP0', ontrack, True)
definePP0Histos(helper, alg, histoGroupName, title, pathGroup)
if doFEPlots:
histoGroupName = addOnTrackTxt('ClusterFEOccupancy', ontrack)
......
......@@ -114,13 +114,20 @@ def PixelAthHitMonAlgCfg(helper, alg, **kwargs):
type='TProfile', path=pathGroup, title=title,
xbins=bcidbinsx, xmin=-0.5, xmax=-0.5+bcidbinsx)
histoGroupName = 'HitOccupancyPP0'
title = 'Average per module(FE) hit occupancy reset every 5 min'
definePP0Histos(helper, alg, histoGroupName, title, path=pathGroup, opt='kLBNHistoryDepth=5')
histoGroupName ='OccupancyPerPixelEvent'
title = '#hits / pixel / event'
define2DProfHist(helper, alg, histoGroupName, title, path=pathGroup, type='TProfile2D', zmin=0, zmax=1.0, opt='kLBNHistoryDepth=2')
if doOnline:
histoGroupName = 'HitOccupancyPP0'
title = 'Average per module(FE) hit occupancy per PP0 reset every 5 LBs'
definePP0Histos(helper, alg, histoGroupName, title, path=pathGroup, opt='kLBNHistoryDepth=5')
histoGroupName ='OccupancyPerPixelEvent'
title = '#hits / pixel / event reset every 2 LBs'
define2DProfHist(helper, alg, histoGroupName, title, path=pathGroup, type='TProfile2D', zmin=0, zmax=1.0, opt='kLBNHistoryDepth=2')
else:
histoGroupName = 'HitOccupancyPP0'
title = 'Average per module(FE) hit occupancy per PP0'
definePP0Histos(helper, alg, histoGroupName, title, path=pathGroup)
histoGroupName ='OccupancyPerPixelEvent'
title = '#hits / pixel / event'
define2DProfHist(helper, alg, histoGroupName, title, path=pathGroup, type='TProfile2D', zmin=0, zmax=1.0)
###
### begin hit timing
......
......@@ -10,15 +10,18 @@ def PixelMonitoringConfig(flags):
from InDetRecExample.InDetJobProperties import InDetFlags
# run on RAW only
if flags.DQ.Environment in ('online', 'tier0', 'tier0Raw'):
if forceOnline : flags.Common.isOnline = True
kwargsHitMonAlg = { 'doOnline' : flags.Common.isOnline, #Histograms for online (GlobalMonitoring) running
'doLumiBlock' : not flags.Common.isOnline, #Turn on/off histograms stored every 1(20) lumi block(s)
if forceOnline:
isOnline = True
else:
isOnline = flags.Common.isOnline
kwargsHitMonAlg = { 'doOnline' : isOnline, #Histograms for online (GlobalMonitoring) running
'doLumiBlock' : not isOnline, #Turn on/off histograms stored every 1(20) lumi block(s)
'doFEPlots' : True, #Turn on/off per FE-I3 histograms
'RDOName' : InDetKeys.PixelRDOs() #'PixelRDOs'
}
kwargsClusMonAlg = { 'doOnline' : flags.Common.isOnline, #Histograms for online (GlobalMonitoring) running
'doLumiBlock' : not flags.Common.isOnline, #Turn on/off histograms stored every 1(20) lumi block(s)
kwargsClusMonAlg = { 'doOnline' : isOnline, #Histograms for online (GlobalMonitoring) running
'doLumiBlock' : not isOnline, #Turn on/off histograms stored every 1(20) lumi block(s)
'doLowOccupancy' : InDetFlags.doCosmics(), #Setting up 1D histogram ranges and binnings, if False, high occupancy i.e. collisions settings will be used
'doHeavyIonMon' : InDetFlags.doHeavyIon(), #Setting up 1D histogram ranges and binnings for heavy ions
'doFEPlots' : True, #Turn on/off per FE-I3 histograms
......@@ -26,10 +29,9 @@ def PixelMonitoringConfig(flags):
'TrackName' : InDetKeys.Tracks() #'Tracks'
}
kwargsErrMonAlg = { 'doOnline' : flags.Common.isOnline, #Histograms for online (GlobalMonitoring) running
'doLumiBlock' : not flags.Common.isOnline #Turn on/off histograms stored every 1(20) lumi block(s)
kwargsErrMonAlg = { 'doOnline' : isOnline, #Histograms for online (GlobalMonitoring) running
'doLumiBlock' : not isOnline #Turn on/off histograms stored every 1(20) lumi block(s)
}
if forceOnline : flags.Common.isOnline = False
from AthenaMonitoring import AthMonitorCfgHelper
helper = AthMonitorCfgHelper(flags, "NewPixelMonitoring")
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment