CMS 3D CMS Logo

particlelevel_cff.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
3 
4 
5 
6 ##################### User floats producers, selectors ##########################
7 
8 mergedGenParticles = cms.EDProducer("MergedGenParticleProducer",
9  inputPruned = cms.InputTag("prunedGenParticles"),
10  inputPacked = cms.InputTag("packedGenParticles"),
11 )
12 
13 genParticles2HepMC = cms.EDProducer("GenParticles2HepMCConverter",
14  genParticles = cms.InputTag("mergedGenParticles"),
15  genEventInfo = cms.InputTag("generator"),
16  signalParticlePdgIds = cms.vint32(),
17 )
18 
19 particleLevel = cms.EDProducer("ParticleLevelProducer",
20  src = cms.InputTag("genParticles2HepMC:unsmeared"),
21 
22  usePromptFinalStates = cms.bool(True), # for leptons, photons, neutrinos
23  excludePromptLeptonsFromJetClustering = cms.bool(False),
24  excludeNeutrinosFromJetClustering = cms.bool(True),
25 
26  particleMinPt = cms.double(0.),
27  particleMaxEta = cms.double(5.), # HF range. Maximum 6.0 on MiniAOD
28 
29  lepConeSize = cms.double(0.1), # for photon dressing
30  lepMinPt = cms.double(15.),
31  lepMaxEta = cms.double(2.5),
32 
33  jetConeSize = cms.double(0.4),
34  jetMinPt = cms.double(10.),
35  jetMaxEta = cms.double(999.),
36 
37  fatJetConeSize = cms.double(0.8),
38  fatJetMinPt = cms.double(170.),
39  fatJetMaxEta = cms.double(999.),
40 )
41 
42 
43 
44 ##################### Tables for final output and docs ##########################
45 rivetLeptonTable = cms.EDProducer("SimpleCandidateFlatTableProducer",
46  src = cms.InputTag("particleLevel:leptons"),
47  cut = cms.string(""),
48  name= cms.string("GenDressedLepton"),
49  doc = cms.string("Dressed leptons from Rivet-based ParticleLevelProducer"),
50  singleton = cms.bool(False), # the number of entries is variable
51  extension = cms.bool(False), # this is the main table
52  variables = cms.PSet(
53  P4Vars,
54  pdgId = Var("pdgId", int, doc="PDG id"),
55  )
56 )
57 
58 #rivetJetTable = cms.EDProducer("SimpleCandidateFlatTableProducer",
59 # src = cms.InputTag("particleLevel:jets"),
60 # cut = cms.string(""),
61 # name= cms.string("RivetJet"),
62 # doc = cms.string("AK4 jets from Rivet-based ParticleLevelProducer"),
63 # singleton = cms.bool(False), # the number of entries is variable
64 # extension = cms.bool(False),
65 # variables = cms.PSet(
66 # # Identical to GenJets, so we just extend their flavor information
67 # P4Vars,
68 # hadronFlavour = Var("pdgId", int, doc="PDG id"),
69 # )
70 #)
71 
72 #rivetFatJetTable = cms.EDProducer("SimpleCandidateFlatTableProducer",
73 # src = cms.InputTag("particleLevel:fatjets"),
74 # cut = cms.string(""),
75 # name= cms.string("GenFatJet"),
76 # doc = cms.string("AK8 jets from Rivet-based ParticleLevelProducer"),
77 # singleton = cms.bool(False), # the number of entries is variable
78 # extension = cms.bool(False), # this is the main table
79 # variables = cms.PSet(
80 # P4Vars,
81 # hadronFlavour = Var("pdgId", int, doc="PDG id"),
82 # )
83 #)
84 
85 #rivetTagTable = cms.EDProducer("SimpleCandidateFlatTableProducer",
86 # src = cms.InputTag("particleLevel:tags"),
87 # cut = cms.string(""),
88 # name= cms.string("RivetTag"),
89 # doc = cms.string("Tag particles from Rivet-based ParticleLevelProducer, momenta scaled down by 10e-20"),
90 # singleton = cms.bool(False), # the number of entries is variable
91 # extension = cms.bool(False), # this is the main table
92 # variables = cms.PSet(
93 # P4Vars,
94 # pdgId = Var("pdgId", int, doc="PDG id"),
95 # )
96 #)
97 
98 rivetMetTable = cms.EDProducer("SimpleCandidateFlatTableProducer",
99  src = cms.InputTag("particleLevel:mets"),
100  name = cms.string("MET"),
101  doc = cms.string("MET from Rivet-based ParticleLevelProducer in fiducial volume abs(eta)<5"),
102  singleton = cms.bool(True), # there's always exactly one MET per event
103  extension = cms.bool(True), # this is the main table
104  variables = cms.PSet(
105  fiducialGenPt = Var("pt", float, precision=10),
106  fiducialGenPhi = Var("phi", float, precision=10),
107  ),
108 )
109 
110 particleLevelSequence = cms.Sequence(mergedGenParticles + genParticles2HepMC + particleLevel)
111 particleLevelTables = cms.Sequence(rivetLeptonTable + rivetMetTable)
def Var(expr, valtype, compression=None, doc=None, mcOnly=False, precision=-1)
Definition: common_cff.py:20