1 import FWCore.ParameterSet.Config
as cms
6 from Configuration.StandardSequences.Eras
import eras
10 Function that modifies the pixel digitiser for Run 2 with 25ns bunchspacing.
11 First argument is the pixelDigitizer object.
14 digitizer.theInstLumiScaleFactor = cms.double(364)
15 digitizer.theLadderEfficiency_BPix1 = cms.vdouble( [1]*20 )
16 digitizer.theLadderEfficiency_BPix2 = cms.vdouble( [1]*32 )
17 digitizer.theLadderEfficiency_BPix3 = cms.vdouble( [1]*44 )
18 digitizer.theModuleEfficiency_BPix1 = cms.vdouble( 1, 1, 1, 1, )
19 digitizer.theModuleEfficiency_BPix2 = cms.vdouble( 1, 1, 1, 1, )
20 digitizer.theModuleEfficiency_BPix3 = cms.vdouble( 1, 1, 1, 1 )
21 digitizer.thePUEfficiency_BPix1 = cms.vdouble( 1.00023, -3.18350e-06, 5.08503e-10, -6.79785e-14 )
22 digitizer.thePUEfficiency_BPix2 = cms.vdouble( 9.99974e-01, -8.91313e-07, 5.29196e-12, -2.28725e-15 )
23 digitizer.thePUEfficiency_BPix3 = cms.vdouble( 1.00005, -6.59249e-07, 2.75277e-11, -1.62683e-15 )
27 Function that modifies the pixel digitiser for Run 2 with 50ns bunchspacing.
29 First argument is the pixelDigitizer object.
32 digitizer.theInstLumiScaleFactor = cms.double(246.4)
33 digitizer.theLadderEfficiency_BPix1 = cms.vdouble( [0.979259,0.976677]*10 )
34 digitizer.theLadderEfficiency_BPix2 = cms.vdouble( [0.994321,0.993944]*16 )
35 digitizer.theLadderEfficiency_BPix3 = cms.vdouble( [0.996787,0.996945]*22 )
39 Function that modifies the pixel digitiser for the Phase 1 pixel detector.
41 First argument is the pixelDigitizer object.
43 digitizer.MissCalibrate =
False
44 digitizer.LorentzAngle_DB =
False
45 digitizer.killModules =
False
46 digitizer.useDB =
False
47 digitizer.DeadModules_DB =
False
48 digitizer.NumPixelBarrel = cms.int32(4)
49 digitizer.NumPixelEndcap = cms.int32(3)
50 digitizer.ThresholdInElectrons_FPix = cms.double(2000.0)
51 digitizer.ThresholdInElectrons_BPix = cms.double(2000.0)
52 digitizer.ThresholdInElectrons_BPix_L1 = cms.double(2000.0)
53 digitizer.thePixelColEfficiency_BPix1 = cms.double(0.999)
54 digitizer.thePixelColEfficiency_BPix2 = cms.double(0.999)
55 digitizer.thePixelColEfficiency_BPix3 = cms.double(0.999)
56 digitizer.thePixelColEfficiency_BPix4 = cms.double(0.999)
57 digitizer.thePixelEfficiency_BPix1 = cms.double(0.999)
58 digitizer.thePixelEfficiency_BPix2 = cms.double(0.999)
59 digitizer.thePixelEfficiency_BPix3 = cms.double(0.999)
60 digitizer.thePixelEfficiency_BPix4 = cms.double(0.999)
61 digitizer.thePixelChipEfficiency_BPix1 = cms.double(0.999)
62 digitizer.thePixelChipEfficiency_BPix2 = cms.double(0.999)
63 digitizer.thePixelChipEfficiency_BPix3 = cms.double(0.999)
64 digitizer.thePixelChipEfficiency_BPix4 = cms.double(0.999)
65 digitizer.thePixelColEfficiency_FPix1 = cms.double(0.999)
66 digitizer.thePixelColEfficiency_FPix2 = cms.double(0.999)
67 digitizer.thePixelColEfficiency_FPix3 = cms.double(0.999)
68 digitizer.thePixelEfficiency_FPix1 = cms.double(0.999)
69 digitizer.thePixelEfficiency_FPix2 = cms.double(0.999)
70 digitizer.thePixelEfficiency_FPix3 = cms.double(0.999)
71 digitizer.thePixelChipEfficiency_FPix1 = cms.double(0.999)
72 digitizer.thePixelChipEfficiency_FPix2 = cms.double(0.999)
73 digitizer.thePixelChipEfficiency_FPix3 = cms.double(0.999)
75 digitizer.AddPixelInefficiency = cms.bool(
False)
79 Function that checks if there is pileup being used then modifies the
80 pixel digitiser for the Phase 1 pixel detector accordingly.
82 First argument is the "process" object. This function can only be applied
83 with a <era>.makeProcessModifier() command, since it can only be applied
84 at the end because the number of pileup interactions is not known yet.
86 if hasattr(processObject,
'mix'):
88 if hasattr(processObject.mix,
'input'):
89 n=processObject.mix.input.nbPileupEvents.averageNumber.value()
91 processObject.mix.digitizers.pixel.thePixelColEfficiency_BPix1 = cms.double(1.0-(0.0238*n/50.0))
92 processObject.mix.digitizers.pixel.thePixelColEfficiency_BPix2 = cms.double(1.0-(0.0046*n/50.0))
93 processObject.mix.digitizers.pixel.thePixelColEfficiency_BPix3 = cms.double(1.0-(0.0018*n/50.0))
94 processObject.mix.digitizers.pixel.thePixelColEfficiency_BPix4 = cms.double(1.0-(0.0008*n/50.0))
95 processObject.mix.digitizers.pixel.thePixelColEfficiency_FPix1 = cms.double(1.0-(0.0018*n/50.0))
96 processObject.mix.digitizers.pixel.thePixelColEfficiency_FPix2 = cms.double(1.0-(0.0018*n/50.0))
97 processObject.mix.digitizers.pixel.thePixelColEfficiency_FPix3 = cms.double(1.0-(0.0018*n/50.0))
100 SiPixelSimBlock = cms.PSet(
101 DoPixelAging = cms.bool(
False),
102 ReadoutNoiseInElec = cms.double(350.0),
103 deltaProductionCut = cms.double(0.03),
104 RoutList = cms.vstring(
105 'TrackerHitsPixelBarrelLowTof',
106 'TrackerHitsPixelBarrelHighTof',
107 'TrackerHitsPixelEndcapLowTof',
108 'TrackerHitsPixelEndcapHighTof'),
109 OffsetSmearing = cms.double(0.0),
110 ThresholdInElectrons_FPix = cms.double(3000.0),
111 ThresholdInElectrons_BPix = cms.double(3500.0),
112 ThresholdInElectrons_BPix_L1 = cms.double(3500.0),
113 AddThresholdSmearing = cms.bool(
True),
114 ThresholdSmearing_FPix = cms.double(210.0),
115 ThresholdSmearing_BPix = cms.double(245.0),
116 ThresholdSmearing_BPix_L1 = cms.double(245.0),
117 NoiseInElectrons = cms.double(175.0),
118 MissCalibrate = cms.bool(
True),
119 FPix_SignalResponse_p0 = cms.double(0.0043),
120 FPix_SignalResponse_p1 = cms.double(1.31),
121 FPix_SignalResponse_p2 = cms.double(93.6),
122 FPix_SignalResponse_p3 = cms.double(134.6),
123 BPix_SignalResponse_p0 = cms.double(0.0035),
124 BPix_SignalResponse_p1 = cms.double(1.23),
125 BPix_SignalResponse_p2 = cms.double(97.4),
126 BPix_SignalResponse_p3 = cms.double(126.5),
127 ElectronsPerVcal = cms.double(65.5),
128 ElectronsPerVcal_Offset = cms.double(-414.0),
129 ElectronPerAdc = cms.double(135.0),
130 TofUpperCut = cms.double(12.5),
131 AdcFullScale = cms.int32(255),
132 AdcFullScaleStack = cms.int32(255),
133 FirstStackLayer = cms.int32(5),
134 TofLowerCut = cms.double(-12.5),
135 TanLorentzAnglePerTesla_FPix = cms.double(0.106),
136 TanLorentzAnglePerTesla_BPix = cms.double(0.106),
137 AddNoisyPixels = cms.bool(
True),
138 Alpha2Order = cms.bool(
True),
139 AddPixelInefficiency = cms.bool(
True),
140 AddNoise = cms.bool(
True),
141 ChargeVCALSmearing = cms.bool(
True),
142 GainSmearing = cms.double(0.0),
143 PixGeometryType = cms.string(
'idealForDigi'),
144 useDB = cms.bool(
False),
145 LorentzAngle_DB = cms.bool(
True),
146 DeadModules_DB = cms.bool(
True),
147 killModules = cms.bool(
True),
148 NumPixelBarrel = cms.int32(3),
149 NumPixelEndcap = cms.int32(2),
150 DeadModules = cms.VPSet(
151 cms.PSet(Dead_detID = cms.int32(302055940), Module = cms.string(
"tbmB"))
152 ,cms.PSet(Dead_detID = cms.int32(302059800), Module = cms.string(
"whole"))
153 ,cms.PSet(Dead_detID = cms.int32(302121992), Module = cms.string(
"whole"))
154 ,cms.PSet(Dead_detID = cms.int32(302123296), Module = cms.string(
"whole"))
155 ,cms.PSet(Dead_detID = cms.int32(302125060), Module = cms.string(
"tbmA"))
156 ,cms.PSet(Dead_detID = cms.int32(302125076), Module = cms.string(
"tbmA"))
157 ,cms.PSet(Dead_detID = cms.int32(302126364), Module = cms.string(
"tbmB"))
158 ,cms.PSet(Dead_detID = cms.int32(302126596), Module = cms.string(
"whole"))
159 ,cms.PSet(Dead_detID = cms.int32(302127136), Module = cms.string(
"whole"))
160 ,cms.PSet(Dead_detID = cms.int32(302188552), Module = cms.string(
"whole"))
161 ,cms.PSet(Dead_detID = cms.int32(302188824), Module = cms.string(
"whole"))
162 ,cms.PSet(Dead_detID = cms.int32(302194200), Module = cms.string(
"whole"))
163 ,cms.PSet(Dead_detID = cms.int32(302195232), Module = cms.string(
"whole"))
164 ,cms.PSet(Dead_detID = cms.int32(302197252), Module = cms.string(
"whole"))
165 ,cms.PSet(Dead_detID = cms.int32(302197784), Module = cms.string(
"whole"))
167 ,cms.PSet(Dead_detID = cms.int32(352453892), Module = cms.string(
"whole"))
168 ,cms.PSet(Dead_detID = cms.int32(352453896), Module = cms.string(
"whole"))
169 ,cms.PSet(Dead_detID = cms.int32(352453900), Module = cms.string(
"whole"))
170 ,cms.PSet(Dead_detID = cms.int32(352453904), Module = cms.string(
"whole"))
171 ,cms.PSet(Dead_detID = cms.int32(352454916), Module = cms.string(
"whole"))
172 ,cms.PSet(Dead_detID = cms.int32(352454920), Module = cms.string(
"whole"))
173 ,cms.PSet(Dead_detID = cms.int32(352454924), Module = cms.string(
"whole"))
174 ,cms.PSet(Dead_detID = cms.int32(352454928), Module = cms.string(
"whole"))
175 ,cms.PSet(Dead_detID = cms.int32(352455940), Module = cms.string(
"whole"))
176 ,cms.PSet(Dead_detID = cms.int32(352455944), Module = cms.string(
"whole"))
177 ,cms.PSet(Dead_detID = cms.int32(352455948), Module = cms.string(
"whole"))
178 ,cms.PSet(Dead_detID = cms.int32(352455952), Module = cms.string(
"whole"))
179 ,cms.PSet(Dead_detID = cms.int32(352454148), Module = cms.string(
"whole"))
180 ,cms.PSet(Dead_detID = cms.int32(352454152), Module = cms.string(
"whole"))
181 ,cms.PSet(Dead_detID = cms.int32(352454156), Module = cms.string(
"whole"))
182 ,cms.PSet(Dead_detID = cms.int32(352455172), Module = cms.string(
"whole"))
183 ,cms.PSet(Dead_detID = cms.int32(352455176), Module = cms.string(
"whole"))
184 ,cms.PSet(Dead_detID = cms.int32(352455180), Module = cms.string(
"whole"))
185 ,cms.PSet(Dead_detID = cms.int32(352456196), Module = cms.string(
"whole"))
186 ,cms.PSet(Dead_detID = cms.int32(352456200), Module = cms.string(
"whole"))
187 ,cms.PSet(Dead_detID = cms.int32(352456204), Module = cms.string(
"whole"))
188 ,cms.PSet(Dead_detID = cms.int32(343999748), Module = cms.string(
"whole"))
189 ,cms.PSet(Dead_detID = cms.int32(343999752), Module = cms.string(
"whole"))
190 ,cms.PSet(Dead_detID = cms.int32(343999756), Module = cms.string(
"whole"))
191 ,cms.PSet(Dead_detID = cms.int32(343999760), Module = cms.string(
"whole"))
192 ,cms.PSet(Dead_detID = cms.int32(344014340), Module = cms.string(
"whole"))
193 ,cms.PSet(Dead_detID = cms.int32(344014344), Module = cms.string(
"whole"))
194 ,cms.PSet(Dead_detID = cms.int32(344014348), Module = cms.string(
"whole"))
195 ,cms.PSet(Dead_detID = cms.int32(344019460), Module = cms.string(
"whole"))
196 ,cms.PSet(Dead_detID = cms.int32(344019464), Module = cms.string(
"whole"))
197 ,cms.PSet(Dead_detID = cms.int32(344019468), Module = cms.string(
"whole"))
198 ,cms.PSet(Dead_detID = cms.int32(344077572), Module = cms.string(
"whole"))
199 ,cms.PSet(Dead_detID = cms.int32(344077576), Module = cms.string(
"whole"))
200 ,cms.PSet(Dead_detID = cms.int32(344077580), Module = cms.string(
"whole"))
201 ,cms.PSet(Dead_detID = cms.int32(344077584), Module = cms.string(
"whole"))
202 ,cms.PSet(Dead_detID = cms.int32(344078596), Module = cms.string(
"whole"))
203 ,cms.PSet(Dead_detID = cms.int32(344078600), Module = cms.string(
"whole"))
204 ,cms.PSet(Dead_detID = cms.int32(344078604), Module = cms.string(
"whole"))
205 ,cms.PSet(Dead_detID = cms.int32(344078608), Module = cms.string(
"whole"))
206 ,cms.PSet(Dead_detID = cms.int32(344079620), Module = cms.string(
"whole"))
207 ,cms.PSet(Dead_detID = cms.int32(344079624), Module = cms.string(
"whole"))
208 ,cms.PSet(Dead_detID = cms.int32(344079628), Module = cms.string(
"whole"))
209 ,cms.PSet(Dead_detID = cms.int32(344079632), Module = cms.string(
"whole"))
210 ,cms.PSet(Dead_detID = cms.int32(344078852), Module = cms.string(
"whole"))
211 ,cms.PSet(Dead_detID = cms.int32(344078856), Module = cms.string(
"whole"))
212 ,cms.PSet(Dead_detID = cms.int32(344078860), Module = cms.string(
"whole"))
224 eras.run2_25ns_specific.toModify( SiPixelSimBlock, func=_modifyPixelDigitizerForRun2Bunchspacing25 )
225 eras.run2_50ns_specific.toModify( SiPixelSimBlock, func=_modifyPixelDigitizerForRun2Bunchspacing50 )
226 eras.phase1Pixel.toModify( SiPixelSimBlock, func=_modifyPixelDigitizerForPhase1Pixel )
228 modifySimGeneralMixingModuleSiPixelSimParametersForPhase1WithPileup_ = eras.phase1Pixel.makeProcessModifier( _modifyPixelDigitizerForPhase1PixelWithPileup )
def _modifyPixelDigitizerForPhase1Pixel
def _modifyPixelDigitizerForPhase1PixelWithPileup
def _modifyPixelDigitizerForRun2Bunchspacing50
def _modifyPixelDigitizerForRun2Bunchspacing25