1 import FWCore.ParameterSet.Config
as cms
6 process.patMuons.isoDeposits = cms.PSet()
7 process.patElectrons.isoDeposits = cms.PSet()
8 process.patTaus.isoDeposits = cms.PSet()
9 process.patPhotons.isoDeposits = cms.PSet()
11 process.patMuons.embedTrack =
True
12 process.patMuons.embedCombinedMuon =
True
13 process.patMuons.embedMuonBestTrack =
True
14 process.patMuons.embedStandAloneMuon =
True
15 process.patMuons.embedPickyMuon =
False
16 process.patMuons.embedTpfmsMuon =
False
17 process.patMuons.embedDytMuon =
False
20 process.patElectrons.embedGsfElectronCore =
False
21 process.patElectrons.embedSuperCluster =
False
22 process.patElectrons.embedPflowSuperCluster =
False
23 process.patElectrons.embedSeedCluster =
False
24 process.patElectrons.embedBasicClusters =
False
25 process.patElectrons.embedPreshowerClusters =
False
26 process.patElectrons.embedPflowBasicClusters =
False
27 process.patElectrons.embedPflowPreshowerClusters =
False
28 process.patElectrons.embedRecHits =
False
29 process.patElectrons.electronSource = cms.InputTag(
"reducedEgamma",
"reducedGedGsfElectrons")
30 process.patElectrons.electronIDSources = cms.PSet(
33 eidRobustLoose = cms.InputTag(
"reducedEgamma",
"eidRobustLoose"),
34 eidRobustTight = cms.InputTag(
"reducedEgamma",
"eidRobustTight"),
35 eidLoose = cms.InputTag(
"reducedEgamma",
"eidLoose"),
36 eidTight = cms.InputTag(
"reducedEgamma",
"eidTight"),
37 eidRobustHighEnergy = cms.InputTag(
"reducedEgamma",
"eidRobustHighEnergy"),
39 process.patElectrons.addPFClusterIso = cms.bool(
True)
40 process.patElectrons.ecalPFClusterIsoMap = cms.InputTag(
"reducedEgamma",
"eleEcalPFClusIso")
41 process.patElectrons.hcalPFClusterIsoMap = cms.InputTag(
"reducedEgamma",
"eleHcalPFClusIso")
43 process.elPFIsoDepositChargedPAT.src = cms.InputTag(
"reducedEgamma",
"reducedGedGsfElectrons")
44 process.elPFIsoDepositChargedAllPAT.src = cms.InputTag(
"reducedEgamma",
"reducedGedGsfElectrons")
45 process.elPFIsoDepositNeutralPAT.src = cms.InputTag(
"reducedEgamma",
"reducedGedGsfElectrons")
46 process.elPFIsoDepositGammaPAT.src = cms.InputTag(
"reducedEgamma",
"reducedGedGsfElectrons")
47 process.elPFIsoDepositPUPAT.src = cms.InputTag(
"reducedEgamma",
"reducedGedGsfElectrons")
49 process.patPhotons.embedSuperCluster =
False
50 process.patPhotons.embedSeedCluster =
False
51 process.patPhotons.embedBasicClusters =
False
52 process.patPhotons.embedPreshowerClusters =
False
53 process.patPhotons.embedRecHits =
False
54 process.patPhotons.addPFClusterIso = cms.bool(
True)
55 process.patPhotons.ecalPFClusterIsoMap = cms.InputTag(
"reducedEgamma",
"phoEcalPFClusIso")
56 process.patPhotons.hcalPFClusterIsoMap = cms.InputTag(
"reducedEgamma",
"phoHcalPFClusIso")
57 process.patPhotons.photonSource = cms.InputTag(
"reducedEgamma",
"reducedGedPhotons")
58 process.patPhotons.electronSource = cms.InputTag(
"reducedEgamma",
"reducedGedGsfElectrons")
59 process.patPhotons.photonIDSources = cms.PSet(
60 PhotonCutBasedIDLoose = cms.InputTag(
'reducedEgamma',
61 'PhotonCutBasedIDLoose'),
62 PhotonCutBasedIDTight = cms.InputTag(
'reducedEgamma',
63 'PhotonCutBasedIDTight')
66 process.phPFIsoDepositChargedPAT.src = cms.InputTag(
"reducedEgamma",
"reducedGedPhotons")
67 process.phPFIsoDepositChargedAllPAT.src = cms.InputTag(
"reducedEgamma",
"reducedGedPhotons")
68 process.phPFIsoDepositNeutralPAT.src = cms.InputTag(
"reducedEgamma",
"reducedGedPhotons")
69 process.phPFIsoDepositGammaPAT.src = cms.InputTag(
"reducedEgamma",
"reducedGedPhotons")
70 process.phPFIsoDepositPUPAT.src = cms.InputTag(
"reducedEgamma",
"reducedGedPhotons")
72 process.selectedPatJets.cut = cms.string(
"pt > 10")
73 process.selectedPatMuons.cut = cms.string(
"pt > 5 || isPFMuon || (pt > 3 && (isGlobalMuon || isStandAloneMuon || numberOfMatches > 0 || muonID('RPCMuLoose')))")
74 process.selectedPatElectrons.cut = cms.string(
"")
75 process.selectedPatTaus.cut = cms.string(
"pt > 18. && tauID('decayModeFindingNewDMs')> 0.5")
76 process.selectedPatPhotons.cut = cms.string(
"")
80 from PhysicsTools.PatAlgos.slimming.applySubstructure_cff
import applySubstructure
85 from PhysicsTools.PatAlgos.tools.trigTools
import switchOnTriggerStandAlone
87 process.patTrigger.packTriggerPathNames = cms.bool(
True)
92 from PhysicsTools.PatUtils.tools.runMETCorrectionsAndUncertainties
import runMetCorAndUncForMiniAODProduction
94 jetCollUnskimmed=
"patJets")
97 from PhysicsTools.PatAlgos.tools.metTools
import addMETCollection
98 addMETCollection(process,
99 labelName =
"patCaloMet",
100 metSource =
"caloMetM"
104 process.noHFCands = cms.EDFilter(
"GenericPFCandidateSelector",
105 src=cms.InputTag(
"particleFlow"),
106 cut=cms.string(
"abs(pdgId)!=1 && abs(pdgId)!=2 && abs(eta)<3.0")
109 pfCandColl=cms.InputTag(
"noHFCands"),
110 recoMetFromPFCs=
True,
111 jetSelection=
"pt>15 && abs(eta)<3.",
115 process.load(
'PhysicsTools.PatAlgos.slimming.slimmedMETs_cfi')
116 process.slimmedMETsNoHF = process.slimmedMETs.clone()
117 process.slimmedMETsNoHF.src = cms.InputTag(
"patMETsNoHF")
118 process.slimmedMETsNoHF.rawVariation = cms.InputTag(
"patPFMetNoHF")
119 process.slimmedMETsNoHF.t1Uncertainties = cms.InputTag(
"patPFMetT1%sNoHF")
120 process.slimmedMETsNoHF.t01Variation = cms.InputTag(
"patPFMetT0pcT1NoHF")
121 process.slimmedMETsNoHF.t1SmearedVarsAndUncs = cms.InputTag(
"patPFMetT1Smear%sNoHF")
122 process.slimmedMETsNoHF.tXYUncForRaw = cms.InputTag(
"patPFMetTxyNoHF")
123 process.slimmedMETsNoHF.tXYUncForT1 = cms.InputTag(
"patPFMetT1TxyNoHF")
124 process.slimmedMETsNoHF.tXYUncForT01 = cms.InputTag(
"patPFMetT0pcT1TxyNoHF")
125 process.slimmedMETsNoHF.tXYUncForT1Smear = cms.InputTag(
"patPFMetT1SmearTxyNoHF")
126 process.slimmedMETsNoHF.tXYUncForT01Smear = cms.InputTag(
"patPFMetT0pcT1SmearTxyNoHF")
127 del process.slimmedMETsNoHF.caloMET
132 if not hasattr( process,
'pfImpactParameterTagInfos' ):
133 process.load(
'RecoBTag.ImpactParameter.pfImpactParameterTagInfos_cfi')
134 if not hasattr( process,
'pfSecondaryVertexTagInfos' ):
135 process.load(
'RecoBTag.SecondaryVertex.pfSecondaryVertexTagInfos_cfi')
136 process.patJets.userData.userFunctions = cms.vstring(
137 '?(tagInfoCandSecondaryVertex("pfSecondaryVertex").nVertices()>0)?(tagInfoCandSecondaryVertex("pfSecondaryVertex").secondaryVertex(0).p4.M):(0)',
138 '?(tagInfoCandSecondaryVertex("pfSecondaryVertex").nVertices()>0)?(tagInfoCandSecondaryVertex("pfSecondaryVertex").secondaryVertex(0).numberOfSourceCandidatePtrs):(0)',
139 '?(tagInfoCandSecondaryVertex("pfSecondaryVertex").nVertices()>0)?(tagInfoCandSecondaryVertex("pfSecondaryVertex").flightDistance(0).value):(0)',
140 '?(tagInfoCandSecondaryVertex("pfSecondaryVertex").nVertices()>0)?(tagInfoCandSecondaryVertex("pfSecondaryVertex").flightDistance(0).significance):(0)',
141 '?(tagInfoCandSecondaryVertex("pfSecondaryVertex").nVertices()>0)?(tagInfoCandSecondaryVertex("pfSecondaryVertex").secondaryVertex(0).p4.x):(0)',
142 '?(tagInfoCandSecondaryVertex("pfSecondaryVertex").nVertices()>0)?(tagInfoCandSecondaryVertex("pfSecondaryVertex").secondaryVertex(0).p4.y):(0)',
143 '?(tagInfoCandSecondaryVertex("pfSecondaryVertex").nVertices()>0)?(tagInfoCandSecondaryVertex("pfSecondaryVertex").secondaryVertex(0).p4.z):(0)',
144 '?(tagInfoCandSecondaryVertex("pfSecondaryVertex").nVertices()>0)?(tagInfoCandSecondaryVertex("pfSecondaryVertex").secondaryVertex(0).vertex.x):(0)',
145 '?(tagInfoCandSecondaryVertex("pfSecondaryVertex").nVertices()>0)?(tagInfoCandSecondaryVertex("pfSecondaryVertex").secondaryVertex(0).vertex.y):(0)',
146 '?(tagInfoCandSecondaryVertex("pfSecondaryVertex").nVertices()>0)?(tagInfoCandSecondaryVertex("pfSecondaryVertex").secondaryVertex(0).vertex.z):(0)',
148 process.patJets.userData.userFunctionLabels = cms.vstring(
'vtxMass',
'vtxNtracks',
'vtx3DVal',
'vtx3DSig',
'vtxPx',
'vtxPy',
'vtxPz',
'vtxPosX',
'vtxPosY',
'vtxPosZ')
149 process.patJets.tagInfoSources = cms.VInputTag(cms.InputTag(
"pfSecondaryVertexTagInfos"))
150 process.patJets.addTagInfos = cms.bool(
True)
153 process.load(
"RecoJets.JetProducers.PileupJetID_cfi")
154 process.patJets.userData.userFloats.src = [ cms.InputTag(
"pileupJetId:fullDiscriminant"), ]
155 process.patJets.userData.userInts.src = [ cms.InputTag(
"pileupJetId:fullId"), ]
158 process.caloJetMap = cms.EDProducer(
"RecoJetDeltaRValueMapProducer",
159 src = process.patJets.jetSource,
160 matched = cms.InputTag(
"ak4CaloJets"),
161 distMax = cms.double(0.4),
162 values = cms.vstring(
'pt',
'emEnergyFraction'),
163 valueLabels = cms.vstring(
'pt',
'emEnergyFraction'),
164 lazyParser = cms.bool(
True) )
165 process.patJets.userData.userFloats.src += [ cms.InputTag(
"caloJetMap:pt"), cms.InputTag(
"caloJetMap:emEnergyFraction") ]
168 from RecoEgamma.EgammaTools.egammaObjectModificationsInMiniAOD_cff
import egamma_modifications
169 process.slimmedElectrons.modifierConfig.modifications = egamma_modifications
170 process.slimmedPhotons.modifierConfig.modifications = egamma_modifications
173 electron_ids = [
'RecoEgamma.ElectronIdentification.Identification.cutBasedElectronID_PHYS14_PU20bx25_V2_cff',
174 'RecoEgamma.ElectronIdentification.Identification.cutBasedElectronID_Spring15_25ns_V1_cff',
175 'RecoEgamma.ElectronIdentification.Identification.cutBasedElectronID_Spring15_50ns_V2_cff',
176 'RecoEgamma.ElectronIdentification.Identification.heepElectronID_HEEPV60_cff',
177 'RecoEgamma.ElectronIdentification.Identification.mvaElectronID_Spring15_25ns_nonTrig_V1_cff',
178 'RecoEgamma.ElectronIdentification.Identification.mvaElectronID_Spring15_25ns_Trig_V1_cff',
179 'RecoEgamma.ElectronIdentification.Identification.mvaElectronID_Spring15_50ns_Trig_V1_cff']
181 process.egmGsfElectronIDs.physicsObjectSrc = \
182 cms.InputTag(
"reducedEgamma",
"reducedGedGsfElectrons")
183 process.electronMVAValueMapProducer.src = \
184 cms.InputTag(
'reducedEgamma',
'reducedGedGsfElectrons')
185 process.electronRegressionValueMapProducer.src = \
186 cms.InputTag(
'reducedEgamma',
'reducedGedGsfElectrons')
187 for idmod
in electron_ids:
191 photon_ids = [
'RecoEgamma.PhotonIdentification.Identification.cutBasedPhotonID_Spring15_25ns_V1_cff',
192 'RecoEgamma.PhotonIdentification.Identification.cutBasedPhotonID_Spring15_50ns_V1_cff',
193 'RecoEgamma.PhotonIdentification.Identification.mvaPhotonID_Spring15_25ns_nonTrig_V2p1_cff',
194 'RecoEgamma.PhotonIdentification.Identification.mvaPhotonID_Spring15_50ns_nonTrig_V2p1_cff']
196 process.egmPhotonIDs.physicsObjectSrc = \
197 cms.InputTag(
"reducedEgamma",
"reducedGedPhotons")
198 process.photonIDValueMapProducer.src = \
199 cms.InputTag(
"reducedEgamma",
"reducedGedPhotons")
200 process.photonRegressionValueMapProducer.src = \
201 cms.InputTag(
"reducedEgamma",
"reducedGedPhotons")
202 process.photonIDValueMapProducer.particleBasedIsolation = \
203 cms.InputTag(
"reducedEgamma",
"reducedPhotonPfCandMap")
204 process.photonMVAValueMapProducer.src = \
205 cms.InputTag(
'reducedEgamma',
'reducedGedPhotons')
206 for idmod
in photon_ids:
211 from RecoTauTag.Configuration.boostedHPSPFTaus_cfi
import addBoostedTaus
216 process.load(
'RecoJets.JetProducers.ak4PFJetsPuppi_cfi')
218 process.ak4PFJetsPuppi.doAreaFastjet =
True
221 process.ak4PFJetsPuppiTracksAssociatorAtVertex = cms.EDProducer(
"JetTracksAssociatorAtVertex",
223 jets = cms.InputTag(
"ak4PFJetsPuppi")
225 process.patJetPuppiCharge = cms.EDProducer(
"JetChargeProducer",
226 src = cms.InputTag(
"ak4PFJetsPuppiTracksAssociatorAtVertex"),
227 var = cms.string(
'Pt'),
228 exp = cms.double(1.0)
231 addJetCollection(process, postfix =
"", labelName =
'Puppi', jetSource = cms.InputTag(
'ak4PFJetsPuppi'),
232 jetCorrections = (
'AK4PFPuppi', [
'L2Relative',
'L3Absolute'],
''),
233 algo=
'AK', rParam = 0.4, btagDiscriminators = map(
lambda x: x.value() ,process.patJets.discriminatorSources)
236 process.patJetGenJetMatchPuppi.matched =
'slimmedGenJets'
238 process.patJetsPuppi.jetChargeSource = cms.InputTag(
"patJetPuppiCharge")
240 process.selectedPatJetsPuppi.cut = cms.string(
"pt > 15")
242 process.load(
'PhysicsTools.PatAlgos.slimming.slimmedJets_cfi')
243 process.slimmedJetsPuppi = process.slimmedJets.clone()
244 process.slimmedJetsPuppi.src = cms.InputTag(
"selectedPatJetsPuppi")
245 process.slimmedJetsPuppi.packedPFCandidates = cms.InputTag(
"packedPFCandidates")
249 from PhysicsTools.PatAlgos.slimming.puppiForMET_cff
import makePuppies
253 pfCandColl=cms.InputTag(
"puppiForMET"),
254 jetCollUnskimmed=
"slimmedJetsPuppi",
255 recoMetFromPFCs=
True,
256 jetFlavor=
"AK4PFPuppi",
260 process.load(
'PhysicsTools.PatAlgos.slimming.slimmedMETs_cfi')
261 process.slimmedMETsPuppi = process.slimmedMETs.clone()
262 process.slimmedMETsPuppi.src = cms.InputTag(
"patMETsPuppi")
263 process.slimmedMETsPuppi.rawVariation = cms.InputTag(
"patPFMetPuppi")
264 process.slimmedMETsPuppi.t1Uncertainties = cms.InputTag(
"patPFMetT1%sPuppi")
265 process.slimmedMETsPuppi.t01Variation = cms.InputTag(
"patPFMetT0pcT1Puppi")
266 process.slimmedMETsPuppi.t1SmearedVarsAndUncs = cms.InputTag(
"patPFMetT1Smear%sPuppi")
267 process.slimmedMETsPuppi.tXYUncForRaw = cms.InputTag(
"patPFMetTxyPuppi")
268 process.slimmedMETsPuppi.tXYUncForT1 = cms.InputTag(
"patPFMetT1TxyPuppi")
269 process.slimmedMETsPuppi.tXYUncForT01 = cms.InputTag(
"patPFMetT0pcT1TxyPuppi")
270 process.slimmedMETsPuppi.tXYUncForT1Smear = cms.InputTag(
"patPFMetT1SmearTxyPuppi")
271 process.slimmedMETsPuppi.tXYUncForT01Smear = cms.InputTag(
"patPFMetT0pcT1SmearTxyPuppi")
272 del process.slimmedMETsPuppi.caloMET
278 process.load(
'PhysicsTools.PatAlgos.slimming.slimmedAddPileupInfo_cfi')
280 process.muonMatch.matched =
"prunedGenParticles"
281 process.electronMatch.matched =
"prunedGenParticles"
282 process.electronMatch.src = cms.InputTag(
"reducedEgamma",
"reducedGedGsfElectrons")
283 process.photonMatch.matched =
"prunedGenParticles"
284 process.photonMatch.src = cms.InputTag(
"reducedEgamma",
"reducedGedPhotons")
285 process.tauMatch.matched =
"prunedGenParticles"
286 process.tauGenJets.GenParticles =
"prunedGenParticles"
288 process.tauMatchBoosted.matched =
"prunedGenParticles"
289 process.tauGenJetsBoosted.GenParticles =
"prunedGenParticles"
290 process.patJetPartons.particles =
"prunedGenParticles"
291 process.patJetPartonMatch.matched =
"prunedGenParticles"
292 process.patJetPartonMatch.mcStatus = [ 3, 23 ]
293 process.patJetGenJetMatch.matched =
"slimmedGenJets"
294 process.patJetGenJetMatchAK8.matched =
"slimmedGenJetsAK8"
295 process.patMuons.embedGenMatch =
False
296 process.patElectrons.embedGenMatch =
False
297 process.patPhotons.embedGenMatch =
False
298 process.patTaus.embedGenMatch =
False
299 process.patTausBoosted.embedGenMatch =
False
300 process.patJets.embedGenPartonMatch =
False
302 process.patJetFlavourAssociation.rParam = 0.4
305 out.dropMetaData = cms.untracked.string(
'ALL')
306 out.fastCloning= cms.untracked.bool(
False)
307 out.overrideInputFileSplitLevels = cms.untracked.bool(
True)
308 out.compressionAlgorithm = cms.untracked.string(
'LZMA')
312 runOnData( process, outputModules = [] )
def runMetCorAndUncForMiniAODProduction