1 import FWCore.ParameterSet.Config
as cms
3 process = cms.Process(
"EcalTBH4GenSimDigi")
5 process.load(
"FWCore.MessageLogger.MessageLogger_cfi")
7 process.load(
"SimGeneral.HepPDTESSource.pythiapdt_cfi")
9 process.RandomNumberGeneratorService = cms.Service(
"RandomNumberGeneratorService",
10 saveFileName = cms.untracked.string(
''),
12 initialSeed = cms.untracked.uint32(123456789),
13 engineName = cms.untracked.string(
'HepJamesRandom')
15 VtxSmeared = cms.PSet(
16 initialSeed = cms.untracked.uint32(98765432),
17 engineName = cms.untracked.string(
'HepJamesRandom')
20 initialSeed = cms.untracked.uint32(11),
21 engineName = cms.untracked.string(
'HepJamesRandom')
23 SimEcalTBG4Object = cms.PSet(
24 initialSeed = cms.untracked.uint32(12),
25 engineName = cms.untracked.string(
'HepJamesRandom')
28 initialSeed = cms.untracked.uint32(12345),
29 engineName = cms.untracked.string(
'HepJamesRandom')
33 process.randomEngineStateProducer = cms.EDProducer(
"RandomEngineStateProducer")
36 process.maxEvents = cms.untracked.PSet(
37 input = cms.untracked.int32(1000)
42 process.load(
"Geometry.EcalTestBeam.TBH4_2007_GeometryIdeal_cfi")
46 process.load(
"MagneticField.Engine.uniformMagneticField_cfi")
48 process.source = cms.Source(
"EmptySource")
51 process.load(
"SimG4CMS.EcalTestBeam.ee_PositionParticleGun_cff")
53 process.generator = cms.EDProducer(
"FlatRandomEGunProducer",
54 PGunParameters = cms.PSet(
55 process.common_beam_direction_parameters,
56 PartID = cms.vint32(11),
57 MinE = cms.double(119.99),
58 MaxE = cms.double(120.01)
60 Verbosity = cms.untracked.int32(1),
62 psethack = cms.string(
'single electron'),
63 AddAntiParticle = cms.bool(
False),
66 process.ProductionFilterSequence = cms.Sequence(process.generator)
74 process.VtxSmeared = cms.EDProducer(
"BeamProfileVtxGenerator",
75 process.common_beam_direction_parameters,
77 BeamSigmaX = cms.double(2.4),
78 BeamSigmaY = cms.double(2.4),
79 GaussianProfile = cms.bool(
False),
82 File = cms.string(
'beam.profile'),
83 UseFile = cms.bool(
False),
84 TimeOffset = cms.double(0.)
89 process.load(
"SimG4Core.Application.g4SimHits_cfi")
91 process.g4SimHits.UseMagneticField = cms.bool(
False)
92 process.g4SimHits.Physics.DefaultCutValue = 1.
93 process.g4SimHits.NonBeamEvent = cms.bool(
True)
94 process.g4SimHits.Generator.HepMCProductLabel = cms.string(
'generatorSmeared')
95 process.g4SimHits.Generator.ApplyPCuts = cms.bool(
False)
96 process.g4SimHits.Generator.ApplyEtaCuts = cms.bool(
True)
97 process.g4SimHits.Generator.ApplyPhiCuts = cms.bool(
False)
98 process.g4SimHits.Generator.MaxEtaCut = cms.double(2.5)
99 process.g4SimHits.Generator.MinEtaCut = cms.double(0.0)
100 process.g4SimHits.CaloSD.CorrectTOFBeam = cms.bool(
True)
101 process.g4SimHits.CaloSD.BeamPosition = cms.double(-26733.5)
102 process.g4SimHits.CaloTrkProcessing.TestBeam = cms.bool(
True)
103 process.g4SimHits.StackingAction.MaxTrackTime = cms.double(10000.)
104 process.g4SimHits.SteppingAction.MaxTrackTime = cms.double(10000.)
105 process.g4SimHits.CaloSD.TmaxHit = cms.double(10000.)
106 process.g4SimHits.CaloSD.TmaxHits = cms.vdouble(10000.,10000.,10000.,10000.,10000.)
108 process.g4SimHits.Watchers = cms.VPSet(cms.PSet(
109 type = cms.string(
'EcalTBH4Trigger'),
110 verbose = cms.untracked.bool(
False),
112 trigEvents = cms.untracked.int32(25)
118 process.SimEcalTBG4Object = cms.EDProducer(
"EcalTBMCInfoProducer",
119 process.common_beam_direction_parameters,
120 CrystalMapFile = cms.FileInPath(
'Geometry/EcalTestBeam/data/BarrelSM1CrystalCenterElectron120GeV.dat'),
121 moduleLabelVtx = cms.untracked.string(
'generatorSmeared')
126 process.SimEcalTBHodoscope = cms.EDProducer(
"TBHodoActiveVolumeRawInfoProducer")
130 process.SimEcalEventHeader = cms.EDProducer(
"FakeTBEventHeaderProducer",
131 EcalTBInfoLabel = cms.untracked.string(
'SimEcalTBG4Object')
138 process.load(
"SimGeneral.MixingModule.mixNoPU_cfi")
142 process.load(
"CalibCalorimetry.EcalTrivialCondModules.EcalTrivialCondRetrieverTB_cfi")
146 process.load(
"SimCalorimetry.EcalTestBeam.ecaldigi_testbeam_cfi")
147 process.mix.digitizers.ecal.doReadout =
False
151 process.output = cms.OutputModule(
"PoolOutputModule",
152 outputCommands = cms.untracked.vstring(
'keep *',
153 'drop PSimHits_g4SimHits_*_Sim',
154 'keep PCaloHits_g4SimHits_EcalHitsEE_Sim',
155 'keep PCaloHits_g4SimHits_CaloHitsTk_Sim',
156 'keep PCaloHits_g4SimHits_EcalTBH4BeamHits_Sim'),
157 fileName = cms.untracked.string(
'ECALH4TB_detsim_digi.root')
162 process.doSimHits = cms.Sequence(process.ProductionFilterSequence*process.VtxSmeared*process.g4SimHits)
163 process.doSimTB = cms.Sequence(process.SimEcalTBG4Object*process.SimEcalTBHodoscope*process.SimEcalEventHeader)
164 process.doEcalDigis = cms.Sequence(process.mix)
165 process.p1 = cms.Path(process.doSimHits*process.doSimTB*process.doEcalDigis)
166 process.outpath = cms.EndPath(process.output)
171 process.MessageLogger.destinations=cms.untracked.vstring(
'cout'
175 process.MessageLogger.categories=cms.untracked.vstring(
'FwkJob'
186 ,
'BeamProfileVtxGenerator'
189 process.MessageLogger.debugModules = cms.untracked.vstring(
'g4SimHits',
'generatorSmeared')
192 process.MessageLogger.G4msg = cms.untracked.PSet(
193 noTimeStamps = cms.untracked.bool(
True)
195 ,threshold = cms.untracked.string(
'INFO')
197 ,INFO = cms.untracked.PSet(limit = cms.untracked.int32(0))
198 ,FwkReport = cms.untracked.PSet(limit = cms.untracked.int32(0))
199 ,FwkSummary = cms.untracked.PSet(limit = cms.untracked.int32(0))
200 ,Root_NoDictionary = cms.untracked.PSet(limit = cms.untracked.int32(0))
201 ,FwkJob = cms.untracked.PSet(limit = cms.untracked.int32(0))
202 ,TimeReport = cms.untracked.PSet(limit = cms.untracked.int32(0))
203 ,TimeModule = cms.untracked.PSet(limit = cms.untracked.int32(0))
204 ,TimeEvent = cms.untracked.PSet(limit = cms.untracked.int32(0))
205 ,MemoryCheck = cms.untracked.PSet(limit = cms.untracked.int32(0))
211 ,PhysicsList = cms.untracked.PSet(limit = cms.untracked.int32(-1))
212 ,G4cout = cms.untracked.PSet(limit = cms.untracked.int32(99999))
213 ,G4cerr = cms.untracked.PSet(limit = cms.untracked.int32(99999))
214 ,BeamProfileVtxGenerator = cms.untracked.PSet(limit = cms.untracked.int32(-1))
219 process.options = cms.untracked.PSet(
220 wantSummary = cms.untracked.bool(
True)