5 from DQM.EcalMonitorTasks.LaserTask_cfi
import ecalLaserTask
9 expectedAmplitude = [1700.0, 1300.0, 1700.0, 1700.0]
10 toleranceAmplitude = 0.1
11 toleranceAmpRMSRatio = 0.3
12 expectedPNAmplitude = [800.0, 800.0, 800.0, 800.0]
14 tolerancePNRMSRatio = 1.
15 expectedTiming = [4.2, 4.2, 4.2, 4.2]
19 ecalLaserClient = cms.untracked.PSet(
20 params = cms.untracked.PSet(
21 forwardFactor = cms.untracked.double(forwardFactor),
22 minChannelEntries = cms.untracked.int32(minChannelEntries),
23 expectedAmplitude = cms.untracked.vdouble(expectedAmplitude),
24 toleranceAmplitude = cms.untracked.double(toleranceAmplitude),
25 toleranceAmpRMSRatio = cms.untracked.double(toleranceAmpRMSRatio),
26 expectedPNAmplitude = cms.untracked.vdouble(expectedPNAmplitude),
27 tolerancePNAmp = cms.untracked.double(tolerancePNAmp),
28 tolerancePNRMSRatio = cms.untracked.double(tolerancePNRMSRatio),
29 expectedTiming = cms.untracked.vdouble(expectedTiming),
30 toleranceTiming = cms.untracked.double(toleranceTiming),
31 toleranceTimRMS = cms.untracked.double(toleranceTimRMS)
33 sources = cms.untracked.PSet(
34 Timing = ecalLaserTask.MEs.Timing,
35 PNAmplitude = ecalLaserTask.MEs.PNAmplitude,
36 Amplitude = ecalLaserTask.MEs.Amplitude
38 MEs = cms.untracked.PSet(
39 TimingRMS = cms.untracked.PSet(
40 kind = cms.untracked.string(
'TH1F'),
41 multi = cms.untracked.PSet(
42 wl = ecaldqmLaserWavelengths
44 otype = cms.untracked.string(
'SM'),
45 xaxis = cms.untracked.PSet(
46 high = cms.untracked.double(0.5),
47 nbins = cms.untracked.int32(100),
48 low = cms.untracked.double(0.0),
49 title = cms.untracked.string(
'rms (clock)')
51 btype = cms.untracked.string(
'User'),
52 path = cms.untracked.string(
'%(subdet)s/%(prefix)sLaserClient/%(prefix)sLT laser timing rms L%(wl)s %(sm)s'),
53 description = cms.untracked.string(
'Distribution of the timing RMS in each crystal channel. X scale is in LHC clocks. Channels with less than ' + str(minChannelEntries) +
' are not considered.')
55 TimingMean = cms.untracked.PSet(
56 kind = cms.untracked.string(
'TH1F'),
57 multi = cms.untracked.PSet(
58 wl = ecaldqmLaserWavelengths
60 otype = cms.untracked.string(
'SM'),
61 xaxis = cms.untracked.PSet(
62 high = cms.untracked.double(5.5),
63 nbins = cms.untracked.int32(100),
64 low = cms.untracked.double(3.5),
65 title = cms.untracked.string(
'time (clock)')
67 btype = cms.untracked.string(
'User'),
68 path = cms.untracked.string(
'%(subdet)s/%(prefix)sLaserClient/%(prefix)sLT laser timing mean L%(wl)s %(sm)s'),
69 description = cms.untracked.string(
'Distribution of the timing in each crystal channel. X scale is in LHC clocks. Channels with less than ' + str(minChannelEntries) +
' are not considered.')
71 PNQualitySummary = cms.untracked.PSet(
72 path = cms.untracked.string(
'%(subdet)s/%(prefix)sSummaryClient/%(prefix)sLT PN laser quality summary L%(wl)s'),
73 otype = cms.untracked.string(
'MEM2P'),
74 multi = cms.untracked.PSet(
75 wl = ecaldqmLaserWavelengths
77 kind = cms.untracked.string(
'TH2F'),
78 btype = cms.untracked.string(
'Crystal'),
79 description = cms.untracked.string(
'Summary of the laser data quality in the PN diodes. A channel is red if mean / expected < ' + str(tolerancePNAmp) +
' or RMS / expected > ' + str(tolerancePNRMSRatio) +
'. Expected amplitudes are ' + (
'%.1f, %.1f, %.1f, %.1f' % tuple(expectedPNAmplitude)) +
' for laser 1, 2, 3, and 4 respectively. Channels with less than ' + str(minChannelEntries) +
' are not considered.'),
81 TimingRMSMap = cms.untracked.PSet(
82 multi = cms.untracked.PSet(
83 wl = ecaldqmLaserWavelengths
85 kind = cms.untracked.string(
'TH2F'),
86 otype = cms.untracked.string(
'Ecal2P'),
87 zaxis = cms.untracked.PSet(
88 title = cms.untracked.string(
'rms (clock)')
90 btype = cms.untracked.string(
'Crystal'),
91 path = cms.untracked.string(
'%(subdet)s/%(prefix)sLaserClient/%(prefix)sLT laser timing rms map L%(wl)s'),
92 description = cms.untracked.string(
'2D distribution of the laser timing RMS. Z scale is in LHC clocks. Channels with less than ' + str(minChannelEntries) +
' are not considered.')
94 AmplitudeMean = cms.untracked.PSet(
95 kind = cms.untracked.string(
'TH1F'),
96 multi = cms.untracked.PSet(
97 wl = ecaldqmLaserWavelengths
99 otype = cms.untracked.string(
'SM'),
100 xaxis = cms.untracked.PSet(
101 high = cms.untracked.double(4096.0),
102 nbins = cms.untracked.int32(100),
103 low = cms.untracked.double(0.0)
105 btype = cms.untracked.string(
'User'),
106 path = cms.untracked.string(
'%(subdet)s/%(prefix)sLaserClient/%(prefix)sLT amplitude L%(wl)s %(sm)s'),
107 description = cms.untracked.string(
'Distribution of the mean amplitude seen in each crystal. Channels with less than ' + str(minChannelEntries) +
' are not considered.')
109 QualitySummary = cms.untracked.PSet(
110 path = cms.untracked.string(
'%(subdet)s/%(prefix)sSummaryClient/%(prefix)sLT%(suffix)s laser quality summary L%(wl)s'),
111 otype = cms.untracked.string(
'Ecal3P'),
112 multi = cms.untracked.PSet(
113 wl = ecaldqmLaserWavelengths
115 kind = cms.untracked.string(
'TH2F'),
116 btype = cms.untracked.string(
'SuperCrystal'),
117 description = cms.untracked.string(
'Summary of the laser data quality. A channel is red either if mean / expected < ' + str(toleranceAmplitude) +
', or if RMS / expected > ' + str(toleranceAmpRMSRatio) +
', or if mean timing is off from expected by ' + str(toleranceTiming) +
'. Expected amplitudes and timings are ' + (
'%.1f, %.1f, %.1f, %.1f' % tuple(expectedAmplitude)) +
' and ' + (
'%.1f, %.1f, %.1f, %.1f' % tuple(expectedTiming)) +
' for lasers 1, 2, 3, and 4 respectively. Channels with less than ' + str(minChannelEntries) +
' are not considered.'),
119 Quality = cms.untracked.PSet(
120 path = cms.untracked.string(
'%(subdet)s/%(prefix)sLaserClient/%(prefix)sLT laser quality L%(wl)s %(sm)s'),
121 otype = cms.untracked.string(
'SM'),
122 multi = cms.untracked.PSet(
123 wl = ecaldqmLaserWavelengths
125 kind = cms.untracked.string(
'TH2F'),
126 btype = cms.untracked.string(
'Crystal'),
127 description = cms.untracked.string(
'Summary of the laser data quality. A channel is red either if mean / expected < ' + str(toleranceAmplitude) +
', or if RMS / expected > ' + str(toleranceAmpRMSRatio) +
', or if mean timing is off from expected by ' + str(toleranceTiming) +
'. Expected amplitudes and timings are ' + (
'%.1f, %.1f, %.1f, %.1f' % tuple(expectedAmplitude)) +
' and ' + (
'%.1f, %.1f, %.1f, %.1f' % tuple(expectedTiming)) +
' for lasers 1, 2, 3, and 4 respectively. Channels with less than ' + str(minChannelEntries) +
' are not considered.'),
129 AmplitudeRMS = cms.untracked.PSet(
130 multi = cms.untracked.PSet(
131 wl = ecaldqmLaserWavelengths
133 kind = cms.untracked.string(
'TH2F'),
134 otype = cms.untracked.string(
'Ecal2P'),
135 zaxis = cms.untracked.PSet(
136 title = cms.untracked.string(
'rms (ADC counts)')
138 btype = cms.untracked.string(
'Crystal'),
139 path = cms.untracked.string(
'%(subdet)s/%(prefix)sLaserClient/%(prefix)sLT amplitude rms L%(wl)s'),
140 description = cms.untracked.string(
'2D distribution of the amplitude RMS. Channels with less than ' + str(minChannelEntries) +
' are not considered.')