File indexing completed on 2024-05-20 22:40:12
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 PixelDigiCollectionDM = cms.string('siPixelDigisDM'),
0061 ),
0062 strip = cms.PSet(
0063 SiStripSimBlock,
0064 workerType = cms.string("PreMixingSiStripWorker"),
0065
0066 SistripLabelSig = cms.InputTag("simSiStripDigis","ZeroSuppressed"),
0067 SiStripPileInputTag = cms.InputTag("simSiStripDigis","ZeroSuppressed"),
0068
0069 SistripAPVPileInputTag = cms.InputTag("mix","AffectedAPVList"),
0070 SistripAPVLabelSig = cms.InputTag("mix","AffectedAPVList"),
0071
0072 SiStripDigiCollectionDM = cms.string('siStripDigisDM'),
0073 SiStripAPVListDM = cms.string('SiStripAPVList'),
0074 ),
0075 ecal = cms.PSet(
0076 ecalDigitizer.clone(accumulatorType = None, makeDigiSimLinks=None),
0077 workerType = cms.string("PreMixingEcalWorker"),
0078
0079 EBdigiProducerSig = cms.InputTag("simEcalUnsuppressedDigis"),
0080 EEdigiProducerSig = cms.InputTag("simEcalUnsuppressedDigis"),
0081 ESdigiProducerSig = cms.InputTag("simEcalPreshowerDigis"),
0082
0083 EBPileInputTag = cms.InputTag("simEcalDigis", "ebDigis"),
0084 EEPileInputTag = cms.InputTag("simEcalDigis", "eeDigis"),
0085 ESPileInputTag = cms.InputTag("simEcalUnsuppressedDigis"),
0086
0087 EBDigiCollectionDM = cms.string(''),
0088 EEDigiCollectionDM = cms.string(''),
0089 ESDigiCollectionDM = cms.string(''),
0090 ),
0091 hcal = cms.PSet(
0092 hcalSimBlock,
0093 workerType = cms.string("PreMixingHcalWorker"),
0094
0095 HBHEdigiCollectionSig = cms.InputTag("simHcalUnsuppressedDigis"),
0096 HOdigiCollectionSig = cms.InputTag("simHcalUnsuppressedDigis"),
0097 HFdigiCollectionSig = cms.InputTag("simHcalUnsuppressedDigis"),
0098 QIE10digiCollectionSig = cms.InputTag("simHcalUnsuppressedDigis"),
0099 QIE11digiCollectionSig = cms.InputTag("simHcalUnsuppressedDigis"),
0100 ZDCdigiCollectionSig = cms.InputTag("simHcalUnsuppressedDigis"),
0101
0102 HBHEPileInputTag = cms.InputTag("simHcalDigis"),
0103 HOPileInputTag = cms.InputTag("simHcalDigis"),
0104 HFPileInputTag = cms.InputTag("simHcalDigis"),
0105 QIE10PileInputTag = cms.InputTag("simHcalDigis", "HFQIE10DigiCollection"),
0106 QIE11PileInputTag = cms.InputTag("simHcalDigis", "HBHEQIE11DigiCollection"),
0107 ZDCPileInputTag = cms.InputTag(""),
0108
0109 HBHEDigiCollectionDM = cms.string(''),
0110 HODigiCollectionDM = cms.string(''),
0111 HFDigiCollectionDM = cms.string(''),
0112 QIE10DigiCollectionDM = cms.string(''),
0113 QIE11DigiCollectionDM = cms.string(''),
0114 ZDCDigiCollectionDM = cms.string('')
0115 ),
0116 dt = cms.PSet(
0117 workerType = cms.string("PreMixingCrossingFramePSimHitWorker"),
0118 labelSig = cms.InputTag("mix", "g4SimHitsMuonDTHits"),
0119 pileInputTag = cms.InputTag("mix", "g4SimHitsMuonDTHits"),
0120 collectionDM = cms.string("g4SimHitsMuonDTHits"),
0121 ),
0122 rpc = cms.PSet(
0123 workerType = cms.string("PreMixingCrossingFramePSimHitWorker"),
0124 labelSig = cms.InputTag("mix", "g4SimHitsMuonRPCHits"),
0125 pileInputTag = cms.InputTag("mix", "g4SimHitsMuonRPCHits"),
0126 collectionDM = cms.string("g4SimHitsMuonRPCHits"),
0127 ),
0128 csc = cms.PSet(
0129 workerType = cms.string("PreMixingCrossingFramePSimHitWorker"),
0130 labelSig = cms.InputTag("mix", "g4SimHitsMuonCSCHits"),
0131 pileInputTag = cms.InputTag("mix", "g4SimHitsMuonCSCHits"),
0132 collectionDM = cms.string("g4SimHitsMuonCSCHits"),
0133 ),
0134 trackingTruth = cms.PSet(
0135 workerType = cms.string("PreMixingTrackingParticleWorker"),
0136 labelSig = cms.InputTag("mix","MergedTrackTruth"),
0137 pileInputTag = cms.InputTag("mix","MergedTrackTruth"),
0138 collectionDM = cms.string('MergedTrackTruth'),
0139 ),
0140 pixelSimLink = cms.PSet(
0141 workerType = cms.string("PreMixingPixelDigiSimLinkWorker"),
0142 labelSig = cms.InputTag("simSiPixelDigis"),
0143 pileInputTag = cms.InputTag("simSiPixelDigis"),
0144 collectionDM = cms.string('PixelDigiSimLink'),
0145 ),
0146 stripSimLink = cms.PSet(
0147 workerType = cms.string("PreMixingStripDigiSimLinkWorker"),
0148 labelSig = cms.InputTag("simSiStripDigis"),
0149 pileInputTag = cms.InputTag("simSiStripDigis"),
0150 collectionDM = cms.string('StripDigiSimLink'),
0151 ),
0152 ),
0153 )
0154
0155
0156 from Configuration.ProcessModifiers.runDependentForPixel_cff import runDependentForPixel
0157 from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2
0158 (runDependentForPixel & premix_stage2).toModify(mixData.workers.pixel,
0159 UseReweighting=False,
0160 applyLateReweighting=True,
0161 store_SimHitEntryExitPoints=False
0162 )
0163
0164 from Configuration.Eras.Modifier_fastSim_cff import fastSim
0165 from FastSimulation.Tracking.recoTrackAccumulator_cfi import recoTrackAccumulator as _recoTrackAccumulator
0166 fastSim.toModify(mixData,
0167
0168 workers = dict(
0169 pixel = None,
0170 strip = None,
0171 pixelSimLink = None,
0172 stripSimLink = None,
0173 tracks = cms.PSet(
0174 workerType = cms.string("PreMixingDigiAccumulatorWorker"),
0175 accumulator = _recoTrackAccumulator.clone(
0176 pileUpTracks = "mix:generalTracks"
0177 )
0178 ),
0179 dt = dict(
0180 labelSig = "mix:MuonSimHitsMuonDTHits",
0181 pileInputTag = "mix:MuonSimHitsMuonDTHits",
0182 collectionDM = "MuonSimHitsMuonDTHits",
0183 ),
0184 rpc = dict(
0185 labelSig = "mix:MuonSimHitsMuonRPCHits",
0186 pileInputTag = "mix:MuonSimHitsMuonRPCHits",
0187 collectionDM = "MuonSimHitsMuonRPCHits",
0188 ),
0189 csc = dict(
0190 labelSig = "mix:MuonSimHitsMuonCSCHits",
0191 pileInputTag = "mix:MuonSimHitsMuonCSCHits",
0192 collectionDM = "MuonSimHitsMuonCSCHits",
0193 ),
0194 ),
0195 )
0196
0197 from Configuration.Eras.Modifier_run2_GEM_2017_cff import run2_GEM_2017
0198 from Configuration.Eras.Modifier_run3_GEM_cff import run3_GEM
0199 (run2_GEM_2017 | run3_GEM).toModify(
0200 mixData,
0201 workers = dict(
0202 gem = cms.PSet(
0203 workerType = cms.string("PreMixingCrossingFramePSimHitWorker"),
0204 labelSig = cms.InputTag("mix", "g4SimHitsMuonGEMHits"),
0205 pileInputTag = cms.InputTag("mix", "g4SimHitsMuonGEMHits"),
0206 collectionDM = cms.string("g4SimHitsMuonGEMHits"),
0207 ),
0208 )
0209 )
0210
0211 from Configuration.Eras.Modifier_phase2_common_cff import phase2_common
0212 from Configuration.Eras.Modifier_phase2_tracker_cff import phase2_tracker
0213 from Configuration.Eras.Modifier_phase2_timing_layer_cff import phase2_timing_layer
0214 from Configuration.Eras.Modifier_phase2_hcal_cff import phase2_hcal
0215 from Configuration.Eras.Modifier_phase2_hgcal_cff import phase2_hgcal
0216 from Configuration.Eras.Modifier_phase2_hfnose_cff import phase2_hfnose
0217 from Configuration.Eras.Modifier_phase2_muon_cff import phase2_muon
0218 from Configuration.Eras.Modifier_phase2_GE0_cff import phase2_GE0
0219 phase2_common.toModify(mixData, input = dict(producers = []))
0220
0221
0222 phase2_tracker.toModify(mixData,
0223 workers = dict(
0224
0225 strip = None,
0226 stripSimLink = None,
0227
0228 pixel = cms.PSet(
0229 phase2TrackerDigitizer,
0230 workerType = cms.string("PreMixingPhase2TrackerWorker"),
0231
0232 pixelLabelSig = cms.InputTag("simSiPixelDigis:Pixel"),
0233 pixelPileInputTag = cms.InputTag("simSiPixelDigis:Pixel"),
0234 trackerLabelSig = cms.InputTag("simSiPixelDigis:Tracker"),
0235 trackerPileInputTag = cms.InputTag("simSiPixelDigis:Tracker"),
0236 pixelPmxStage1ElectronPerAdc = cms.double(phase2TrackerDigitizer.PixelDigitizerAlgorithm.ElectronPerAdc.value()),
0237 trackerPmxStage1ElectronPerAdc = cms.double(phase2TrackerDigitizer.PSPDigitizerAlgorithm.ElectronPerAdc.value())
0238 ),
0239 pixelSimLink = dict(
0240 labelSig = "simSiPixelDigis:Pixel",
0241 pileInputTag = "simSiPixelDigis:Pixel",
0242 ),
0243 phase2OTSimLink = cms.PSet(
0244 workerType = cms.string("PreMixingPixelDigiSimLinkWorker"),
0245 labelSig = cms.InputTag("simSiPixelDigis:Tracker"),
0246 pileInputTag = cms.InputTag("simSiPixelDigis:Tracker"),
0247 collectionDM = cms.string("Phase2OTDigiSimLink"),
0248 ),
0249 ),
0250 )
0251
0252
0253 phase2_timing_layer.toModify(mixData,
0254 workers = dict(
0255 mtdBarrel = cms.PSet(
0256 mtdDigitizer.barrelDigitizer,
0257 workerType = cms.string("PreMixingMTDWorker"),
0258 digiTagSig = cms.InputTag("mix", "FTLBarrel"),
0259 pileInputTag = cms.InputTag("mix", "FTLBarrel"),
0260 ),
0261 mtdEndcap = cms.PSet(
0262 mtdDigitizer.endcapDigitizer,
0263 workerType = cms.string("PreMixingMTDWorker"),
0264 digiTagSig = cms.InputTag("mix", "FTLEndcap"),
0265 pileInputTag = cms.InputTag("mix", "FTLEndcap"),
0266 ),
0267 mtdTruth = cms.PSet(
0268 workerType = cms.string("PreMixingMtdTruthWorker"),
0269 labelSig = cms.InputTag("mix", "MergedMtdTruthLC"),
0270 pileInputTag = cms.InputTag("mix", "MergedMtdTruthLC"),
0271 collectionDM = cms.string("MergedMtdTruthLC"),
0272 )
0273 )
0274 )
0275
0276 phase2_common.toModify (mixData, workers=dict(ecal=dict(doES=False)))
0277 phase2_hgcal.toModify(mixData, workers=dict(ecal=dict(doEE=False)))
0278
0279
0280 phase2_hgcal.toModify(mixData,
0281 workers = dict(
0282 hgcee = cms.PSet(
0283 hgceeDigitizer,
0284 workerType = cms.string("PreMixingHGCalWorker"),
0285 digiTagSig = cms.InputTag("mix", "HGCDigisEE"),
0286 pileInputTag = cms.InputTag("simHGCalUnsuppressedDigis", "EE"),
0287 ),
0288 hgchefront = cms.PSet(
0289 hgchefrontDigitizer,
0290 workerType = cms.string("PreMixingHGCalWorker"),
0291 digiTagSig = cms.InputTag("mix", "HGCDigisHEfront"),
0292 pileInputTag = cms.InputTag("simHGCalUnsuppressedDigis", "HEfront"),
0293 ),
0294 hgcheback = cms.PSet(
0295 hgchebackDigitizer,
0296 workerType = cms.string("PreMixingHGCalWorker"),
0297 digiTagSig = cms.InputTag("mix", "HGCDigisHEback"),
0298 pileInputTag = cms.InputTag("simHGCalUnsuppressedDigis", "HEback"),
0299 ),
0300 caloTruth = cms.PSet(
0301 workerType = cms.string("PreMixingCaloParticleWorker"),
0302 labelSig = cms.InputTag("mix", "MergedCaloTruth"),
0303 pileInputTag = cms.InputTag("mix", "MergedCaloTruth"),
0304 collectionDM = cms.string("MergedCaloTruth"),
0305 )
0306 )
0307 )
0308
0309 phase2_hfnose.toModify(mixData,
0310 workers = dict(
0311 hfnose = cms.PSet(
0312 hfnoseDigitizer,
0313 workerType = cms.string("PreMixingHGCalWorker"),
0314 digiTagSig = cms.InputTag("mix", "HFNoseDigis"),
0315 pileInputTag = cms.InputTag("simHGCalUnsuppressedDigis", "HFNose"),
0316 ),
0317 )
0318 )
0319
0320
0321 (phase2_muon & ~phase2_GE0).toModify(mixData,
0322 workers = dict(
0323 me0 = cms.PSet(
0324 workerType = cms.string("PreMixingCrossingFramePSimHitWorker"),
0325 labelSig = cms.InputTag("mix", "g4SimHitsMuonME0Hits"),
0326 pileInputTag = cms.InputTag("mix", "g4SimHitsMuonME0Hits"),
0327 collectionDM = cms.string("g4SimHitsMuonME0Hits"),
0328 ),
0329 )
0330 )
0331
0332
0333 from Configuration.ProcessModifiers.runDependent_cff import runDependent
0334 runDependent.toModify(mixData.workers.ecal, timeDependent=True)