CMS 3D CMS Logo

hcalSimParameters_cfi.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 # This object modifies hcalSimParameters for different scenarios
4 
5 hcalSimParameters = cms.PSet(
6  # In HF, the SimHits energy is actually
7  # the number of photoelectrons from the shower
8  # library. However, we need a lot more
9  # smearing, because the first level of the PMT
10  # only gives ~6 electrons per pe, which
11  # comes out to a 40% smearing of the single pe peak!
12  #
13  hf1 = cms.PSet(
14  readoutFrameSize = cms.int32(4),
15  binOfMaximum = cms.int32(3),
16  samplingFactor = cms.double(0.383),
17  doPhotoStatistics = cms.bool(True),
18  photoelectronsToAnalog = cms.double(2.79),
19  simHitToPhotoelectrons = cms.double(6.0),
20  syncPhase = cms.bool(True),
21  timePhase = cms.double(14.0),
22  doSiPMSmearing = cms.bool(False),
23  sipmTau = cms.double(0.),
24  ),
25  hf2 = cms.PSet(
26  readoutFrameSize = cms.int32(4),
27  binOfMaximum = cms.int32(3),
28  samplingFactor = cms.double(0.368),
29  doPhotoStatistics = cms.bool(True),
30  photoelectronsToAnalog = cms.double(1.843),
31  simHitToPhotoelectrons = cms.double(6.0),
32  syncPhase = cms.bool(True),
33  timePhase = cms.double(13.0),
34  doSiPMSmearing = cms.bool(False),
35  sipmTau = cms.double(0.),
36  ),
37  ho = cms.PSet(
38  readoutFrameSize = cms.int32(10),
39  firstRing = cms.int32(1),
40  binOfMaximum = cms.int32(5),
41  doPhotoStatistics = cms.bool(True),
42  simHitToPhotoelectrons = cms.double(4000.0), # is not actually used
43  samplingFactors = cms.vdouble(231.0, 231.0, 231.0, 231.0,
44  360.0, 360.0, 360.0, 360.0, 360.0, 360.0,
45  360.0, 360.0, 360.0, 360.0, 360.0),
46  syncPhase = cms.bool(True),
47  timePhase = cms.double(5.0),
48  timeSmearing = cms.bool(False),
49  # 0 is HPD, 1 is SiPM, 2 fetches HPD/Zecotek/Hamamatsu from DB
50  siPMCode = cms.int32(2),
51  doSiPMSmearing = cms.bool(False),
52  sipmTau = cms.double(5.),
53  ),
54  hb = cms.PSet(
55  readoutFrameSize = cms.int32(10),
56  firstRing = cms.int32(1),
57  binOfMaximum = cms.int32(5),
58  doPhotoStatistics = cms.bool(True),
59  simHitToPhotoelectrons = cms.double(2000.0),
60  samplingFactors = cms.vdouble(
61  125.44, 125.54, 125.32, 125.13, 124.46,
62  125.01, 125.22, 125.48, 124.45, 125.90,
63  125.83, 127.01, 126.82, 129.73, 131.83,
64  143.52),
65  syncPhase = cms.bool(True),
66  timePhase = cms.double(6.0),
67  timeSmearing = cms.bool(True),
68  doSiPMSmearing = cms.bool(False),
69  sipmTau = cms.double(0.),
70  ),
71  he = cms.PSet(
72  readoutFrameSize = cms.int32(10),
73  firstRing = cms.int32(16),
74  binOfMaximum = cms.int32(5),
75  doPhotoStatistics = cms.bool(True),
76  simHitToPhotoelectrons = cms.double(2000.0),
77  samplingFactors = cms.vdouble(
78  210.55, 197.93, 186.12, 189.64, 189.63,
79  190.28, 189.61, 189.60, 190.12, 191.22,
80  190.90, 193.06, 188.42, 188.42),
81  syncPhase = cms.bool(True),
82  timePhase = cms.double(6.0),
83  timeSmearing = cms.bool(True),
84  doSiPMSmearing = cms.bool(False),
85  sipmTau = cms.double(0.),
86  ),
87  zdc = cms.PSet(
88  readoutFrameSize = cms.int32(10),
89  binOfMaximum = cms.int32(5),
90  samplingFactor = cms.double(1.000),
91  doPhotoStatistics = cms.bool(True),
92  photoelectronsToAnalog = cms.double(1.843),
93  simHitToPhotoelectrons = cms.double(6.0),
94  syncPhase = cms.bool(True),
95  timePhase = cms.double(-4.0),
96  doSiPMSmearing = cms.bool(False),
97  sipmTau = cms.double(0.),
98  ),
99 )
100 
101 hcalSimParameters.hoZecotek = hcalSimParameters.ho.clone()
102 
103 hcalSimParameters.hoHamamatsu = hcalSimParameters.ho.clone()
104 
105 # Customises the HCal digitiser for post LS1 running
106 from Configuration.Eras.Modifier_run2_common_cff import run2_common
107 run2_common.toModify( hcalSimParameters,
108  ho = dict(
109  siPMCode = cms.int32(1)
110  ),
111  hf1 = dict( samplingFactor = cms.double(0.335) ),
112  hf2 = dict( samplingFactor = cms.double(0.335) )
113 )
114 
115 from Configuration.Eras.Modifier_run2_HE_2017_cff import run2_HE_2017
116 run2_HE_2017.toModify( hcalSimParameters,
117  he = dict(
118  doSiPMSmearing = cms.bool(True),
119  sipmTau = cms.double(10.),
120  )
121 )
122 
123 from Configuration.Eras.Modifier_run2_HF_2017_cff import run2_HF_2017
124 run2_HF_2017.toModify( hcalSimParameters,
125  hf1 = dict(
126  readoutFrameSize = cms.int32(3),
127  binOfMaximum = cms.int32(2)
128  ),
129  hf2 = dict(
130  readoutFrameSize = cms.int32(3),
131  binOfMaximum = cms.int32(2)
132  )
133 )
134 
135 from Configuration.Eras.Modifier_run2_HB_2018_cff import run2_HB_2018
136 run2_HB_2018.toModify( hcalSimParameters,
137  hb = dict(
138  readoutFrameSize = cms.int32(8),
139  binOfMaximum = cms.int32(4)
140  )
141 )
142 from Configuration.Eras.Modifier_run2_HE_2018_cff import run2_HE_2018
143 run2_HE_2018.toModify( hcalSimParameters,
144  he = dict(
145  readoutFrameSize = cms.int32(8),
146  binOfMaximum = cms.int32(4)
147  )
148 )
149 
150 
151 from Configuration.Eras.Modifier_run3_HB_cff import run3_HB
152 run3_HB.toModify( hcalSimParameters,
153  hb = dict(
154  doSiPMSmearing = cms.bool(True),
155  sipmTau = cms.double(10.),
156  )
157 )
158 
159 _newFactors = cms.vdouble(
160  210.55, 197.93, 186.12, 189.64, 189.63,
161  189.96, 190.03, 190.11, 190.18, 190.25,
162  190.32, 190.40, 190.47, 190.54, 190.61,
163  190.69, 190.83, 190.94, 190.94, 190.94,
164  190.94, 190.94, 190.94, 190.94, 190.94,
165  190.94, 190.94, 190.94, 190.94, 190.94,
166  190.94, 190.94, 190.94, 190.94, 190.94,
167  190.94, 190.94, 190.94, 190.94, 190.94,
168  190.94, 190.94, 190.94, 190.94, 190.94,
169  190.94, 190.94, 190.94, 190.94, 190.94,
170  190.94, 190.94, 190.94, 190.94, 190.94,
171  190.94, 190.94, 190.94, 190.94, 190.94,
172  190.94, 190.94, 190.94, 190.94, 190.94,
173  190.94, 190.94, 190.94, 190.94, 190.94,
174  190.94, 190.94, 190.94, 190.94, 190.94,
175  190.94, 190.94, 190.94, 190.94, 190.94,
176  190.94, 190.94, 190.94, 190.94, 190.94 )
177 
178 from Configuration.Eras.Modifier_phase2_hcal_cff import phase2_hcal
179 phase2_hcal.toModify( hcalSimParameters,
180  he = dict(
181  samplingFactors = _newFactors,
182  )
183 )