CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_1/src/Configuration/StandardSequences/python/Generator_cff.py

Go to the documentation of this file.
00001 import FWCore.ParameterSet.Config as cms
00002 
00003 #
00004 # generator level info
00005 #
00006 from PhysicsTools.HepMCCandAlgos.genParticles_cfi import *
00007 from RecoJets.Configuration.RecoGenJets_cff import *
00008 from RecoMET.Configuration.RecoGenMET_cff import *
00009 from RecoJets.Configuration.GenJetParticles_cff import *
00010 from RecoMET.Configuration.GenMETParticles_cff import *
00011 # Vertex smearing
00012 #
00013 # There're several types of Vertex smearing module (Gauss, Flat, BeamProfile, Betafunc, BetafuncEarlyCollisions);
00014 # the cff's are available for each one :
00015 # Configuration/StandardSequences/data/VtxSmearedGauss.cff
00016 # Configuration/StandardSequences/data/VtxSmearedFlat.cff
00017 # Configuration/StandardSequences/data/VtxSmearedBeamProfile.cff
00018 # Configuration/StandardSequences/data/VtxSmearedBetafuncNominalCollision.cff
00019 # Configuration/StandardSequences/data/VtxSmearedBetafuncEarlyCollision.cff
00020 #
00021 # Either of the above returns label "VtxSmeared" that is already in the path below
00022 # (but not included here!!!)
00023 #   
00024 # Note 1 : one and only label is allowed for either of these modules,
00025 #          that is VtxSmeared (the reason is not to allow multiple smearing); 
00026 #          an attempt to use any other label will cause the Fwk to throw
00027 # Note 2 : because only one label is allowed, a user can have only one
00028 #          instance of the Vertex smearing module in a given Configuration;
00029 #          in other words, if you put in 2 or all 3 of the available cfi's, 
00030 #          the Fwk will throw
00031 #
00032 # Currently, we suggest using Betafunc vertex smearing in the desired LHC Configuration 
00033 #
00034 # The vertex smearing needs to be called before the particle candidate generation
00035 #
00036 # REMINDER : vertex smearing need a startup seed;
00037 # in your cfg, do NOT forget to give seeds via RandomNumberGeneratorService !!!
00038 # 
00039 # Example Configuration of the RandomNumberGeneratorService to appear in cfg:
00040 # service = RandomNumberGeneratorService
00041 # {
00042 #   untracked uint32 sourceSeed = 123456789
00043 #   PSet moduleSeeds =
00044 #   {
00045 #      untracked uint32 VtxSmeared = 98765432
00046 #   }
00047 # }
00048 VertexSmearing = cms.Sequence(cms.SequencePlaceholder("VtxSmeared"))
00049 GeneInfo = cms.Sequence(genParticles)
00050 genJetMET = cms.Sequence(genJetParticles*recoGenJets+genMETParticles*recoGenMET)
00051 pgen = cms.Sequence(cms.SequencePlaceholder("randomEngineStateProducer")+VertexSmearing+GeneInfo+genJetMET)
00052 
00053 # sequence for bare generator result only, without vertex smearing and analysis objects added
00054 
00055 pgen_genonly = cms.Sequence(cms.SequencePlaceholder("randomEngineStateProducer"))
00056 
00057 #
00058 # this sequence is intended for HI runs/studies;
00059 #
00060 
00061 hiGenJets = cms.Sequence(hiGenParticlesForJets*hiRecoGenJets)
00062 
00063 from PhysicsTools.HepMCCandAlgos.HiGenParticles_cfi import *
00064 
00065 pgen_hi = cms.Sequence(cms.SequencePlaceholder("randomEngineStateProducer")+VertexSmearing+hiGenParticles+hiGenJets)
00066 
00067 from SimGeneral.MixingModule.MatchVtx_cfi import *
00068 
00069 pgen_himix = cms.Sequence(cms.SequencePlaceholder("randomEngineStateProducer")+matchVtx+hiGenParticles+hiGenJets)
00070 
00071 fixGenInfo = cms.Sequence(GeneInfo * genJetMET)