CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
LaserClient_cfi.py
Go to the documentation of this file.
2 
4 
5 from DQM.EcalMonitorTasks.LaserTask_cfi import ecalLaserTask
6 
7 forwardFactor = 0.5
8 minChannelEntries = 3
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]
13 tolerancePNAmp = 0.1
14 tolerancePNRMSRatio = 1.
15 expectedTiming = [4.2, 4.2, 4.2, 4.2]
16 toleranceTiming = 0.5
17 toleranceTimRMS = 0.4
18 
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)
32  ),
33  sources = cms.untracked.PSet(
34  Timing = ecalLaserTask.MEs.Timing,
35  PNAmplitude = ecalLaserTask.MEs.PNAmplitude,
36  Amplitude = ecalLaserTask.MEs.Amplitude
37  ),
38  MEs = cms.untracked.PSet(
39  TimingRMS = cms.untracked.PSet(
40  kind = cms.untracked.string('TH1F'),
41  multi = cms.untracked.PSet(
42  wl = ecaldqmLaserWavelengths
43  ),
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)')
50  ),
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.')
54  ),
55  TimingMean = cms.untracked.PSet(
56  kind = cms.untracked.string('TH1F'),
57  multi = cms.untracked.PSet(
58  wl = ecaldqmLaserWavelengths
59  ),
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)')
66  ),
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.')
70  ),
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
76  ),
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.'),
80  ),
81  TimingRMSMap = cms.untracked.PSet(
82  multi = cms.untracked.PSet(
83  wl = ecaldqmLaserWavelengths
84  ),
85  kind = cms.untracked.string('TH2F'),
86  otype = cms.untracked.string('Ecal2P'),
87  zaxis = cms.untracked.PSet(
88  title = cms.untracked.string('rms (clock)')
89  ),
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.')
93  ),
94  AmplitudeMean = cms.untracked.PSet(
95  kind = cms.untracked.string('TH1F'),
96  multi = cms.untracked.PSet(
97  wl = ecaldqmLaserWavelengths
98  ),
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)
104  ),
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.')
108  ),
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
114  ),
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.'),
118  ),
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
124  ),
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.'),
128  ),
129  AmplitudeRMS = cms.untracked.PSet(
130  multi = cms.untracked.PSet(
131  wl = ecaldqmLaserWavelengths
132  ),
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)')
137  ),
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.')
141  )
142  )
143 )