1 import FWCore.ParameterSet.Config
as cms
9 Function that modifies the pixel digitiser for the Phase 1 pixel detector. 11 First argument is the pixelDigitizer object. 19 digitizer.NumPixelBarrel = cms.int32(4)
20 digitizer.NumPixelEndcap = cms.int32(3)
21 digitizer.ThresholdInElectrons_FPix = cms.double(2000.0)
22 digitizer.ThresholdInElectrons_BPix = cms.double(2000.0)
23 digitizer.ThresholdInElectrons_BPix_L1 = cms.double(3000.0)
24 digitizer.ThresholdInElectrons_BPix_L2 = cms.double(2600.0)
25 digitizer.FPix_SignalResponse_p0 = cms.double(0.00171)
26 digitizer.FPix_SignalResponse_p1 = cms.double(0.711)
27 digitizer.FPix_SignalResponse_p2 = cms.double(203.)
28 digitizer.FPix_SignalResponse_p3 = cms.double(148.)
29 digitizer.BPix_SignalResponse_p0 = cms.double(0.00171)
30 digitizer.BPix_SignalResponse_p1 = cms.double(0.711)
31 digitizer.BPix_SignalResponse_p2 = cms.double(203.)
32 digitizer.BPix_SignalResponse_p3 = cms.double(148.)
34 digitizer.ElectronsPerVcal = cms.double(47)
35 digitizer.ElectronsPerVcal_L1 = cms.double(50)
36 digitizer.ElectronsPerVcal_Offset = cms.double(-60)
37 digitizer.ElectronsPerVcal_L1_Offset = cms.double(-670)
38 digitizer.UseReweighting = cms.bool(
True)
39 digitizer.KillBadFEDChannels = cms.bool(
True)
41 SiPixelSimBlock = cms.PSet(
42 SiPixelQualityLabel = cms.string(
''),
43 KillBadFEDChannels = cms.bool(
False),
44 UseReweighting = cms.bool(
False),
45 PrintClusters = cms.bool(
False),
46 PrintTemplates = cms.bool(
False),
47 DoPixelAging = cms.bool(
False),
48 ReadoutNoiseInElec = cms.double(350.0),
49 deltaProductionCut = cms.double(0.03),
50 RoutList = cms.vstring(
51 'TrackerHitsPixelBarrelLowTof',
52 'TrackerHitsPixelBarrelHighTof',
53 'TrackerHitsPixelEndcapLowTof',
54 'TrackerHitsPixelEndcapHighTof'),
55 OffsetSmearing = cms.double(0.0),
56 ThresholdInElectrons_FPix = cms.double(3000.0),
57 ThresholdInElectrons_BPix = cms.double(3500.0),
58 ThresholdInElectrons_BPix_L1 = cms.double(3500.0),
59 ThresholdInElectrons_BPix_L2 = cms.double(3500.0),
60 AddThresholdSmearing = cms.bool(
True),
61 ThresholdSmearing_FPix = cms.double(210.0),
62 ThresholdSmearing_BPix = cms.double(245.0),
63 ThresholdSmearing_BPix_L1 = cms.double(245.0),
64 ThresholdSmearing_BPix_L2 = cms.double(245.0),
65 NoiseInElectrons = cms.double(175.0),
66 MissCalibrate = cms.bool(
True),
67 FPix_SignalResponse_p0 = cms.double(0.0043),
68 FPix_SignalResponse_p1 = cms.double(1.31),
69 FPix_SignalResponse_p2 = cms.double(93.6),
70 FPix_SignalResponse_p3 = cms.double(134.6),
71 BPix_SignalResponse_p0 = cms.double(0.0035),
72 BPix_SignalResponse_p1 = cms.double(1.23),
73 BPix_SignalResponse_p2 = cms.double(97.4),
74 BPix_SignalResponse_p3 = cms.double(126.5),
75 ElectronsPerVcal = cms.double(65.5),
76 ElectronsPerVcal_L1 = cms.double(65.5),
77 ElectronsPerVcal_Offset = cms.double(-414.0),
78 ElectronsPerVcal_L1_Offset = cms.double(-414.0),
79 ElectronPerAdc = cms.double(135.0),
80 TofUpperCut = cms.double(12.5),
81 AdcFullScale = cms.int32(255),
82 TofLowerCut = cms.double(-12.5),
83 TanLorentzAnglePerTesla_FPix = cms.double(0.106),
84 TanLorentzAnglePerTesla_BPix = cms.double(0.106),
85 AddNoisyPixels = cms.bool(
True),
86 Alpha2Order = cms.bool(
True),
87 AddPixelInefficiency = cms.bool(
True),
88 AddNoise = cms.bool(
True),
89 ChargeVCALSmearing = cms.bool(
True),
90 GainSmearing = cms.double(0.0),
91 PixGeometryType = cms.string(
'idealForDigi'),
92 useDB = cms.bool(
False),
93 LorentzAngle_DB = cms.bool(
True),
94 DeadModules_DB = cms.bool(
True),
95 killModules = cms.bool(
True),
96 NumPixelBarrel = cms.int32(3),
97 NumPixelEndcap = cms.int32(2),
102 from Configuration.Eras.Modifier_pixel_2016_cff
import pixel_2016
103 pixel_2016.toModify(SiPixelSimBlock,UseReweighting=
True)
108 from Configuration.Eras.Modifier_phase1Pixel_cff
import phase1Pixel
109 phase1Pixel.toModify( SiPixelSimBlock, func=_modifyPixelDigitizerForPhase1Pixel )
113 from Configuration.Eras.Modifier_run2_SiPixel_2018_cff
import run2_SiPixel_2018
114 run2_SiPixel_2018.toModify(siPixelQualityESProducer,siPixelQualityLabel =
'forDigitizer',)
115 run2_SiPixel_2018.toModify(SiPixelSimBlock, SiPixelQualityLabel =
'forDigitizer',)
117 from Configuration.ProcessModifiers.premix_stage1_cff
import premix_stage1
118 premix_stage1.toModify(SiPixelSimBlock,
120 AddNoisyPixels =
False,
121 AddPixelInefficiency =
False,
122 KillBadFEDChannels =
False,
def _modifyPixelDigitizerForPhase1Pixel(digitizer)