File indexing completed on 2024-04-06 12:07:16
0001 import FWCore.ParameterSet.Config as cms
0002
0003 from DQM.EcalMonitorTasks.TimingTask_cfi import ecalTimingTask
0004 from DQM.EcalMonitorClient.IntegrityClient_cfi import ecalIntegrityClient
0005
0006 minChannelEntries = 1
0007 minTowerEntries = 3
0008 ebtoleranceMean = 2.
0009 eetoleranceMean = 3.
0010 toleranceRMS = 6.
0011 minChannelEntriesFwd = 8
0012 minTowerEntriesFwd = 24
0013 toleranceMeanFwd = 6.
0014 toleranceRMSFwd = 12.
0015 tailPopulThreshold = 0.4
0016 timeWindow = 25.
0017
0018 ecalTimingClient = cms.untracked.PSet(
0019 params = cms.untracked.PSet(
0020 minChannelEntries = cms.untracked.int32(minChannelEntries),
0021 minTowerEntries = cms.untracked.int32(minTowerEntries),
0022 ebtoleranceMean = cms.untracked.double(ebtoleranceMean),
0023 eetoleranceMean = cms.untracked.double(eetoleranceMean),
0024 toleranceRMS = cms.untracked.double(toleranceRMS),
0025 minChannelEntriesFwd = cms.untracked.int32(minChannelEntriesFwd),
0026 minTowerEntriesFwd = cms.untracked.int32(minTowerEntriesFwd),
0027 toleranceMeanFwd = cms.untracked.double(toleranceMeanFwd),
0028 toleranceRMSFwd = cms.untracked.double(toleranceRMSFwd),
0029 tailPopulThreshold = cms.untracked.double(tailPopulThreshold)
0030 ),
0031 sources = cms.untracked.PSet(
0032 TimeAllMap = ecalTimingTask.MEs.TimeAllMap,
0033 TimeMap = ecalTimingTask.MEs.TimeMap,
0034 TimeMapByLS = ecalTimingTask.MEs.TimeMapByLS,
0035 ChStatus = ecalIntegrityClient.MEs.ChStatus
0036 ),
0037 MEs = cms.untracked.PSet(
0038 RMSAll = cms.untracked.PSet(
0039 path = cms.untracked.string('%(subdet)s/%(prefix)sSummaryClient/%(prefix)sTMT%(suffix)s timing rms 1D summary'),
0040 kind = cms.untracked.string('TH1F'),
0041 otype = cms.untracked.string('Ecal3P'),
0042 xaxis = cms.untracked.PSet(
0043 high = cms.untracked.double(10.0),
0044 nbins = cms.untracked.int32(100),
0045 low = cms.untracked.double(0.0),
0046 title = cms.untracked.string('time (ns)')
0047 ),
0048 btype = cms.untracked.string('User'),
0049 description = cms.untracked.string('Distribution of per-channel timing RMS. Channels with entries less than ' + str(minChannelEntries) + ' are not considered.')
0050 ),
0051 ProjEta = cms.untracked.PSet(
0052 path = cms.untracked.string('%(subdet)s/%(prefix)sTimingClient/%(prefix)sTMT timing projection eta%(suffix)s'),
0053 kind = cms.untracked.string('TProfile'),
0054 yaxis = cms.untracked.PSet(
0055 title = cms.untracked.string('time (ns)')
0056 ),
0057 otype = cms.untracked.string('Ecal3P'),
0058 btype = cms.untracked.string('ProjEta'),
0059 description = cms.untracked.string('Projection of per-channel mean timing. Channels with entries less than ' + str(minChannelEntries) + ' are not considered.')
0060 ),
0061 FwdBkwdDiff = cms.untracked.PSet(
0062 path = cms.untracked.string('%(subdet)s/%(prefix)sTimingTask/%(prefix)sTMT timing %(prefix)s+ - %(prefix)s-'),
0063 kind = cms.untracked.string('TH1F'),
0064 otype = cms.untracked.string('Ecal2P'),
0065 xaxis = cms.untracked.PSet(
0066 high = cms.untracked.double(5.0),
0067 nbins = cms.untracked.int32(100),
0068 low = cms.untracked.double(-5.0),
0069 title = cms.untracked.string('time (ns)')
0070 ),
0071 btype = cms.untracked.string('User'),
0072 description = cms.untracked.string('Forward-backward asymmetry of per-channel mean timing. Channels with entries less than ' + str(minChannelEntries) + ' are not considered.')
0073 ),
0074 FwdvBkwd = cms.untracked.PSet(
0075 kind = cms.untracked.string('TH2F'),
0076 yaxis = cms.untracked.PSet(
0077 high = cms.untracked.double(timeWindow),
0078 nbins = cms.untracked.int32(50),
0079 low = cms.untracked.double(-timeWindow),
0080 title = cms.untracked.string('time (ns)')
0081 ),
0082 otype = cms.untracked.string('Ecal2P'),
0083 xaxis = cms.untracked.PSet(
0084 high = cms.untracked.double(timeWindow),
0085 nbins = cms.untracked.int32(50),
0086 low = cms.untracked.double(-timeWindow)
0087 ),
0088 btype = cms.untracked.string('User'),
0089 path = cms.untracked.string('%(subdet)s/%(prefix)sTimingTask/%(prefix)sTMT timing %(prefix)s+ vs %(prefix)s-'),
0090 description = cms.untracked.string('Forward-backward correlation of per-channel mean timing. Channels with entries less than ' + str(minChannelEntries) + ' are not considered.')
0091 ),
0092 ProjPhi = cms.untracked.PSet(
0093 path = cms.untracked.string('%(subdet)s/%(prefix)sTimingClient/%(prefix)sTMT timing projection phi%(suffix)s'),
0094 kind = cms.untracked.string('TProfile'),
0095 yaxis = cms.untracked.PSet(
0096 title = cms.untracked.string('time (ns)')
0097 ),
0098 otype = cms.untracked.string('Ecal3P'),
0099 btype = cms.untracked.string('ProjPhi'),
0100 description = cms.untracked.string('Projection of per-channel mean timing. Channels with entries less than ' + str(minChannelEntries) + ' are not considered.')
0101 ),
0102 MeanSM = cms.untracked.PSet(
0103 kind = cms.untracked.string('TH1F'),
0104 yaxis = cms.untracked.PSet(
0105 title = cms.untracked.string('time (ns)')
0106 ),
0107 otype = cms.untracked.string('SM'),
0108 xaxis = cms.untracked.PSet(
0109 high = cms.untracked.double(timeWindow),
0110 nbins = cms.untracked.int32(100),
0111 low = cms.untracked.double(-timeWindow)
0112 ),
0113 btype = cms.untracked.string('User'),
0114 path = cms.untracked.string('%(subdet)s/%(prefix)sTimingClient/%(prefix)sTMT timing mean %(sm)s'),
0115 description = cms.untracked.string('Distribution of per-channel timing mean. Channels with entries less than ' + str(minChannelEntries) + ' are not considered.')
0116 ),
0117 RMSMap = cms.untracked.PSet(
0118 path = cms.untracked.string('%(subdet)s/%(prefix)sTimingClient/%(prefix)sTMT timing rms %(sm)s'),
0119 kind = cms.untracked.string('TH2F'),
0120 zaxis = cms.untracked.PSet(
0121 title = cms.untracked.string('rms (ns)')
0122 ),
0123 otype = cms.untracked.string('SM'),
0124 btype = cms.untracked.string('Crystal'),
0125 description = cms.untracked.string('2D distribution of per-channel timing RMS. Channels with entries less than ' + str(minChannelEntries) + ' are not considered.')
0126 ),
0127 QualitySummary = cms.untracked.PSet(
0128 path = cms.untracked.string('%(subdet)s/%(prefix)sSummaryClient/%(prefix)sTMT%(suffix)s timing quality summary'),
0129 kind = cms.untracked.string('TH2F'),
0130 otype = cms.untracked.string('Ecal3P'),
0131 btype = cms.untracked.string('SuperCrystal'),
0132 description = cms.untracked.string('Summary of the timing data quality. A 5x5 tower is red if the mean timing of the tower is off by more than ' + str(ebtoleranceMean) + 'for EB and ' + str(eetoleranceMean) + 'for EE, or RMS is greater than ' + str(toleranceRMS) + ' (' + str(toleranceMeanFwd) + ' and ' + str(toleranceRMSFwd) + ' in forward region). Towers with total entries less than ' + str(minTowerEntries) + ' are not subject to this evaluation. Since 5x5 tower timings are calculated with a tighter time-window than per-channel timings, a tower can additionally become red if its the sum of per-channel timing histogram entries is greater than per-tower histogram entries by factor ' + str(1. / (1. - tailPopulThreshold)) + ' (significant fraction of events fall outside the tight time-window).')
0133 ),
0134 Quality = cms.untracked.PSet(
0135 path = cms.untracked.string('%(subdet)s/%(prefix)sTimingClient/%(prefix)sTMT timing quality %(sm)s'),
0136 kind = cms.untracked.string('TH2F'),
0137 otype = cms.untracked.string('SM'),
0138 btype = cms.untracked.string('Crystal'),
0139 description = cms.untracked.string('Summary of the timing data quality. A channel is red if its mean timing is off by more than ' + str(ebtoleranceMean) + 'for EB and' + str(eetoleranceMean) + 'for EE, or RMS is greater than ' + str(toleranceRMS) + '. Channels with entries less than ' + str(minChannelEntries) + ' are not considered.')
0140 ),
0141 MeanAll = cms.untracked.PSet(
0142 path = cms.untracked.string('%(subdet)s/%(prefix)sSummaryClient/%(prefix)sTMT%(suffix)s timing mean 1D summary'),
0143 kind = cms.untracked.string('TH1F'),
0144 otype = cms.untracked.string('Ecal3P'),
0145 xaxis = cms.untracked.PSet(
0146 high = cms.untracked.double(timeWindow),
0147 nbins = cms.untracked.int32(100),
0148 low = cms.untracked.double(-timeWindow),
0149 title = cms.untracked.string('time (ns)')
0150 ),
0151 btype = cms.untracked.string('User'),
0152 description = cms.untracked.string('Distribution of per-channel timing mean. Channels with entries less than ' + str(minChannelEntries) + ' are not considered.')
0153 ),
0154 TrendMean = cms.untracked.PSet(
0155 path = cms.untracked.string('Ecal/Trends/TimingClient %(prefix)s timing mean'),
0156 kind = cms.untracked.string('TProfile'),
0157 otype = cms.untracked.string('Ecal2P'),
0158 btype = cms.untracked.string('Trend'),
0159 description = cms.untracked.string('Trend of timing mean. Plots simple average of all channel timing means at each lumisection.')
0160 ),
0161 TrendRMS = cms.untracked.PSet(
0162 path = cms.untracked.string('Ecal/Trends/TimingClient %(prefix)s timing rms'),
0163 kind = cms.untracked.string('TProfile'),
0164 otype = cms.untracked.string('Ecal2P'),
0165 btype = cms.untracked.string('Trend'),
0166 description = cms.untracked.string('Trend of timing rms. Plots simple average of all channel timing rms at each lumisection.')
0167 )
0168 )
0169 )
0170