10 ''' Function to configure TileDigiNoiseMonitorAlgorithm algorithm in the monitoring system.'''
14 from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
15 result = ComponentAccumulator()
17 from TileRecUtils.TileDQstatusConfig
import TileDQstatusAlgCfg
18 result.merge( TileDQstatusAlgCfg(flags) )
20 from TileGeoModel.TileGMConfig
import TileGMCfg
21 result.merge(TileGMCfg(flags))
23 from TileConditions.TileCablingSvcConfig
import TileCablingSvcCfg
24 result.merge( TileCablingSvcCfg(flags) )
26 from TileConditions.TileBadChannelsConfig
import TileBadChannelsCondAlgCfg
27 result.merge( TileBadChannelsCondAlgCfg(flags, **kwargs) )
29 kwargs.setdefault(
'ignoreDisconnectedChannels', flags.Common.isOnline)
31 kwargs.setdefault(
'fillPedestalDifference',
True)
32 if kwargs[
'fillPedestalDifference']
and 'TileCondToolNoiseSample' not in kwargs:
33 from TileConditions.TileSampleNoiseConfig
import TileCondToolNoiseSampleCfg
34 sampleNoiseTool = result.popToolsAndMerge( TileCondToolNoiseSampleCfg(flags) )
35 kwargs[
'TileCondToolNoiseSample'] = sampleNoiseTool
37 kwargs.setdefault(
'CheckDCS', flags.Tile.useDCS)
38 if kwargs[
'CheckDCS']:
39 from TileConditions.TileDCSConfig
import TileDCSCondAlgCfg
40 result.merge( TileDCSCondAlgCfg(flags) )
43 kwargs.setdefault(
'TriggerTypes', [0x82])
47 from AthenaMonitoring
import AthMonitorCfgHelper
48 helper = AthMonitorCfgHelper(flags,
'TileDigiNoiseMonitoring')
50 from AthenaConfiguration.Enums
import Format
51 if flags.Input.Format
is Format.POOL:
52 kwargs.setdefault(
'TileDigitsContainer',
'TileDigitsFlt')
55 from AthenaConfiguration.ComponentFactory
import CompFactory
56 tileDigiNoiseMonAlg = helper.addAlgorithm(CompFactory.TileDigiNoiseMonitorAlgorithm,
'TileDigiNoiseMonAlg')
58 for k, v
in kwargs.items():
59 setattr(tileDigiNoiseMonAlg, k, v)
61 run = str(flags.Input.RunNumbers[0])
64 executeTimeGroup = helper.addGroup(tileDigiNoiseMonAlg,
'TileDigiNoiseMonExecuteTime',
'Tile/')
65 executeTimeGroup.defineHistogram(
'TIME_execute', path =
'DigiNoise', type=
'TH1F',
66 title =
'Time for execute TileDigiNoiseMonAlg algorithm;time [#mus]',
67 xbins = 100, xmin = 0, xmax = 100000)
70 from TileMonitoring.TileMonitoringCfgHelper
import addTileModuleChannelMapsArray
73 addTileModuleChannelMapsArray(helper, tileDigiNoiseMonAlg, name =
'TileDigiNoisePed',
74 title =
'Pedestal', path =
'Tile/DigiNoise', type =
'TProfile2D',
75 value =
'pedestal', run = run, perGain =
True, separator =
'_')
78 addTileModuleChannelMapsArray(helper, tileDigiNoiseMonAlg, name =
'TileDigiNoiseHFN',
79 title =
'High frequency noise', path =
'Tile/DigiNoise', type =
'TProfile2D',
80 value =
'HFN', run = run, perGain =
True, separator =
'_')
83 accumalator = helper.result()
84 result.merge(accumalator)
96 from AthenaConfiguration.TestDefaults
import defaultGeometryTags, defaultConditionsTags