1 import FWCore.ParameterSet.Config
as cms
8 pfPileUpIsoPFBRECO = pfPileUp.clone( PFCandidates =
'particleFlowPtrs' )
9 from Configuration.ProcessModifiers.pp_on_AA_cff
import pp_on_AA
10 pp_on_AA.toModify(pfPileUpIsoPFBRECO, Enable =
False)
12 pfNoPileUpIsoPFBRECO = pfNoPileUp.clone( topCollection =
'pfPileUpIsoPFBRECO',
13 bottomCollection =
'particleFlowPtrs')
14 pfNoPileUpIsoPFBRECOTask = cms.Task(
18 pfNoPileUpIsoPFBRECOSequence = cms.Sequence(pfNoPileUpIsoPFBRECOTask)
22 pfPileUpPFBRECO = pfPileUp.clone( PFCandidates =
'particleFlowPtrs' )
23 pfNoPileUpPFBRECO = pfNoPileUp.clone( topCollection =
'pfPileUpPFBRECO',
24 bottomCollection =
'particleFlowPtrs')
25 pfNoPileUpPFBRECOTask = cms.Task(
29 pfNoPileUpPFBRECOSequence = cms.Sequence(pfNoPileUpPFBRECOTask)
32 pfAllNeutralHadronsPFBRECO = pfAllNeutralHadrons.clone( src =
'pfNoPileUpIsoPFBRECO' )
34 pfAllChargedHadronsPFBRECO = pfAllChargedHadrons.clone( src =
'pfNoPileUpIsoPFBRECO' )
36 pfAllPhotonsPFBRECO = pfAllPhotons.clone( src =
'pfNoPileUpIsoPFBRECO' )
38 pfAllMuonsPFBRECO = pfAllMuons.clone( src =
'pfNoPileUpPFBRECO' )
39 pfAllMuonsClonesPFBRECO = pfAllMuonsClones.clone( src =
'pfAllMuonsPFBRECO' )
41 pfAllElectronsPFBRECO = pfAllElectrons.clone( src =
'pfNoMuonPFBRECO' )
42 pfAllElectronsClonesPFBRECO = pfAllElectronsClones.clone( src =
'pfAllElectronsPFBRECO' )
44 pfAllChargedParticlesPFBRECO = pfAllChargedParticles.clone( src =
'pfNoPileUpIsoPFBRECO' )
46 pfAllNeutralHadronsAndPhotonsPFBRECO = pfAllNeutralHadronsAndPhotons.clone( src =
'pfNoPileUpIsoPFBRECO' )
47 pfPileUpAllChargedParticlesPFBRECO = pfAllChargedParticles.clone( src =
'pfPileUpIsoPFBRECO' )
48 pfSortByTypePFBRECOTask = cms.Task(
49 pfAllNeutralHadronsPFBRECO,
50 pfAllChargedHadronsPFBRECO,
53 pfAllChargedParticlesPFBRECO,
55 pfPileUpAllChargedParticlesPFBRECO,
56 pfAllNeutralHadronsAndPhotonsPFBRECO
61 pfSortByTypePFBRECOSequence = cms.Sequence(pfSortByTypePFBRECOTask)
63 pfParticleSelectionPFBRECOTask = cms.Task(
64 pfNoPileUpIsoPFBRECOTask,
69 pfNoPileUpPFBRECOTask,
70 pfSortByTypePFBRECOTask
72 pfParticleSelectionPFBRECOSequence = cms.Sequence(pfParticleSelectionPFBRECOTask)
75 pfSelectedPhotonsPFBRECO = pfSelectedPhotons.clone( src =
'pfAllPhotonsPFBRECO' )
78 pfIsolatedPhotonsPFBRECO = pfIsolatedPhotons.clone( src =
'pfSelectedPhotonsPFBRECO',
79 isolationValueMapsCharged = cms.VInputTag( cms.InputTag(
"phPFIsoValueCharged04PFIdPFBRECO") ),
80 isolationValueMapsNeutral = cms.VInputTag( cms.InputTag(
"phPFIsoValueNeutral04PFIdPFBRECO"),
81 cms.InputTag(
"phPFIsoValueGamma04PFIdPFBRECO") ),
82 deltaBetaIsolationValueMap =
'phPFIsoValuePU04PFIdPFBRECO' )
83 pfPhotonPFBRECOSequence = cms.Sequence(
84 pfSelectedPhotonsPFBRECO +
85 pfPhotonIsolationPFBRECOSequence +
87 pfIsolatedPhotonsPFBRECO
91 pfMuonsFromVertexPFBRECO = pfMuonsFromVertex.clone( src =
'pfAllMuonsPFBRECO' )
93 pfIsolatedMuonsPFBRECO = pfIsolatedMuons.clone( src =
'pfMuonsFromVertexPFBRECO' )
94 pfMuonsPFBRECO = pfIsolatedMuonsPFBRECO.clone(cut = cms.string(
"pt > 5 & muonRef.isAvailable()"))
95 pfMuonPFBRECOSequence = cms.Sequence(
97 pfMuonsFromVertexPFBRECO +
98 pfIsolatedMuonsPFBRECO+
103 pfElectronsFromVertexPFBRECO = pfElectronsFromVertex.clone( src =
'pfAllElectronsPFBRECO' )
105 pfIsolatedElectronsPFBRECO = pfIsolatedElectrons.clone( src =
'pfElectronsFromVertexPFBRECO' )
106 pfElectronsPFBRECO = pfIsolatedElectronsPFBRECO.clone( cut = cms.string(
" pt > 5 & gsfElectronRef.isAvailable() & gsfTrackRef.hitPattern().numberOfLostHits('MISSING_INNER_HITS')<2"))
107 pfElectronPFBRECOSequence = cms.Sequence(
108 pfAllElectronsPFBRECO +
109 pfElectronsFromVertexPFBRECO +
110 pfIsolatedElectronsPFBRECO +
114 from CommonTools.ParticleFlow.Tools.jetTools
import jetAlgo
116 pfJetsPFBRECO.src =
'pfNoElectronJMEPFBRECO'
117 pfJetsPtrsPFBRECO = cms.EDProducer(
"PFJetFwdPtrProducer",
118 src=cms.InputTag(
"pfJetsPFBRECO")
120 pfJetPFBRECOSequence = cms.Sequence(
128 pfMETPFBRECO = pfMET.clone( srcJets =
'pfJetsPFBRECO' )
142 pfNoMuonPFBRECO = pfNoMuon.clone( topCollection =
'pfIsolatedMuonsPFBRECO',
143 bottomCollection =
'pfNoPileUpPFBRECO' )
144 pfNoMuonJMEPFBRECO = pfNoMuonJME.clone( topCollection =
'pfIsolatedMuonsPFBRECO' )
146 pfNoElectronPFBRECO = pfNoElectron.clone( topCollection =
'pfIsolatedElectronsPFBRECO',
147 bottomCollection =
'pfNoMuonPFBRECO' )
148 pfNoElectronJMEPFBRECO = pfNoElectronJME.clone( topCollection =
'pfIsolatedElectronsPFBRECO',
149 bottomCollection =
'pfNoMuonJMEPFBRECO' )
150 pfNoElectronJMEClonesPFBRECO = pfNoElectronJMEClones.clone( src =
'pfNoElectronJMEPFBRECO' )
152 pfNoJetPFBRECO = pfNoJet.clone( topCollection =
'pfJetsPtrsPFBRECO',
153 bottomCollection =
'pfNoElectronJMEPFBRECO' )
155 pfNoTauPFBRECO = pfNoTau.clone ( bottomCollection =
'pfJetsPtrsPFBRECO' )
156 pfNoTauClonesPFBRECO = pfNoTauClones.clone ( src =
'pfNoTauPFBRECO' )
161 PFBRECO = cms.Sequence(
163 pfParticleSelectionPFBRECOSequence +
164 pfNoPileUpJMESequence +
166 pfPhotonPFBRECOSequence +
167 pfMuonPFBRECOSequence +
170 pfElectronPFBRECOSequence +
171 pfNoElectronPFBRECO +
172 pfNoElectronJMEPFBRECO +
173 pfNoElectronJMEClonesPFBRECO+
174 pfJetPFBRECOSequence +