File indexing completed on 2025-02-05 23:51:49
0001
0002
0003
0004
0005
0006
0007
0008
0009 import FWCore.ParameterSet.Config as cms
0010 from SimCalorimetry.HcalSimProducers.hcalUnsuppressedDigis_cfi import hcalSimBlock
0011 from SimGeneral.MixingModule.SiStripSimParameters_cfi import SiStripSimBlock
0012 from SimGeneral.MixingModule.SiPixelSimParameters_cfi import SiPixelSimBlock
0013 from SimTracker.SiPhase2Digitizer.phase2TrackerDigitizer_cfi import phase2TrackerDigitizer, _premixStage1ModifyDict as _phase2TrackerPremixStage1ModifyDict
0014 from SimGeneral.MixingModule.ecalDigitizer_cfi import ecalDigitizer
0015 from SimCalorimetry.HGCalSimProducers.hgcalDigitizer_cfi import hgceeDigitizer, hgchebackDigitizer, hgchefrontDigitizer, hfnoseDigitizer
0016 from SimFastTiming.FastTimingCommon.mtdDigitizer_cfi import mtdDigitizer
0017
0018 hcalSimBlock.HcalPreMixStage2 = cms.bool(True)
0019
0020 mixData = cms.EDProducer("PreMixingModule",
0021 input = cms.SecSource("EmbeddedRootSource",
0022 producers = cms.VPSet(),
0023 nbPileupEvents = cms.PSet(
0024 averageNumber = cms.double(1.0)
0025 ),
0026 seed = cms.int32(1234567),
0027 type = cms.string('fixed'),
0028 sequential = cms.untracked.bool(False),
0029 fileNames = cms.untracked.vstring('file:DMPreProcess_RAW2DIGI.root'),
0030 consecutiveRejectionsLimit = cms.untracked.uint32(100)
0031 ),
0032
0033 bunchspace = cms.int32(25),
0034 minBunch = cms.int32(0),
0035 maxBunch = cms.int32(0),
0036 mixProdStep1 = cms.bool(False),
0037 mixProdStep2 = cms.bool(False),
0038
0039 adjustPileupDistribution = cms.VPSet(),
0040
0041 workers = cms.PSet(
0042 pileup = cms.PSet(
0043 PileupInfoInputTag = cms.InputTag("addPileupInfo"),
0044 BunchSpacingInputTag = cms.InputTag("addPileupInfo","bunchSpacing"),
0045 CFPlaybackInputTag = cms.InputTag("mix"),
0046 GenPUProtonsInputTags = cms.VInputTag("genPUProtons"),
0047 ),
0048
0049 pixel = cms.PSet(
0050 SiPixelSimBlock.clone(
0051
0052
0053 AddNoise = False,
0054 MissCalibrate = False,
0055 ),
0056 workerType = cms.string("PreMixingSiPixelWorker"),
0057 pixeldigiCollectionSig = cms.InputTag("simSiPixelDigis"),
0058 pixeldigiCollectionPile = cms.InputTag("simSiPixelDigis"),
0059 pixeldigiExtraCollectionPile = cms.InputTag("simSiPixelDigis"),
0060 pixeldigiExtraLiteCollectionPile = cms.InputTag("simSiPixelDigis"),
0061 PixelDigiCollectionDM = cms.string('siPixelDigisDM'),
0062 ),
0063 strip = cms.PSet(
0064 SiStripSimBlock,
0065 workerType = cms.string("PreMixingSiStripWorker"),
0066
0067 SistripLabelSig = cms.InputTag("simSiStripDigis","ZeroSuppressed"),
0068 SiStripPileInputTag = cms.InputTag("simSiStripDigis","ZeroSuppressed"),
0069
0070 SistripAPVPileInputTag = cms.InputTag("mix","AffectedAPVList"),
0071 SistripAPVLabelSig = cms.InputTag("mix","AffectedAPVList"),
0072
0073 SiStripDigiCollectionDM = cms.string('siStripDigisDM'),
0074 SiStripAPVListDM = cms.string('SiStripAPVList'),
0075 ),
0076 ecal = cms.PSet(
0077 ecalDigitizer.clone(accumulatorType = None, makeDigiSimLinks=None),
0078 workerType = cms.string("PreMixingEcalWorker"),
0079
0080 EBdigiProducerSig = cms.InputTag("simEcalUnsuppressedDigis"),
0081 EEdigiProducerSig = cms.InputTag("simEcalUnsuppressedDigis"),
0082 ESdigiProducerSig = cms.InputTag("simEcalPreshowerDigis"),
0083
0084 EBPileInputTag = cms.InputTag("simEcalDigis", "ebDigis"),
0085 EEPileInputTag = cms.InputTag("simEcalDigis", "eeDigis"),
0086 ESPileInputTag = cms.InputTag("simEcalUnsuppressedDigis"),
0087
0088 EBDigiCollectionDM = cms.string(''),
0089 EEDigiCollectionDM = cms.string(''),
0090 ESDigiCollectionDM = cms.string(''),
0091 ),
0092 hcal = cms.PSet(
0093 hcalSimBlock,
0094 workerType = cms.string("PreMixingHcalWorker"),
0095
0096 HBHEdigiCollectionSig = cms.InputTag("simHcalUnsuppressedDigis"),
0097 HOdigiCollectionSig = cms.InputTag("simHcalUnsuppressedDigis"),
0098 HFdigiCollectionSig = cms.InputTag("simHcalUnsuppressedDigis"),
0099 QIE10digiCollectionSig = cms.InputTag("simHcalUnsuppressedDigis"),
0100 QIE11digiCollectionSig = cms.InputTag("simHcalUnsuppressedDigis"),
0101 ZDCdigiCollectionSig = cms.InputTag("simHcalUnsuppressedDigis"),
0102
0103 HBHEPileInputTag = cms.InputTag("simHcalDigis"),
0104 HOPileInputTag = cms.InputTag("simHcalDigis"),
0105 HFPileInputTag = cms.InputTag("simHcalDigis"),
0106 QIE10PileInputTag = cms.InputTag("simHcalDigis", "HFQIE10DigiCollection"),
0107 QIE11PileInputTag = cms.InputTag("simHcalDigis", "HBHEQIE11DigiCollection"),
0108 ZDCPileInputTag = cms.InputTag(""),
0109
0110 HBHEDigiCollectionDM = cms.string(''),
0111 HODigiCollectionDM = cms.string(''),
0112 HFDigiCollectionDM = cms.string(''),
0113 QIE10DigiCollectionDM = cms.string(''),
0114 QIE11DigiCollectionDM = cms.string(''),
0115 ZDCDigiCollectionDM = cms.string('')
0116 ),
0117 dt = cms.PSet(
0118 workerType = cms.string("PreMixingCrossingFramePSimHitWorker"),
0119 labelSig = cms.InputTag("mix", "g4SimHitsMuonDTHits"),
0120 pileInputTag = cms.InputTag("mix", "g4SimHitsMuonDTHits"),
0121 collectionDM = cms.string("g4SimHitsMuonDTHits"),
0122 ),
0123 rpc = cms.PSet(
0124 workerType = cms.string("PreMixingCrossingFramePSimHitWorker"),
0125 labelSig = cms.InputTag("mix", "g4SimHitsMuonRPCHits"),
0126 pileInputTag = cms.InputTag("mix", "g4SimHitsMuonRPCHits"),
0127 collectionDM = cms.string("g4SimHitsMuonRPCHits"),
0128 ),
0129 csc = cms.PSet(
0130 workerType = cms.string("PreMixingCrossingFramePSimHitWorker"),
0131 labelSig = cms.InputTag("mix", "g4SimHitsMuonCSCHits"),
0132 pileInputTag = cms.InputTag("mix", "g4SimHitsMuonCSCHits"),
0133 collectionDM = cms.string("g4SimHitsMuonCSCHits"),
0134 ),
0135 trackingTruth = cms.PSet(
0136 workerType = cms.string("PreMixingTrackingParticleWorker"),
0137 labelSig = cms.InputTag("mix","MergedTrackTruth"),
0138 pileInputTag = cms.InputTag("mix","MergedTrackTruth"),
0139 collectionDM = cms.string('MergedTrackTruth'),
0140 ),
0141 pixelSimLink = cms.PSet(
0142 workerType = cms.string("PreMixingPixelDigiSimLinkWorker"),
0143 labelSig = cms.InputTag("simSiPixelDigis"),
0144 pileInputTag = cms.InputTag("simSiPixelDigis"),
0145 collectionDM = cms.string('PixelDigiSimLink'),
0146 ),
0147 stripSimLink = cms.PSet(
0148 workerType = cms.string("PreMixingStripDigiSimLinkWorker"),
0149 labelSig = cms.InputTag("simSiStripDigis"),
0150 pileInputTag = cms.InputTag("simSiStripDigis"),
0151 collectionDM = cms.string('StripDigiSimLink'),
0152 ),
0153 ),
0154 )
0155
0156
0157 from Configuration.ProcessModifiers.runDependentForPixel_cff import runDependentForPixel
0158 from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
0159 (runDependentForPixel & premix_stage2).toModify(mixData.workers.pixel,
0160 UseReweighting=False,
0161 applyLateReweighting=True,
0162 usePixelExtraLiteFormat = False,
0163 store_SimHitEntryExitPoints=False,
0164 store_SimHitEntryExitPointsLite = False
0165 )
0166
0167 from Configuration.ProcessModifiers.runDependentForPixelVal_cff import runDependentForPixelVal
0168 (runDependentForPixelVal & premix_stage2).toModify(mixData.workers.pixel,
0169 UseReweighting=False,
0170 applyLateReweighting=True,
0171 usePixelExtraLiteFormat = True,
0172 store_SimHitEntryExitPoints=False,
0173 store_SimHitEntryExitPointsLite = False
0174 )
0175
0176 from Configuration.Eras.Modifier_fastSim_cff import fastSim
0177 from FastSimulation.Tracking.recoTrackAccumulator_cfi import recoTrackAccumulator as _recoTrackAccumulator
0178 fastSim.toModify(mixData,
0179
0180 workers = dict(
0181 pixel = None,
0182 strip = None,
0183 pixelSimLink = None,
0184 stripSimLink = None,
0185 tracks = cms.PSet(
0186 workerType = cms.string("PreMixingDigiAccumulatorWorker"),
0187 accumulator = _recoTrackAccumulator.clone(
0188 pileUpTracks = "mix:generalTracks"
0189 )
0190 ),
0191 dt = dict(
0192 labelSig = "mix:MuonSimHitsMuonDTHits",
0193 pileInputTag = "mix:MuonSimHitsMuonDTHits",
0194 collectionDM = "MuonSimHitsMuonDTHits",
0195 ),
0196 rpc = dict(
0197 labelSig = "mix:MuonSimHitsMuonRPCHits",
0198 pileInputTag = "mix:MuonSimHitsMuonRPCHits",
0199 collectionDM = "MuonSimHitsMuonRPCHits",
0200 ),
0201 csc = dict(
0202 labelSig = "mix:MuonSimHitsMuonCSCHits",
0203 pileInputTag = "mix:MuonSimHitsMuonCSCHits",
0204 collectionDM = "MuonSimHitsMuonCSCHits",
0205 ),
0206 ),
0207 )
0208
0209 from Configuration.Eras.Modifier_run2_GEM_2017_cff import run2_GEM_2017
0210 from Configuration.Eras.Modifier_run3_GEM_cff import run3_GEM
0211 (run2_GEM_2017 | run3_GEM).toModify(
0212 mixData,
0213 workers = dict(
0214 gem = cms.PSet(
0215 workerType = cms.string("PreMixingCrossingFramePSimHitWorker"),
0216 labelSig = cms.InputTag("mix", "g4SimHitsMuonGEMHits"),
0217 pileInputTag = cms.InputTag("mix", "g4SimHitsMuonGEMHits"),
0218 collectionDM = cms.string("g4SimHitsMuonGEMHits"),
0219 ),
0220 )
0221 )
0222
0223 from Configuration.Eras.Modifier_phase2_common_cff import phase2_common
0224 from Configuration.Eras.Modifier_phase2_tracker_cff import phase2_tracker
0225 from Configuration.Eras.Modifier_phase2_timing_layer_cff import phase2_timing_layer
0226 from Configuration.Eras.Modifier_phase2_hcal_cff import phase2_hcal
0227 from Configuration.Eras.Modifier_phase2_hgcal_cff import phase2_hgcal
0228 from Configuration.Eras.Modifier_phase2_hfnose_cff import phase2_hfnose
0229 from Configuration.Eras.Modifier_phase2_muon_cff import phase2_muon
0230 from Configuration.Eras.Modifier_phase2_GE0_cff import phase2_GE0
0231 phase2_common.toModify(mixData, input = dict(producers = []))
0232
0233
0234 phase2_tracker.toModify(mixData,
0235 workers = dict(
0236
0237 strip = None,
0238 stripSimLink = None,
0239
0240 pixel = cms.PSet(
0241 phase2TrackerDigitizer,
0242 workerType = cms.string("PreMixingPhase2TrackerWorker"),
0243
0244 pixelLabelSig = cms.InputTag("simSiPixelDigis:Pixel"),
0245 pixelPileInputTag = cms.InputTag("simSiPixelDigis:Pixel"),
0246 trackerLabelSig = cms.InputTag("simSiPixelDigis:Tracker"),
0247 trackerPileInputTag = cms.InputTag("simSiPixelDigis:Tracker"),
0248 pixelPmxStage1ElectronPerAdc = cms.double(phase2TrackerDigitizer.PixelDigitizerAlgorithm.ElectronPerAdc.value()),
0249 trackerPmxStage1ElectronPerAdc = cms.double(phase2TrackerDigitizer.PSPDigitizerAlgorithm.ElectronPerAdc.value())
0250 ),
0251 pixelSimLink = dict(
0252 labelSig = "simSiPixelDigis:Pixel",
0253 pileInputTag = "simSiPixelDigis:Pixel",
0254 ),
0255 phase2OTSimLink = cms.PSet(
0256 workerType = cms.string("PreMixingPixelDigiSimLinkWorker"),
0257 labelSig = cms.InputTag("simSiPixelDigis:Tracker"),
0258 pileInputTag = cms.InputTag("simSiPixelDigis:Tracker"),
0259 collectionDM = cms.string("Phase2OTDigiSimLink"),
0260 ),
0261 ),
0262 )
0263
0264
0265 phase2_timing_layer.toModify(mixData,
0266 workers = dict(
0267 mtdBarrel = cms.PSet(
0268 mtdDigitizer.barrelDigitizer,
0269 workerType = cms.string("PreMixingMTDWorker"),
0270 digiTagSig = cms.InputTag("mix", "FTLBarrel"),
0271 pileInputTag = cms.InputTag("mix", "FTLBarrel"),
0272 ),
0273 mtdEndcap = cms.PSet(
0274 mtdDigitizer.endcapDigitizer,
0275 workerType = cms.string("PreMixingMTDWorker"),
0276 digiTagSig = cms.InputTag("mix", "FTLEndcap"),
0277 pileInputTag = cms.InputTag("mix", "FTLEndcap"),
0278 ),
0279 mtdTruth = cms.PSet(
0280 workerType = cms.string("PreMixingMtdTruthWorker"),
0281 labelSig = cms.InputTag("mix", "MergedMtdTruthLC"),
0282 pileInputTag = cms.InputTag("mix", "MergedMtdTruthLC"),
0283 collectionDM = cms.string("MergedMtdTruthLC"),
0284 )
0285 )
0286 )
0287
0288 phase2_common.toModify (mixData, workers=dict(ecal=dict(doES=False)))
0289 phase2_hgcal.toModify(mixData, workers=dict(ecal=dict(doEE=False)))
0290
0291
0292 phase2_hgcal.toModify(mixData,
0293 workers = dict(
0294 hgcee = cms.PSet(
0295 hgceeDigitizer,
0296 workerType = cms.string("PreMixingHGCalWorker"),
0297 digiTagSig = cms.InputTag("mix", "HGCDigisEE"),
0298 pileInputTag = cms.InputTag("simHGCalUnsuppressedDigis", "EE"),
0299 ),
0300 hgchefront = cms.PSet(
0301 hgchefrontDigitizer,
0302 workerType = cms.string("PreMixingHGCalWorker"),
0303 digiTagSig = cms.InputTag("mix", "HGCDigisHEfront"),
0304 pileInputTag = cms.InputTag("simHGCalUnsuppressedDigis", "HEfront"),
0305 ),
0306 hgcheback = cms.PSet(
0307 hgchebackDigitizer,
0308 workerType = cms.string("PreMixingHGCalWorker"),
0309 digiTagSig = cms.InputTag("mix", "HGCDigisHEback"),
0310 pileInputTag = cms.InputTag("simHGCalUnsuppressedDigis", "HEback"),
0311 ),
0312 caloTruth = cms.PSet(
0313 workerType = cms.string("PreMixingCaloParticleWorker"),
0314 labelSig = cms.InputTag("mix", "MergedCaloTruth"),
0315 pileInputTag = cms.InputTag("mix", "MergedCaloTruth"),
0316 collectionDM = cms.string("MergedCaloTruth"),
0317 )
0318 )
0319 )
0320
0321 phase2_hfnose.toModify(mixData,
0322 workers = dict(
0323 hfnose = cms.PSet(
0324 hfnoseDigitizer,
0325 workerType = cms.string("PreMixingHGCalWorker"),
0326 digiTagSig = cms.InputTag("mix", "HFNoseDigis"),
0327 pileInputTag = cms.InputTag("simHGCalUnsuppressedDigis", "HFNose"),
0328 ),
0329 )
0330 )
0331
0332
0333 (phase2_muon & ~phase2_GE0).toModify(mixData,
0334 workers = dict(
0335 me0 = cms.PSet(
0336 workerType = cms.string("PreMixingCrossingFramePSimHitWorker"),
0337 labelSig = cms.InputTag("mix", "g4SimHitsMuonME0Hits"),
0338 pileInputTag = cms.InputTag("mix", "g4SimHitsMuonME0Hits"),
0339 collectionDM = cms.string("g4SimHitsMuonME0Hits"),
0340 ),
0341 )
0342 )
0343
0344
0345 from Configuration.ProcessModifiers.runDependent_cff import runDependent
0346 runDependent.toModify(mixData.workers.ecal, timeDependent=True)