CMS 3D CMS Logo

/data/doxygen/doxygen-1.7.3/gen/CMSSW_4_2_8/src/Validation/Performance/python/RestoreRandomSeedsSim.py

Go to the documentation of this file.
00001 #G.Benelli Feb 7 2008
00002 #This fragment is used to have the random generator seeds saved to test
00003 #simulation reproducibility. Anothe fragment then allows to run on the
00004 #root output of cmsDriver.py to test reproducibility.
00005 
00006 import FWCore.ParameterSet.Config as cms
00007 def customise(process):
00008     #Renaming the process
00009     process.__dict__['_Process__name']='SIMRestoringSeeds'
00010     #Skipping the first 3 events:
00011     process.PoolSource.skipEvents=cms.untracked.uint32(3)
00012     #Adding RandomNumberGeneratorService
00013     process.RandomNumberGeneratorService.restoreStateLabel=cms.untracked.string('rndmStore')
00014     process.RandomNumberGeneratorService.VtxSmeared.initialSeed = cms.untracked.uint32(1)
00015     process.RandomNumberGeneratorService.g4SimHits.initialSeed = cms.untracked.uint32(1)
00016     process.RandomNumberGeneratorService.mix.initialSeed = cms.untracked.uint32(1)
00017     process.RandomNumberGeneratorService.simSiPixelDigis.initialSeed = cms.untracked.uint32(1)
00018     process.RandomNumberGeneratorService.simSiStripDigis.initialSeed = cms.untracked.uint32(1)
00019     process.RandomNumberGeneratorService.simEcalUnsuppressedDigis.initialSeed = cms.untracked.uint32(1)
00020     process.RandomNumberGeneratorService.simHcalUnsuppressedDigis.initialSeed = cms.untracked.uint32(1)
00021     process.RandomNumberGeneratorService.simMuonCSCDigis.initialSeed = cms.untracked.uint32(1)
00022     process.RandomNumberGeneratorService.simMuonDTDigis.initialSeed = cms.untracked.uint32(1)
00023     process.RandomNumberGeneratorService.simMuonRPCDigis.initialSeed = cms.untracked.uint32(1)
00024     #This line is necessary to eliminate the "theSource" (i.e. source seed) in the python configuration!
00025     del process.RandomNumberGeneratorService.theSource
00026     #Adding the RandomEngine seeds to the content
00027     process.output.outputCommands.append("drop *_*_*_Sim")
00028     process.output.outputCommands.append("keep RandomEngineStates_*_*_*")
00029     process.g4SimHits_step=cms.Path(process.g4SimHits)
00030     #Modifying the schedule:
00031     #First delete the current one:
00032     del process.schedule[:]
00033     #Then add the wanted sequences
00034     process.schedule.append(process.g4SimHits_step)
00035     process.schedule.append(process.out_step)
00036     #Adding SimpleMemoryCheck service:
00037     process.SimpleMemoryCheck=cms.Service("SimpleMemoryCheck",
00038                                           ignoreTotal=cms.untracked.int32(1),
00039                                           oncePerEventMode=cms.untracked.bool(True))
00040     #Adding Timing service:
00041     process.Timing=cms.Service("Timing")
00042     return(process)