Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2021-02-14 14:29:09

0001 import FWCore.ParameterSet.Config as cms
0002 
0003 process = cms.Process("PROD")
0004 
0005 process.load("SimG4CMS.Calo.pythiapdt_cfi")
0006 process.load('Configuration.StandardSequences.Generator_cff')
0007 process.load("IOMC.EventVertexGenerators.VtxSmearedGauss_cfi")
0008 process.load("Geometry.CMSCommonData.cmsSimIdealGeometryXML_cfi")
0009 process.load("Geometry.TrackerNumberingBuilder.trackerNumberingGeometry_cfi")
0010 process.load("Geometry.EcalCommonData.ecalSimulationParameters_cff")
0011 process.load("Geometry.HcalCommonData.hcalDDDSimConstants_cff")
0012 process.load("Configuration.StandardSequences.MagneticField_cff")
0013 process.load("Configuration.EventContent.EventContent_cff")
0014 process.load('Configuration.StandardSequences.Generator_cff')
0015 process.load('Configuration.StandardSequences.SimIdeal_cff')
0016 
0017 process.load("Configuration.StandardSequences.FrontierConditions_GlobalTag_cff")
0018 from Configuration.AlCa.autoCond import autoCond
0019 process.GlobalTag.globaltag = autoCond['run1_mc']
0020 
0021 process.MessageLogger = cms.Service("MessageLogger",
0022     cerr = cms.untracked.PSet(
0023         enable = cms.untracked.bool(False)
0024     ),
0025     cout = cms.untracked.PSet(
0026         DEBUG = cms.untracked.PSet(
0027             limit = cms.untracked.int32(0)
0028         ),
0029         G4cerr = cms.untracked.PSet(
0030             limit = cms.untracked.int32(-1)
0031         ),
0032         G4cout = cms.untracked.PSet(
0033             limit = cms.untracked.int32(-1)
0034         ),
0035         INFO = cms.untracked.PSet(
0036             limit = cms.untracked.int32(-1)
0037         ),
0038         SimG4CoreWatcher = cms.untracked.PSet(
0039             limit = cms.untracked.int32(-1)
0040         ),
0041         enable = cms.untracked.bool(True)
0042     ),
0043     debugModules = cms.untracked.vstring('*')
0044 )
0045 
0046 process.load("IOMC.RandomEngine.IOMC_cff")
0047 process.RandomNumberGeneratorService.generator.initialSeed = 456789
0048 process.RandomNumberGeneratorService.g4SimHits.initialSeed = 9876
0049 process.RandomNumberGeneratorService.VtxSmeared.initialSeed = 123456789
0050 
0051 process.maxEvents = cms.untracked.PSet(
0052     input = cms.untracked.int32(5)
0053 )
0054 
0055 process.source = cms.Source("LHESource",
0056     fileNames = cms.untracked.vstring('file:../data/monopole.lhe')
0057 )
0058 
0059 process.generator = cms.EDFilter("Pythia6HadronizerFilter",
0060     pythiaPylistVerbosity = cms.untracked.int32(1),
0061     pythiaHepMCVerbosity = cms.untracked.bool(True),
0062     comEnergy = cms.double(900.0),
0063     maxEventsToPrint = cms.untracked.int32(0),
0064     PythiaParameters = cms.PSet(
0065         pythiaUESettings = cms.vstring('MSTJ(11)=3     ! Choice of the fragmentation function', 
0066             'MSTJ(22)=2     ! Decay those unstable particles', 
0067             'PARJ(71)=10.   ! for which ctau  10 mm', 
0068             'MSTP(2)=1      ! which order running alphaS', 
0069             'MSTP(33)=0     ! no K factors in hard cross sections', 
0070             'MSTP(51)=10042 ! structure function chosen (external PDF CTEQ6L1)', 
0071             'MSTP(52)=2     ! work with LHAPDF', 
0072             'MSTP(81)=1     ! multiple parton interactions 1 is Pythia default', 
0073             'MSTP(82)=4     ! Defines the multi-parton model', 
0074             'MSTU(21)=1     ! Check on possible errors during program execution', 
0075             'PARP(82)=1.8387   ! pt cutoff for multiparton interactions', 
0076             'PARP(89)=1960. ! sqrts for which PARP82 is set', 
0077             'PARP(83)=0.5   ! Multiple interactions: matter distrbn parameter', 
0078             'PARP(84)=0.4   ! Multiple interactions: matter distribution parameter', 
0079             'PARP(90)=0.16  ! Multiple interactions: rescaling power', 
0080             'PARP(67)=2.5    ! amount of initial-state radiation', 
0081             'PARP(85)=1.0  ! gluon prod. mechanism in MI', 
0082             'PARP(86)=1.0  ! gluon prod. mechanism in MI', 
0083             'PARP(62)=1.25   ! ', 
0084             'PARP(64)=0.2    ! ', 
0085             'MSTP(91)=1      !', 
0086             'PARP(91)=2.1   ! kt distribution', 
0087             'PARP(93)=15.0  ! '),
0088         processParameters = cms.vstring('MSEL=0         ! User defined processes', 
0089             'PMAS(5,1)=4.8   ! b quark mass', 
0090             'PMAS(6,1)=172.5 ! t quark mass', 
0091             'MSTJ(1)=1       ! Fragmentation/hadronization on or off', 
0092             'MSTP(61)=1      ! Parton showering on or off'),
0093         parameterSets = cms.vstring('pythiaUESettings', 
0094             'processParameters')
0095     )
0096 )
0097 
0098 process.output = cms.OutputModule("PoolOutputModule",
0099     process.FEVTSIMEventContent,
0100     fileName = cms.untracked.string('simevent.root')
0101 )
0102 
0103 process.Timing = cms.Service("Timing")
0104 
0105 process.Tracer = cms.Service("Tracer")
0106 
0107 process.generation_step = cms.Path(process.pgen)
0108 process.simulation_step = cms.Path(process.psim)
0109 process.out_step = cms.EndPath(process.output)
0110 
0111 process.g4SimHits.Physics.type = 'SimG4Core/Physics/QGSP_FTFP_BERT_EML'
0112 process.g4SimHits.Physics.MonopoleCharge = 1
0113 process.g4SimHits.Physics.MonopoleDeltaRay = False
0114 process.g4SimHits.Physics.Verbosity = 1
0115 process.g4SimHits.TrackerSD.EnergyThresholdForPersistencyInGeV = 1.0
0116 process.g4SimHits.TrackerSD.EnergyThresholdForHistoryInGeV = 0.5
0117 process.g4SimHits.CaloSD.EminTrack = 5.0
0118 process.common_maximum_timex = cms.PSet(
0119     MaxTrackTime  = cms.double(1000.0),
0120     MaxTimeNames  = cms.vstring(),
0121     MaxTrackTimes = cms.vdouble(),
0122     DeadRegions   = cms.vstring(),
0123     CriticalEnergyForVacuum = cms.double(2.0),
0124     CriticalDensity         = cms.double(1e-15)
0125 )
0126 process.g4SimHits.StackingAction = cms.PSet(
0127     process.common_heavy_suppression,
0128     process.common_maximum_timex,
0129     TrackNeutrino = cms.bool(False),
0130     KillDeltaRay  = cms.bool(False),
0131     KillHeavy     = cms.bool(False),
0132     KillGamma     = cms.bool(False),
0133     GammaThreshold= cms.double(0.0001),  ## (MeV)
0134     SaveFirstLevelSecondary = cms.untracked.bool(True),
0135     SavePrimaryDecayProductsAndConversionsInTracker = cms.untracked.bool(True),
0136     SavePrimaryDecayProductsAndConversionsInCalo    = cms.untracked.bool(True),
0137     SavePrimaryDecayProductsAndConversionsInMuon    = cms.untracked.bool(True),
0138         RusRoGammaEnergyLimit  = cms.double(5.0), ## (MeV)
0139         RusRoEcalGamma         = cms.double(0.3),
0140         RusRoHcalGamma         = cms.double(0.3),
0141         RusRoMuonIronGamma     = cms.double(0.3),
0142         RusRoPreShowerGamma    = cms.double(0.3),
0143         RusRoCastorGamma       = cms.double(0.3),
0144         RusRoWorldGamma        = cms.double(0.3),
0145         RusRoNeutronEnergyLimit= cms.double(10.0), ## (MeV)
0146         RusRoEcalNeutron       = cms.double(0.1),
0147         RusRoHcalNeutron       = cms.double(0.1),
0148         RusRoMuonIronNeutron   = cms.double(0.1),
0149         RusRoPreShowerNeutron  = cms.double(0.1),
0150         RusRoCastorNeutron     = cms.double(0.1),
0151         RusRoWorldNeutron      = cms.double(0.1),
0152         RusRoProtonEnergyLimit = cms.double(0.0),
0153         RusRoEcalProton        = cms.double(1.0),
0154         RusRoHcalProton        = cms.double(1.0),
0155         RusRoMuonIronProton    = cms.double(1.0),
0156         RusRoPreShowerProton   = cms.double(1.0),
0157         RusRoCastorProton      = cms.double(1.0),
0158         RusRoWorldProton       = cms.double(1.0)
0159 )
0160 process.g4SimHits.SteppingAction = cms.PSet(
0161     process.common_maximum_timex,
0162     EkinNames               = cms.vstring(),
0163     EkinThresholds          = cms.vdouble(),
0164     EkinParticles           = cms.vstring(),
0165     Verbosity               = cms.untracked.int32(2)
0166 )
0167 process.g4SimHits.Watchers = cms.VPSet(
0168     cms.PSet(
0169       CheckForHighEtPhotons = cms.untracked.bool(False),
0170       G4Verbose = cms.untracked.bool(True),
0171       EventMin  = cms.untracked.int32(0),
0172       EventMax  = cms.untracked.int32(0),
0173       EventStep = cms.untracked.int32(1),
0174       TrackMin  = cms.untracked.int32(0),
0175       TrackMax  = cms.untracked.int32(99999999),
0176       TrackStep = cms.untracked.int32(1),
0177       VerboseLevel = cms.untracked.int32(2),
0178       PDGids    = cms.untracked.vint32(4110000,-4110000),
0179       DEBUG     = cms.untracked.bool(False),
0180       type      = cms.string('TrackingVerboseAction')
0181    )
0182 )
0183 
0184 # Schedule definition                                                          
0185 process.schedule = cms.Schedule(process.generation_step,
0186                                 process.simulation_step,
0187                                 process.out_step
0188                                 )
0189 
0190 # filter all path with the production filter sequence                          
0191 for path in process.paths:
0192         getattr(process,path)._seq = process.generator * getattr(process,path)._seq