1 import FWCore.ParameterSet.Config
as cms
3 PixelDigitizerAlgorithmCommon = cms.PSet(
4 ElectronPerAdc = cms.double(1500.0),
5 ReadoutNoiseInElec = cms.double(0.0),
6 ThresholdInElectrons_Barrel = cms.double(1000.0),
7 ThresholdInElectrons_Endcap = cms.double(1000.0),
8 AddThresholdSmearing = cms.bool(
False),
9 ThresholdSmearing_Barrel = cms.double(0.0),
10 ThresholdSmearing_Endcap = cms.double(0.0),
11 HIPThresholdInElectrons_Barrel = cms.double(1.0e10),
12 HIPThresholdInElectrons_Endcap = cms.double(1.0e10),
13 NoiseInElectrons = cms.double(0.0),
14 Phase2ReadoutMode = cms.int32(3),
15 AdcFullScale = cms.int32(15),
16 TofUpperCut = cms.double(12.5),
17 TofLowerCut = cms.double(-12.5),
18 AddNoisyPixels = cms.bool(
False),
19 Alpha2Order = cms.bool(
True),
20 AddNoise = cms.bool(
False),
21 AddXTalk = cms.bool(
False),
22 InterstripCoupling = cms.double(0.0),
23 Odd_row_interchannelCoupling_next_row = cms.double(0.20),
24 Even_row_interchannelCoupling_next_row = cms.double(0.0),
25 Odd_column_interchannelCoupling_next_column = cms.double(0.0),
26 Even_column_interchannelCoupling_next_column = cms.double(0.0),
27 SigmaZero = cms.double(0.00037),
28 SigmaCoeff = cms.double(0),
29 ClusterWidth = cms.double(3),
30 LorentzAngle_DB = cms.bool(
True),
31 TanLorentzAnglePerTesla_Endcap = cms.double(0.106),
32 TanLorentzAnglePerTesla_Barrel = cms.double(0.106),
33 KillModules = cms.bool(
False),
34 DeadModules_DB = cms.bool(
False),
35 DeadModules = cms.VPSet(),
36 AddInefficiency = cms.bool(
False),
37 Inefficiency_DB = cms.bool(
False),
38 EfficiencyFactors_Barrel = cms.vdouble(0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999 ),
39 EfficiencyFactors_Endcap = cms.vdouble(0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999,
41 CellsToKill = cms.VPSet(),
42 ApplyTimewalk = cms.bool(
False),
43 TimewalkModel = cms.PSet(
44 ThresholdValues = cms.vdouble(1000, 1200, 1500, 3000),
47 charge = cms.vdouble(1000, 1025, 1050, 1100, 1200, 1500, 2000, 6000, 10000, 15000, 20000, 30000),
48 delay = cms.vdouble(26.8, 23.73, 21.92, 19.46, 16.52, 12.15, 8.88, 3.03, 1.69, 0.95, 0.56, 0.19)
51 charge = cms.vdouble(1200, 1225, 1250, 1500, 2000, 6000, 10000, 15000, 20000, 30000),
52 delay = cms.vdouble(26.28, 23.5, 21.79, 14.92, 10.27, 3.33, 1.86, 1.07, 0.66, 0.27)
55 charge = cms.vdouble(1500, 1525, 1550, 1600, 2000, 6000, 10000, 15000, 20000, 30000),
56 delay = cms.vdouble(25.36, 23.05, 21.6, 19.56, 12.94, 3.79, 2.14, 1.26, 0.81, 0.39)
59 charge = cms.vdouble(3000, 3025, 3050, 3100, 3500, 6000, 10000, 15000, 20000, 30000),
60 delay = cms.vdouble(25.63, 23.63, 22.35, 20.65, 14.92, 6.7, 3.68, 2.29, 1.62, 1.02)
65 phase2TrackerDigitizer = cms.PSet(
67 accumulatorType = cms.string(
"Phase2TrackerDigitizer"),
68 hitsProducer = cms.string(
'g4SimHits'),
69 ROUList = cms.vstring(
70 'TrackerHitsPixelBarrelLowTof',
71 'TrackerHitsPixelBarrelHighTof',
72 'TrackerHitsPixelEndcapLowTof',
73 'TrackerHitsPixelEndcapHighTof'),
74 GeometryType = cms.string(
'idealForDigi'),
75 isOTreadoutAnalog = cms.bool(
False),
77 premixStage1 = cms.bool(
False),
78 AlgorithmCommon = cms.PSet(
79 DeltaProductionCut = cms.double(0.03),
80 makeDigiSimLinks = cms.untracked.bool(
True),
84 PixelDigitizerAlgorithm = PixelDigitizerAlgorithmCommon.clone(),
86 Pixel3DDigitizerAlgorithm = PixelDigitizerAlgorithmCommon.clone(
87 SigmaCoeff = cms.double(1.80),
88 NPColumnRadius = cms.double(4.0),
89 OhmicColumnRadius = cms.double(4.0),
90 NPColumnGap = cms.double(46.0)
93 PixelBrickedDigitizerAlgorithm = PixelDigitizerAlgorithmCommon.clone(),
95 PSPDigitizerAlgorithm = cms.PSet(
96 ElectronPerAdc = cms.double(135.0),
97 ReadoutNoiseInElec = cms.double(200.0),
98 ThresholdInElectrons_Barrel = cms.double(6300.),
99 ThresholdInElectrons_Endcap = cms.double(6300.),
100 AddThresholdSmearing = cms.bool(
True),
101 ThresholdSmearing_Barrel = cms.double(630.0),
102 ThresholdSmearing_Endcap = cms.double(630.0),
103 HIPThresholdInElectrons_Barrel = cms.double(1.0e10),
104 HIPThresholdInElectrons_Endcap = cms.double(1.0e10),
105 NoiseInElectrons = cms.double(200),
106 Phase2ReadoutMode = cms.int32(0),
107 AdcFullScale = cms.int32(255),
108 TofUpperCut = cms.double(12.5),
109 TofLowerCut = cms.double(-12.5),
110 AddNoisyPixels = cms.bool(
True),
111 Alpha2Order = cms.bool(
True),
112 AddNoise = cms.bool(
True),
113 AddXTalk = cms.bool(
True),
114 InterstripCoupling = cms.double(0.05),
115 SigmaZero = cms.double(0.00037),
116 SigmaCoeff = cms.double(1.80),
117 ClusterWidth = cms.double(3),
118 LorentzAngle_DB = cms.bool(
True),
119 TanLorentzAnglePerTesla_Endcap = cms.double(0.07),
120 TanLorentzAnglePerTesla_Barrel = cms.double(0.07),
121 KillModules = cms.bool(
False),
122 DeadModules_DB = cms.bool(
False),
123 DeadModules = cms.VPSet(),
124 AddInefficiency = cms.bool(
False),
125 Inefficiency_DB = cms.bool(
False),
126 EfficiencyFactors_Barrel = cms.vdouble(0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999 ),
127 EfficiencyFactors_Endcap = cms.vdouble(0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999,
129 CellsToKill = cms.VPSet(),
130 AddBiasRailInefficiency= cms.bool(
False)
133 PSSDigitizerAlgorithm = cms.PSet(
134 ElectronPerAdc = cms.double(135.0),
136 ReadoutNoiseInElec = cms.double(700.0),
137 ThresholdInElectrons_Barrel = cms.double(6300.),
138 ThresholdInElectrons_Endcap = cms.double(6300.),
139 AddThresholdSmearing = cms.bool(
True),
140 ThresholdSmearing_Barrel = cms.double(630.0),
141 ThresholdSmearing_Endcap = cms.double(630.0),
142 HIPThresholdInElectrons_Barrel = cms.double(21000.),
143 HIPThresholdInElectrons_Endcap = cms.double(21000.),
144 NoiseInElectrons = cms.double(700),
145 Phase2ReadoutMode = cms.int32(0),
146 AdcFullScale = cms.int32(255),
147 TofUpperCut = cms.double(12.5),
148 TofLowerCut = cms.double(-12.5),
149 AddNoisyPixels = cms.bool(
True),
150 Alpha2Order = cms.bool(
True),
151 AddNoise = cms.bool(
True),
152 AddXTalk = cms.bool(
True),
153 InterstripCoupling = cms.double(0.05),
154 SigmaZero = cms.double(0.00037),
155 SigmaCoeff = cms.double(1.80),
156 ClusterWidth = cms.double(3),
157 LorentzAngle_DB = cms.bool(
True),
158 TanLorentzAnglePerTesla_Endcap = cms.double(0.07),
159 TanLorentzAnglePerTesla_Barrel = cms.double(0.07),
160 KillModules = cms.bool(
False),
161 DeadModules_DB = cms.bool(
False),
162 DeadModules = cms.VPSet(),
163 AddInefficiency = cms.bool(
False),
164 Inefficiency_DB = cms.bool(
False),
165 EfficiencyFactors_Barrel = cms.vdouble(0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999 ),
166 EfficiencyFactors_Endcap = cms.vdouble(0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999,
168 CellsToKill = cms.VPSet()
171 SSDigitizerAlgorithm = cms.PSet(
172 ElectronPerAdc = cms.double(135.0),
174 ReadoutNoiseInElec = cms.double(1000.0),
175 ThresholdInElectrons_Barrel = cms.double(5800.),
176 ThresholdInElectrons_Endcap = cms.double(5800.),
177 AddThresholdSmearing = cms.bool(
True),
178 ThresholdSmearing_Barrel = cms.double(580.0),
179 ThresholdSmearing_Endcap = cms.double(580.0),
180 HIPThresholdInElectrons_Barrel = cms.double(1.0e10),
181 HIPThresholdInElectrons_Endcap = cms.double(1.0e10),
182 NoiseInElectrons = cms.double(1000),
183 Phase2ReadoutMode = cms.int32(0),
184 AdcFullScale = cms.int32(255),
185 TofUpperCut = cms.double(12.5),
186 TofLowerCut = cms.double(-12.5),
187 AddNoisyPixels = cms.bool(
True),
188 Alpha2Order = cms.bool(
True),
189 AddNoise = cms.bool(
True),
190 AddXTalk = cms.bool(
True),
191 InterstripCoupling = cms.double(0.05),
192 SigmaZero = cms.double(0.00037),
193 SigmaCoeff = cms.double(1.80),
194 ClusterWidth = cms.double(3),
195 LorentzAngle_DB = cms.bool(
True),
196 TanLorentzAnglePerTesla_Endcap = cms.double(0.07),
197 TanLorentzAnglePerTesla_Barrel = cms.double(0.07),
198 KillModules = cms.bool(
False),
199 DeadModules_DB = cms.bool(
False),
200 DeadModules = cms.VPSet(),
201 AddInefficiency = cms.bool(
False),
202 Inefficiency_DB = cms.bool(
False),
203 EfficiencyFactors_Barrel = cms.vdouble(0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999 ),
204 EfficiencyFactors_Endcap = cms.vdouble(0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999, 0.999,
206 CellsToKill = cms.VPSet(),
207 HitDetectionMode = cms.int32(0),
208 PulseShapeParameters = cms.vdouble(-3.0, 16.043703, 99.999857, 40.571650, 2.0, 1.2459094),
209 CBCDeadTime = cms.double(0.0)
223 from Configuration.ProcessModifiers.premix_stage1_cff
import premix_stage1
224 _premixStage1ModifyDict = dict(
226 PixelDigitizerAlgorithm = dict(
227 AddNoisyPixels =
False,
228 AddInefficiency =
False,
229 AddThresholdSmearing =
False,
231 Pixel3DDigitizerAlgorithm = dict(
232 AddNoisyPixels =
False,
233 AddInefficiency =
False,
234 AddThresholdSmearing =
False,
236 PSPDigitizerAlgorithm = dict(
237 AddNoisyPixels =
False,
238 AddInefficiency =
False,
239 AddThresholdSmearing =
False,
241 PSSDigitizerAlgorithm = dict(
242 AddNoisyPixels =
False,
243 AddInefficiency =
False,
244 AddThresholdSmearing =
False,
245 Phase2ReadoutMode = -1
247 SSDigitizerAlgorithm = dict(
248 AddNoisyPixels =
False,
249 AddInefficiency =
False,
250 AddThresholdSmearing =
False,
254 premix_stage1.toModify(phase2TrackerDigitizer, **_premixStage1ModifyDict)
256 from Configuration.ProcessModifiers.enableXTalkInPhase2Pixel_cff
import enableXTalkInPhase2Pixel
257 _enableXTalkInPhase2PixelModifyDict = dict(
258 PixelDigitizerAlgorithm = dict(
260 Odd_row_interchannelCoupling_next_row = 0.00,
261 Even_row_interchannelCoupling_next_row = 0.06
265 enableXTalkInPhase2Pixel.toModify(phase2TrackerDigitizer, **_enableXTalkInPhase2PixelModifyDict)