File indexing completed on 2024-07-16 02:43:16
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011 import FWCore.ParameterSet.Config as cms
0012 import os, sys, importlib, re
0013 import FWCore.ParameterSet.VarParsing as VarParsing
0014
0015
0016
0017 options = VarParsing.VarParsing('standard')
0018 options.register('type',
0019 "DDD",
0020 VarParsing.VarParsing.multiplicity.singleton,
0021 VarParsing.VarParsing.varType.string,
0022 "type of operations: DDD, DD4hep")
0023 options.register('geometry',
0024 "D110",
0025 VarParsing.VarParsing.multiplicity.singleton,
0026 VarParsing.VarParsing.varType.string,
0027 "geometry of operations: D95, D96, D98, D99, D100, D101, D102, D103, D104, D105, D106, D107, D108, D109, D110, D111, D112, D113, D114, D115")
0028 options.register('detector',
0029 "Tracker",
0030 VarParsing.VarParsing.multiplicity.singleton,
0031 VarParsing.VarParsing.varType.string)
0032
0033
0034 options.parseArguments()
0035
0036 print(options)
0037
0038
0039
0040
0041 from Configuration.Eras.Era_Phase2C17I13M9_cff import Phase2C17I13M9
0042
0043 if (options.type == "DDD"):
0044 process = cms.Process("PrintMaterialBudget",Phase2C17I13M9)
0045 geomFile = "Configuration.Geometry.GeometryExtended2026" + options.geometry + "Reco_cff"
0046 else:
0047 from Configuration.ProcessModifiers.dd4hep_cff import dd4hep
0048 process = cms.Process("PrintMaterialBudget",Phase2C17I13M9,dd4hep)
0049 geomFile = "Configuration.Geometry.GeometryDD4hepExtended2026" + options.geometry + "Reco_cff"
0050
0051 print("Geometry file Name: ", geomFile)
0052 print("Detector : ", options.detector)
0053
0054 process.load(geomFile)
0055 process.load('FWCore.MessageService.MessageLogger_cfi')
0056
0057 process.MessageLogger.cerr.enable = False
0058 process.MessageLogger.files.MatBudget = dict(extension = "txt")
0059 process.MessageLogger.G4cout=dict()
0060
0061 process.maxEvents = cms.untracked.PSet(
0062 input = cms.untracked.int32(1)
0063 )
0064
0065 process.load('SimGeneral.HepPDTESSource.pdt_cfi')
0066 process.load('IOMC.EventVertexGenerators.VtxSmearedFlat_cfi')
0067 process.load('GeneratorInterface.Core.generatorSmeared_cfi')
0068
0069 process.source = cms.Source("EmptySource")
0070
0071 process.generator = cms.EDProducer("FlatRandomPtGunProducer",
0072 PGunParameters = cms.PSet(
0073 PartID = cms.vint32(13),
0074 MinEta = cms.double(-2.5),
0075 MaxEta = cms.double(2.5),
0076 MinPhi = cms.double(-3.14159265359),
0077 MaxPhi = cms.double(3.14159265359),
0078 MinPt = cms.double(9.99),
0079 MaxPt = cms.double(10.01)
0080 ),
0081 AddAntiParticle = cms.bool(False),
0082 Verbosity = cms.untracked.int32(0),
0083 firstRun = cms.untracked.uint32(1)
0084 )
0085
0086 process.RandomNumberGeneratorService = cms.Service("RandomNumberGeneratorService",
0087 generator = cms.PSet(
0088 initialSeed = cms.untracked.uint32(123456789),
0089 engineName = cms.untracked.string('HepJamesRandom')
0090 ),
0091 VtxSmeared = cms.PSet(
0092 engineName = cms.untracked.string('HepJamesRandom'),
0093 initialSeed = cms.untracked.uint32(98765432)
0094 ),
0095 g4SimHits = cms.PSet(
0096 initialSeed = cms.untracked.uint32(11),
0097 engineName = cms.untracked.string('HepJamesRandom')
0098 )
0099 )
0100
0101 process.load('SimG4Core.Application.g4SimHits_cfi')
0102
0103 process.p1 = cms.Path(process.generator*process.VtxSmeared*process.generatorSmeared*process.g4SimHits)
0104
0105 process.g4SimHits.Physics.type = 'SimG4Core/Physics/DummyPhysics'
0106 process.g4SimHits.UseMagneticField = False
0107 process.g4SimHits.Physics.DummyEMPhysics = True
0108 process.g4SimHits.Physics.DefaultCutValue = 10.
0109 process.g4SimHits.Watchers = cms.VPSet(cms.PSet(
0110 Name = cms.untracked.string(options.detector),
0111 type = cms.string('PrintMaterialBudgetInfo')
0112 ))