Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2023-03-17 11:25:04

0001 ###############################################################################
0002 # Way to use this:
0003 #   cmsRun runPrintSolid_cfg.py type=DDD
0004 #
0005 #   Options for type DDD, DD4hep
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 ### SETUP OPTIONS
0014 options = VarParsing.VarParsing('standard')
0015 options.register('type',
0016                  "DDD",
0017                   VarParsing.VarParsing.multiplicity.singleton,
0018                   VarParsing.VarParsing.varType.string,
0019                   "type of operations: DDD, DD4hep")
0020 
0021 ### get and parse the command line arguments
0022 options.parseArguments()
0023 
0024 print(options)
0025 
0026 #####p###############################################################
0027 # Use the options
0028 
0029 if (options.type == "DDD"):
0030     from Configuration.Eras.Era_Run3_DDD_cff import Run3_DDD
0031     process = cms.Process('G4PrintGeometry',Run3_DDD)
0032     process.load('Configuration.Geometry.GeometryExtended2021Reco_cff')
0033 else:
0034     from Configuration.Eras.Era_Run3_dd4hep_cff import Run3_dd4hep
0035     process = cms.Process('G4PrintGeometry',Run3_dd4hep)
0036     process.load('Configuration.Geometry.GeometryDD4hepExtended2021Reco_cff')
0037 
0038 process.load('SimGeneral.HepPDTESSource.pdt_cfi')
0039 
0040 process.load('IOMC.RandomEngine.IOMC_cff')
0041 process.load('IOMC.EventVertexGenerators.VtxSmearedFlat_cfi')
0042 process.load('GeneratorInterface.Core.generatorSmeared_cfi')
0043 process.load('FWCore.MessageService.MessageLogger_cfi')
0044 process.load('SimG4Core.Application.g4SimHits_cfi')
0045 process.load('SimG4Core.PrintGeomInfo.printGeomSolids_cff')
0046 
0047 if hasattr(process,'MessageLogger'):
0048     process.MessageLogger.G4cout=dict()
0049     process.MessageLogger.G4cerr=dict()
0050     process.MessageLogger.PrintGeom=dict()
0051 
0052 process.source = cms.Source("EmptySource")
0053 
0054 process.generator = cms.EDProducer("FlatRandomEGunProducer",
0055     PGunParameters = cms.PSet(
0056         PartID = cms.vint32(14),
0057         MinEta = cms.double(-3.5),
0058         MaxEta = cms.double(3.5),
0059         MinPhi = cms.double(-3.14159265359),
0060         MaxPhi = cms.double(3.14159265359),
0061         MinE   = cms.double(9.99),
0062         MaxE   = cms.double(10.01)
0063     ),
0064     AddAntiParticle = cms.bool(False),
0065     Verbosity       = cms.untracked.int32(0),
0066     firstRun        = cms.untracked.uint32(1)
0067 )
0068 
0069 process.maxEvents = cms.untracked.PSet(
0070     input = cms.untracked.int32(1)
0071 )
0072 
0073 process.g4SimHits.UseMagneticField = False
0074 process.g4SimHits.Physics.type = 'SimG4Core/Physics/DummyPhysics'
0075 process.g4SimHits.Physics.DummyEMPhysics = True
0076 process.g4SimHits.Physics.DefaultCutValue = 10. 
0077 process.g4SimHits.LHCTransport = False
0078 
0079 process.p1 = cms.Path(process.generator*process.VtxSmeared*process.generatorSmeared*process.g4SimHits*process.printGeomSolids)