CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
TimingClient_cfi.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 from DQM.EcalMonitorTasks.TimingTask_cfi import ecalTimingTask
4 
5 minChannelEntries = 5
6 minTowerEntries = 15
7 toleranceMean = 2.
8 toleranceRMS = 6.
9 minChannelEntriesFwd = 40
10 minTowerEntriesFwd = 160
11 toleranceMeanFwd = 6.
12 toleranceRMSFwd = 12.
13 tailPopulThreshold = 0.4
14 timeWindow = 25.
15 
16 ecalTimingClient = cms.untracked.PSet(
17  params = cms.untracked.PSet(
18  minChannelEntries = cms.untracked.int32(minChannelEntries),
19  minTowerEntries = cms.untracked.int32(minTowerEntries),
20  toleranceMean = cms.untracked.double(toleranceMean),
21  toleranceRMS = cms.untracked.double(toleranceRMS),
22  minChannelEntriesFwd = cms.untracked.int32(minChannelEntriesFwd),
23  minTowerEntriesFwd = cms.untracked.int32(minTowerEntriesFwd),
24  toleranceMeanFwd = cms.untracked.double(toleranceMeanFwd),
25  toleranceRMSFwd = cms.untracked.double(toleranceRMSFwd),
26  tailPopulThreshold = cms.untracked.double(tailPopulThreshold)
27  ),
28  sources = cms.untracked.PSet(
29  TimeAllMap = ecalTimingTask.MEs.TimeAllMap,
30  TimeMap = ecalTimingTask.MEs.TimeMap
31  ),
32  MEs = cms.untracked.PSet(
33  RMSAll = cms.untracked.PSet(
34  path = cms.untracked.string('%(subdet)s/%(prefix)sSummaryClient/%(prefix)sTMT%(suffix)s timing rms 1D summary'),
35  kind = cms.untracked.string('TH1F'),
36  otype = cms.untracked.string('Ecal3P'),
37  xaxis = cms.untracked.PSet(
38  high = cms.untracked.double(10.0),
39  nbins = cms.untracked.int32(100),
40  low = cms.untracked.double(0.0),
41  title = cms.untracked.string('time (ns)')
42  ),
43  btype = cms.untracked.string('User'),
44  description = cms.untracked.string('Distribution of per-channel timing RMS. Channels with entries less than ' + str(minChannelEntries) + ' are not considered.')
45  ),
46  ProjEta = cms.untracked.PSet(
47  path = cms.untracked.string('%(subdet)s/%(prefix)sTimingClient/%(prefix)sTMT timing projection eta%(suffix)s'),
48  kind = cms.untracked.string('TProfile'),
49  yaxis = cms.untracked.PSet(
50  title = cms.untracked.string('time (ns)')
51  ),
52  otype = cms.untracked.string('Ecal3P'),
53  btype = cms.untracked.string('ProjEta'),
54  description = cms.untracked.string('Projection of per-channel mean timing. Channels with entries less than ' + str(minChannelEntries) + ' are not considered.')
55  ),
56  FwdBkwdDiff = cms.untracked.PSet(
57  path = cms.untracked.string('%(subdet)s/%(prefix)sTimingTask/%(prefix)sTMT timing %(prefix)s+ - %(prefix)s-'),
58  kind = cms.untracked.string('TH1F'),
59  otype = cms.untracked.string('Ecal2P'),
60  xaxis = cms.untracked.PSet(
61  high = cms.untracked.double(5.0),
62  nbins = cms.untracked.int32(100),
63  low = cms.untracked.double(-5.0),
64  title = cms.untracked.string('time (ns)')
65  ),
66  btype = cms.untracked.string('User'),
67  description = cms.untracked.string('Forward-backward asymmetry of per-channel mean timing. Channels with entries less than ' + str(minChannelEntries) + ' are not considered.')
68  ),
69  FwdvBkwd = cms.untracked.PSet(
70  kind = cms.untracked.string('TH2F'),
71  yaxis = cms.untracked.PSet(
72  high = cms.untracked.double(timeWindow),
73  nbins = cms.untracked.int32(50),
74  low = cms.untracked.double(-timeWindow),
75  title = cms.untracked.string('time (ns)')
76  ),
77  otype = cms.untracked.string('Ecal2P'),
78  xaxis = cms.untracked.PSet(
79  high = cms.untracked.double(timeWindow),
80  nbins = cms.untracked.int32(50),
81  low = cms.untracked.double(-timeWindow)
82  ),
83  btype = cms.untracked.string('User'),
84  path = cms.untracked.string('%(subdet)s/%(prefix)sTimingTask/%(prefix)sTMT timing %(prefix)s+ vs %(prefix)s-'),
85  description = cms.untracked.string('Forward-backward correlation of per-channel mean timing. Channels with entries less than ' + str(minChannelEntries) + ' are not considered.')
86  ),
87  ProjPhi = cms.untracked.PSet(
88  path = cms.untracked.string('%(subdet)s/%(prefix)sTimingClient/%(prefix)sTMT timing projection phi%(suffix)s'),
89  kind = cms.untracked.string('TProfile'),
90  yaxis = cms.untracked.PSet(
91  title = cms.untracked.string('time (ns)')
92  ),
93  otype = cms.untracked.string('Ecal3P'),
94  btype = cms.untracked.string('ProjPhi'),
95  description = cms.untracked.string('Projection of per-channel mean timing. Channels with entries less than ' + str(minChannelEntries) + ' are not considered.')
96  ),
97  MeanSM = cms.untracked.PSet(
98  kind = cms.untracked.string('TH1F'),
99  yaxis = cms.untracked.PSet(
100  title = cms.untracked.string('time (ns)')
101  ),
102  otype = cms.untracked.string('SM'),
103  xaxis = cms.untracked.PSet(
104  high = cms.untracked.double(timeWindow),
105  nbins = cms.untracked.int32(100),
106  low = cms.untracked.double(-timeWindow)
107  ),
108  btype = cms.untracked.string('User'),
109  path = cms.untracked.string('%(subdet)s/%(prefix)sTimingClient/%(prefix)sTMT timing mean %(sm)s'),
110  description = cms.untracked.string('Distribution of per-channel timing mean. Channels with entries less than ' + str(minChannelEntries) + ' are not considered.')
111  ),
112  RMSMap = cms.untracked.PSet(
113  path = cms.untracked.string('%(subdet)s/%(prefix)sTimingClient/%(prefix)sTMT timing rms %(sm)s'),
114  kind = cms.untracked.string('TH2F'),
115  zaxis = cms.untracked.PSet(
116  title = cms.untracked.string('rms (ns)')
117  ),
118  otype = cms.untracked.string('SM'),
119  btype = cms.untracked.string('Crystal'),
120  description = cms.untracked.string('2D distribution of per-channel timing RMS. Channels with entries less than ' + str(minChannelEntries) + ' are not considered.')
121  ),
122  QualitySummary = cms.untracked.PSet(
123  path = cms.untracked.string('%(subdet)s/%(prefix)sSummaryClient/%(prefix)sTMT%(suffix)s timing quality summary'),
124  kind = cms.untracked.string('TH2F'),
125  otype = cms.untracked.string('Ecal3P'),
126  btype = cms.untracked.string('SuperCrystal'),
127  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(toleranceMean) + ' 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).')
128  ),
129  Quality = cms.untracked.PSet(
130  path = cms.untracked.string('%(subdet)s/%(prefix)sTimingClient/%(prefix)sTMT timing quality %(sm)s'),
131  kind = cms.untracked.string('TH2F'),
132  otype = cms.untracked.string('SM'),
133  btype = cms.untracked.string('Crystal'),
134  description = cms.untracked.string('Summary of the timing data quality. A channel is red if its mean timing is off by more than ' + str(toleranceMean) + ' or RMS is greater than ' + str(toleranceRMS) + '. Channels with entries less than ' + str(minChannelEntries) + ' are not considered.')
135  ),
136  MeanAll = cms.untracked.PSet(
137  path = cms.untracked.string('%(subdet)s/%(prefix)sSummaryClient/%(prefix)sTMT%(suffix)s timing mean 1D summary'),
138  kind = cms.untracked.string('TH1F'),
139  otype = cms.untracked.string('Ecal3P'),
140  xaxis = cms.untracked.PSet(
141  high = cms.untracked.double(timeWindow),
142  nbins = cms.untracked.int32(100),
143  low = cms.untracked.double(-timeWindow),
144  title = cms.untracked.string('time (ns)')
145  ),
146  btype = cms.untracked.string('User'),
147  description = cms.untracked.string('Distribution of per-channel timing mean. Channels with entries less than ' + str(minChannelEntries) + ' are not considered.')
148  ),
149  TrendMean = cms.untracked.PSet(
150  path = cms.untracked.string('Ecal/Trends/TimingClient %(prefix)s timing mean'),
151  kind = cms.untracked.string('TProfile'),
152  otype = cms.untracked.string('Ecal2P'),
153  btype = cms.untracked.string('Trend'),
154  description = cms.untracked.string('Trend of timing mean. Plots simple average of all channel timing means at each lumisection.')
155  ),
156  TrendRMS = cms.untracked.PSet(
157  path = cms.untracked.string('Ecal/Trends/TimingClient %(prefix)s timing rms'),
158  kind = cms.untracked.string('TProfile'),
159  otype = cms.untracked.string('Ecal2P'),
160  btype = cms.untracked.string('Trend'),
161  description = cms.untracked.string('Trend of timing rms. Plots simple average of all channel timing rms at each lumisection.')
162  )
163  )
164 )
165