1 import FWCore.ParameterSet.Config
as cms
5 EaxisEdges.append(
pow(10., -0.5 + 2.5 / 50. * i))
10 energyThresholdEB = 1.
12 summaryTimeWindow = 7.
14 ecalTimingTask = cms.untracked.PSet(
15 params = cms.untracked.PSet(
16 chi2ThresholdEE = cms.untracked.double(chi2ThresholdEE),
17 chi2ThresholdEB = cms.untracked.double(chi2ThresholdEB),
18 energyThresholdEE = cms.untracked.double(energyThresholdEE),
19 energyThresholdEB = cms.untracked.double(energyThresholdEB)
21 MEs = cms.untracked.PSet(
22 TimeMap = cms.untracked.PSet(
23 path = cms.untracked.string(
'%(subdet)s/%(prefix)sTimingTask/%(prefix)sTMT timing %(sm)s'),
24 kind = cms.untracked.string(
'TProfile2D'),
25 zaxis = cms.untracked.PSet(
26 high = cms.untracked.double(timeWindow),
27 low = cms.untracked.double(-timeWindow),
28 title = cms.untracked.string(
'time (ns)')
30 otype = cms.untracked.string(
'SM'),
31 btype = cms.untracked.string(
'Crystal'),
32 description = cms.untracked.string(
'2D distribution of the mean rec hit timing. Only hits with GOOD or OUT_OF_TIME reconstruction flags and energy above threshold are used. Hits with |t| > ' + str(timeWindow) +
' ns are discarded. The energy thresholds are ' + (
'%f and %f' % (energyThresholdEB, energyThresholdEE)) +
' for EB and EE respectively.')
34 TimeMapByLS = cms.untracked.PSet(
35 path = cms.untracked.string(
'%(subdet)s/%(prefix)sTimingTask/%(prefix)sTMT timing by LS %(sm)s'),
36 kind = cms.untracked.string(
'TProfile2D'),
37 zaxis = cms.untracked.PSet(
38 high = cms.untracked.double(timeWindow),
39 low = cms.untracked.double(-timeWindow),
40 title = cms.untracked.string(
'time (ns)')
42 otype = cms.untracked.string(
'SM'),
43 btype = cms.untracked.string(
'Crystal'),
44 description = cms.untracked.string(
'2D distribution of the mean rec hit timing. Only hits with GOOD or OUT_OF_TIME reconstruction flags and energy above threshold are used. Hits with |t| > ' + str(timeWindow) +
' ns are discarded. The energy thresholds are ' + (
'%f and %f' % (energyThresholdEB, energyThresholdEE)) +
' for EB and EE respectively.')
46 TimeAll = cms.untracked.PSet(
47 path = cms.untracked.string(
'%(subdet)s/%(prefix)sTimingTask/%(prefix)sTMT timing 1D summary%(suffix)s'),
48 kind = cms.untracked.string(
'TH1F'),
49 otype = cms.untracked.string(
'Ecal3P'),
50 xaxis = cms.untracked.PSet(
51 high = cms.untracked.double(timeWindow),
52 nbins = cms.untracked.int32(100),
53 low = cms.untracked.double(-timeWindow),
54 title = cms.untracked.string(
'time (ns)')
56 btype = cms.untracked.string(
'User'),
57 description = cms.untracked.string(
'Distribution of the mean rec hit timing. Only hits with GOOD or OUT_OF_TIME reconstruction flags and energy above threshold are used. The energy thresholds are ' + (
'%f and %f' % (energyThresholdEB, energyThresholdEE)) +
' for EB and EE respectively.')
59 TimeAllMap = cms.untracked.PSet(
60 path = cms.untracked.string(
'%(subdet)s/%(prefix)sTimingTask/%(prefix)sTMT timing map%(suffix)s'),
61 kind = cms.untracked.string(
'TProfile2D'),
62 zaxis = cms.untracked.PSet(
63 high = cms.untracked.double(summaryTimeWindow),
64 low = cms.untracked.double(-summaryTimeWindow),
65 title = cms.untracked.string(
'time (ns)')
67 otype = cms.untracked.string(
'Ecal3P'),
68 btype = cms.untracked.string(
'SuperCrystal'),
69 description = cms.untracked.string(
'2D distribution of the mean rec hit timing. Only hits with GOOD or OUT_OF_TIME reconstruction flags and energy above threshold are used. Hits with |t| > ' + str(summaryTimeWindow) +
' ns are discarded. The energy thresholds are ' + (
'%f and %f' % (energyThresholdEB, energyThresholdEE)) +
' for EB and EE respectively.')
71 TimeAmpAll = cms.untracked.PSet(
72 kind = cms.untracked.string(
'TH2F'),
73 yaxis = cms.untracked.PSet(
74 high = cms.untracked.double(50.0),
75 nbins = cms.untracked.int32(200),
76 low = cms.untracked.double(-50.0),
77 title = cms.untracked.string(
'time (ns)')
79 otype = cms.untracked.string(
'Ecal3P'),
80 xaxis = cms.untracked.PSet(
81 edges = cms.untracked.vdouble(EaxisEdges),
82 title = cms.untracked.string(
'energy (GeV)')
84 btype = cms.untracked.string(
'User'),
85 path = cms.untracked.string(
'%(subdet)s/%(prefix)sTimingTask/%(prefix)sTMT timing vs amplitude summary%(suffix)s'),
86 description = cms.untracked.string(
'Correlation between hit timing and energy. Only hits with GOOD or OUT_OF_TIME reconstruction flags are used.')
88 TimeAmp = cms.untracked.PSet(
89 kind = cms.untracked.string(
'TH2F'),
90 yaxis = cms.untracked.PSet(
91 high = cms.untracked.double(50.0),
92 nbins = cms.untracked.int32(200),
93 low = cms.untracked.double(-50.0),
94 title = cms.untracked.string(
'time (ns)')
96 otype = cms.untracked.string(
'SM'),
97 xaxis = cms.untracked.PSet(
98 edges = cms.untracked.vdouble(EaxisEdges),
99 title = cms.untracked.string(
'energy (GeV)')
101 btype = cms.untracked.string(
'User'),
102 path = cms.untracked.string(
'%(subdet)s/%(prefix)sTimingTask/%(prefix)sTMT timing vs amplitude %(sm)s'),
103 description = cms.untracked.string(
'Correlation between hit timing and energy. Only hits with GOOD or OUT_OF_TIME reconstruction flags are used.')
105 TimeAmpBXm = cms.untracked.PSet(
106 kind = cms.untracked.string(
'TH2F'),
107 yaxis = cms.untracked.PSet(
108 high = cms.untracked.double(100.0),
109 nbins = cms.untracked.int32(100),
110 low = cms.untracked.double(0.0),
111 title = cms.untracked.string(
'Amplitude BX-1 [ADC]')
113 otype = cms.untracked.string(
'Ecal3P'),
114 xaxis = cms.untracked.PSet(
115 high = cms.untracked.double(1000.0),
116 nbins = cms.untracked.int32(250),
117 low = cms.untracked.double(0.0),
118 title = cms.untracked.string(
'In-time amplitude [ADC]')
120 btype = cms.untracked.string(
'User'),
121 path = cms.untracked.string(
'%(subdet)s/%(prefix)sTimingTask/%(prefix)sTMT in-time vs BX-1 amplitude%(suffix)s'),
122 description = cms.untracked.string(
'Correlation between in-time amplitude and BX-1 out-of-time amplitude. Only events with kGood reconstruction flag set, energy > ( ' + (
'EB:%f, EE:%f' % (energyThresholdEB*20., energyThresholdEE*5.)) +
' ) GeV, and chi2 < ( ' + (
'EB:%f, EE:%f' % (chi2ThresholdEB, chi2ThresholdEE)) +
' ) are used.')
124 TimeAmpBXp = cms.untracked.PSet(
125 kind = cms.untracked.string(
'TH2F'),
126 yaxis = cms.untracked.PSet(
127 high = cms.untracked.double(100.0),
128 nbins = cms.untracked.int32(100),
129 low = cms.untracked.double(0.0),
130 title = cms.untracked.string(
'Amplitude BX+1 [ADC]')
132 otype = cms.untracked.string(
'Ecal3P'),
133 xaxis = cms.untracked.PSet(
134 high = cms.untracked.double(1000.0),
135 nbins = cms.untracked.int32(250),
136 low = cms.untracked.double(0.0),
137 title = cms.untracked.string(
'In-time amplitude [ADC]')
139 btype = cms.untracked.string(
'User'),
140 path = cms.untracked.string(
'%(subdet)s/%(prefix)sTimingTask/%(prefix)sTMT in-time vs BX+1 amplitude%(suffix)s'),
141 description = cms.untracked.string(
'Correlation between in-time amplitude and BX+1 out-of-time amplitude. Only events with kGood reconstruction flag set, energy > ( ' + (
'EB:%f, EE:%f' % (energyThresholdEB*20., energyThresholdEE*5.)) +
' ) GeV, and chi2 < ( ' + (
'EB:%f, EE:%f' % (chi2ThresholdEB, chi2ThresholdEE)) +
' ) are used.')
143 Time1D = cms.untracked.PSet(
144 path = cms.untracked.string(
'%(subdet)s/%(prefix)sTimingTask/%(prefix)sTMT timing 1D %(sm)s'),
145 kind = cms.untracked.string(
'TH1F'),
146 otype = cms.untracked.string(
'SM'),
147 xaxis = cms.untracked.PSet(
148 high = cms.untracked.double(timeWindow),
149 nbins = cms.untracked.int32(100),
150 low = cms.untracked.double(-timeWindow),
151 title = cms.untracked.string(
'time (ns)')
153 btype = cms.untracked.string(
'User'),
154 description = cms.untracked.string(
'Distribution of the mean rec hit timing. Only hits with GOOD or OUT_OF_TIME reconstruction flags and energy above threshold are used. The energy thresholds are ' + (
'%f and %f' % (energyThresholdEB, energyThresholdEE)) +
' for EB and EE respectively.')
156 Chi2 = cms.untracked.PSet(
157 path = cms.untracked.string(
"%(subdet)s/%(prefix)sTimingTask/%(prefix)sTMT %(subdetshortsig)s Chi2"),
158 kind = cms.untracked.string(
'TH1F'),
159 otype = cms.untracked.string(
'Ecal3P'),
160 btype = cms.untracked.string(
'User'),
161 xaxis = cms.untracked.PSet(
162 high = cms.untracked.double(100.),
163 low = cms.untracked.double(0.),
164 nbins = cms.untracked.int32(100)
166 description = cms.untracked.string(
'Chi2 of the pulse reconstruction.')
Power< A, B >::type pow(const A &a, const B &b)