File indexing completed on 2023-03-17 11:27:55
0001
0002
0003
0004
0005
0006
0007
0008 import FWCore.ParameterSet.Config as cms
0009 import os, sys, imp, re
0010 import FWCore.ParameterSet.VarParsing as VarParsing
0011
0012
0013
0014 options = VarParsing.VarParsing('standard')
0015 options.register('geometry',
0016 "D88",
0017 VarParsing.VarParsing.multiplicity.singleton,
0018 VarParsing.VarParsing.varType.string,
0019 "geometry of operations: D88, D92, D93")
0020
0021
0022 options.parseArguments()
0023
0024 print(options)
0025
0026
0027
0028
0029 from Configuration.Eras.Era_Phase2C17I13M9_cff import Phase2C17I13M9
0030 process = cms.Process('PROD',Phase2C17I13M9)
0031
0032 geomFile = "Configuration.Geometry.GeometryExtended2026" + options.geometry + "Reco_cff"
0033 fileCheck = "testHGCalSimWatcher2026" + options.geometry + ".root"
0034
0035 if (options.geometry == "D93"):
0036 runMode = 2
0037 else:
0038 runMode = 1
0039
0040 print("Geometry file: ", geomFile)
0041 print("Output file: ", fileCheck)
0042 print("Run Mode: ", runMode)
0043
0044
0045 process.load(geomFile)
0046 process.load('Configuration.StandardSequences.Services_cff')
0047 process.load('SimGeneral.HepPDTESSource.pythiapdt_cfi')
0048 process.load('FWCore.MessageService.MessageLogger_cfi')
0049 process.load('Configuration.EventContent.EventContent_cff')
0050 process.load('SimGeneral.MixingModule.mixNoPU_cfi')
0051 process.load('Configuration.StandardSequences.MagneticField_cff')
0052 process.load('Configuration.StandardSequences.Generator_cff')
0053 process.load('IOMC.EventVertexGenerators.VtxSmearedRealistic50ns13TeVCollision_cfi')
0054 process.load('GeneratorInterface.Core.genFilterSummary_cff')
0055 process.load('Configuration.StandardSequences.SimIdeal_cff')
0056 process.load('Configuration.StandardSequences.EndOfProcess_cff')
0057 process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff')
0058 process.load('Configuration.StandardSequences.Digi_cff')
0059 process.load('Configuration.StandardSequences.SimL1Emulator_cff')
0060 process.load('Configuration.StandardSequences.L1TrackTrigger_cff')
0061 process.load('Configuration.StandardSequences.DigiToRaw_cff')
0062 process.load('HLTrigger.Configuration.HLT_Fake2_cff')
0063 process.load('Configuration.StandardSequences.RawToDigi_cff')
0064 process.load('Configuration.StandardSequences.L1Reco_cff')
0065 process.load('Configuration.StandardSequences.Reconstruction_cff')
0066 process.load('Configuration.StandardSequences.RecoSim_cff')
0067 process.load('Configuration.StandardSequences.EndOfProcess_cff')
0068
0069 process.maxEvents = cms.untracked.PSet(
0070 input = cms.untracked.int32(1000)
0071 )
0072
0073 process.MessageLogger.cerr.FwkReport.reportEvery = 5
0074 if hasattr(process,'MessageLogger'):
0075 process.MessageLogger.ValidHGCal=dict()
0076 process.MessageLogger.HGCalGeom=dict()
0077
0078
0079 process.source = cms.Source("EmptySource")
0080
0081 process.options = cms.untracked.PSet(
0082 wantSummary = cms.untracked.bool(True),
0083 numberOfConcurrentRuns = cms.untracked.uint32(1),
0084 numberOfStreams = cms.untracked.uint32(0),
0085 numberOfThreads = cms.untracked.uint32(1),
0086 printDependencies = cms.untracked.bool(False),
0087 sizeOfStackForThreadsInKB = cms.optional.untracked.uint32,
0088 )
0089
0090
0091 process.configurationMetadata = cms.untracked.PSet(
0092 version = cms.untracked.string(''),
0093 annotation = cms.untracked.string(''),
0094 name = cms.untracked.string('Applications')
0095 )
0096
0097
0098 process.output = cms.OutputModule("PoolOutputModule",
0099 splitLevel = cms.untracked.int32(0),
0100 eventAutoFlushCompressedSize = cms.untracked.int32(5242880),
0101 outputCommands = cms.untracked.vstring(
0102 'keep *_*hbhe*_*_*',
0103 'keep *_g4SimHits_*_*',
0104 'keep *_*HGC*_*_*',
0105 ),
0106 fileName = cms.untracked.string(fileCheck),
0107 dataset = cms.untracked.PSet(
0108 filterName = cms.untracked.string(''),
0109 dataTier = cms.untracked.string('GEN-SIM-DIGI-RAW-RECO')
0110 ),
0111 SelectEvents = cms.untracked.PSet(
0112 SelectEvents = cms.vstring('generation_step')
0113 )
0114 )
0115
0116
0117 if (runMode == 1):
0118 process.g4SimHits.Watchers = cms.VPSet(cms.PSet(
0119 SimG4HGCalValidation = cms.PSet(
0120 Names = cms.vstring(
0121 'HGCalEECellSensitive',
0122 'HGCalHESiliconCellSensitive',
0123 'HGCalHEScintillatorSensitive',
0124 ),
0125 Types = cms.vint32(0,0,0),
0126 DetTypes = cms.vint32(0,1,2),
0127 LabelLayerInfo = cms.string("HGCalInfoLayer"),
0128 Verbosity = cms.untracked.int32(0),
0129 ),
0130 type = cms.string('SimG4HGCalValidation')
0131 ))
0132 else:
0133 process.g4SimHits.Watchers = cms.VPSet(cms.PSet(
0134 SimG4HGCalValidation = cms.PSet(
0135 Names = cms.vstring(
0136 'HGCalEESensitive',
0137 'HGCalHESensitive',
0138 'HGCalHESiliconSensitive',
0139 'HGCalHEScintillatorSensitive',
0140 ),
0141 Types = cms.vint32(0,0,0,0),
0142 DetTypes = cms.vint32(0,1,1,2),
0143 LabelLayerInfo = cms.string("HGCalInfoLayer"),
0144 Verbosity = cms.untracked.int32(0),
0145 ),
0146 type = cms.string('SimG4HGCalValidation')
0147 ))
0148
0149
0150 process.genstepfilter.triggerConditions=cms.vstring("generation_step")
0151 from Configuration.AlCa.GlobalTag import GlobalTag
0152 process.GlobalTag = GlobalTag(process.GlobalTag, 'auto:phase2_realistic', '')
0153
0154 process.generator = cms.EDProducer("FlatRandomPtGunProducer",
0155 PGunParameters = cms.PSet(
0156 MaxPt = cms.double(20.0),
0157 MinPt = cms.double(20.0),
0158 PartID = cms.vint32(13),
0159 MaxEta = cms.double(3.0),
0160 MaxPhi = cms.double(3.14159265359),
0161 MinEta = cms.double(1.2),
0162 MinPhi = cms.double(-3.14159265359)
0163 ),
0164 Verbosity = cms.untracked.int32(0),
0165 psethack = cms.string('single muon pt 20'),
0166 AddAntiParticle = cms.bool(False),
0167 firstRun = cms.untracked.uint32(1)
0168 )
0169
0170
0171
0172 process.mix.digitizers = cms.PSet(process.theDigitizersValid)
0173
0174 process.ProductionFilterSequence = cms.Sequence(process.generator)
0175
0176
0177 process.generation_step = cms.Path(process.pgen)
0178 process.simulation_step = cms.Path(process.psim)
0179 process.genfiltersummary_step = cms.EndPath(process.genFilterSummary)
0180 process.digitisation_step = cms.Path(process.pdigi_valid)
0181 process.L1simulation_step = cms.Path(process.SimL1Emulator)
0182 process.L1TrackTrigger_step = cms.Path(process.L1TrackTrigger)
0183 process.digi2raw_step = cms.Path(process.DigiToRaw)
0184 process.raw2digi_step = cms.Path(process.RawToDigi)
0185 process.L1Reco_step = cms.Path(process.L1Reco)
0186 process.reconstruction_step = cms.Path(process.localreco)
0187 process.recosim_step = cms.Path(process.recosim)
0188 process.out_step = cms.EndPath(process.output)
0189
0190
0191 process.schedule = cms.Schedule(process.generation_step,
0192 process.simulation_step,
0193 process.digitisation_step,
0194 process.L1simulation_step,
0195 process.L1TrackTrigger_step,
0196 process.digi2raw_step,
0197
0198
0199
0200
0201 process.out_step
0202 )
0203
0204
0205 for path in process.paths:
0206 if getattr(process,path)._seq is not None: getattr(process,path)._seq = process.ProductionFilterSequence * getattr(process,path)._seq