1 import FWCore.ParameterSet.Config
as cms
4 from PhysicsTools.NanoAOD.simpleCandidateFlatTableProducer_cfi
import simpleCandidateFlatTableProducer
11 process.nanoTableTaskCommon.remove(process.electronTablesTask)
12 process.nanoTableTaskCommon.remove(process.lowPtElectronTablesTask)
13 process.nanoTableTaskCommon.remove(process.photonTablesTask)
14 process.nanoTableTaskCommon.remove(process.metTablesTask)
15 process.nanoTableTaskCommon.remove(process.tauTablesTask)
16 process.nanoTableTaskCommon.remove(process.boostedTauTablesTask)
17 process.nanoTableTaskCommon.remove(process.jetPuppiTablesTask)
18 process.nanoTableTaskCommon.remove(process.jetAK8TablesTask)
20 process.nanoTableTaskFS.remove(process.electronMCTask)
21 process.nanoTableTaskFS.remove(process.lowPtElectronMCTask)
22 process.nanoTableTaskFS.remove(process.photonMCTask)
23 process.nanoTableTaskFS.remove(process.jetMCTask)
24 process.nanoTableTaskFS.remove(process.tauMCTask)
25 process.nanoTableTaskFS.remove(process.boostedTauMCTask)
26 process.nanoTableTaskFS.remove(process.metMCTable)
27 process.nanoTableTaskFS.remove(process.ttbarCatMCProducersTask)
28 process.nanoTableTaskFS.remove(process.ttbarCategoryTableTask)
34 setattr(proc, pfTracks, cms.EDProducer(
"pfTracksProducer",
35 PFCands=cms.InputTag(
"packedPFCandidates"),
36 lostTracks=cms.InputTag(
"lostTracks"),
37 TrkHPurity = cms.bool(
False),
38 trkSelection = cms.string(
"bestTrack.pt()>5 && abs(bestTrack.eta())<2.4 "),
42 pfTracksTable =
"pfTracksTable" 43 setattr(proc, pfTracksTable, cms.EDProducer(
"SimpleTrackFlatTableProducer",
44 src = cms.InputTag(
"pfTracks"),
45 cut = cms.string(
"pt > 15"),
46 name = cms.string(
"Track"),
47 doc = cms.string(
"General tracks with pt > 15 GeV"),
48 singleton = cms.bool(
False),
49 extension = cms.bool(
False),
50 variables = cms.PSet(P3Vars,
51 dz =
Var(
"dz",float,doc=
"dz (with sign) wrt first PV, in cm",precision=10),
52 dxy =
Var(
"dxy",float,doc=
"dxy (with sign) wrt first PV, in cm",precision=10),
53 charge =
Var(
"charge", int, doc=
"electric charge"),
54 normChiSq =
Var(
"normalizedChi2", float, precision=14, doc=
"Chi^2/ndof"),
55 numberOfValidHits =
Var(
'numberOfValidHits()',
'int', precision=-1, doc=
'Number of valid hits in track'),
56 numberOfLostHits =
Var(
'numberOfLostHits()',
'int', precision=-1, doc=
'Number of lost hits in track'),
57 trackAlgo =
Var(
'algo()',
'int', precision=-1, doc=
'Track algo enum, check DataFormats/TrackReco/interface/TrackBase.h for details.'),
58 trackOriginalAlgo =
Var(
'originalAlgo()',
'int', precision=-1, doc=
'Track original algo enum'),
59 qualityMask =
Var(
'qualityMask()',
'int', precision=-1, doc=
'Quality mask of the track.'),
60 extraIdx =
Var(
'extra().key()',
'int', precision=-1, doc=
'Index of the TrackExtra in the original collection'),
61 vx =
Var(
'vx',
'float', precision=-1, doc=
'Track X position'),
62 vy =
Var(
'vy',
'float', precision=-1, doc=
'Track Y position'),
63 vz =
Var(
'vz',
'float', precision=-1, doc=
'Track Z position'),
68 pfTracksTask =
"pfTracksTask" 69 setattr(proc,pfTracksTask, cms.Task(
70 getattr(proc,pfTracks)
74 pfTracksTableTask =
"pfTracksTableTask" 75 setattr(proc,pfTracksTableTask, cms.Task(
76 getattr(proc,pfTracksTable)
79 proc.nanoTableTaskCommon.add(getattr(proc,pfTracksTask))
80 proc.nanoTableTaskCommon.add(getattr(proc,pfTracksTableTask))
88 muonWithVariables =
"muonWithVariables" 89 setattr(proc, muonWithVariables, cms.EDProducer(
"MuonSpecialVariables",
90 muonSrc=cms.InputTag(
"slimmedMuons"),
91 vertexSrc=cms.InputTag(
"offlineSlimmedPrimaryVertices"),
92 trkSrc=cms.InputTag(
"pfTracks"),
95 getattr(proc,
"muonTask").
add(getattr(proc,muonWithVariables))
97 proc.slimmedMuonsUpdated.src = cms.InputTag(
"muonWithVariables")
106 proc.muonTable.variables.standalonePt =
Var(
"? standAloneMuon().isNonnull() ? standAloneMuon().pt() : -1", float, doc =
"pt of the standalone muon", precision=14)
107 proc.muonTable.variables.standaloneEta =
Var(
"? standAloneMuon().isNonnull() ? standAloneMuon().eta() : -99", float, doc =
"eta of the standalone muon", precision=14)
108 proc.muonTable.variables.standalonePhi =
Var(
"? standAloneMuon().isNonnull() ? standAloneMuon().phi() : -99", float, doc =
"phi of the standalone muon", precision=14)
109 proc.muonTable.variables.standaloneCharge =
Var(
"? standAloneMuon().isNonnull() ? standAloneMuon().charge() : -99", float, doc =
"phi of the standalone muon", precision=14)
112 proc.muonTable.variables.innerTrackAlgo =
Var(
'? innerTrack().isNonnull() ? innerTrack().algo() : -99',
'int', precision=-1, doc=
'Track algo enum, check DataFormats/TrackReco/interface/TrackBase.h for details.')
113 proc.muonTable.variables.innerTrackOriginalAlgo =
Var(
'? innerTrack().isNonnull() ? innerTrack().originalAlgo() : -99',
'int', precision=-1, doc=
'Track original algo enum')
116 proc.muonTable.variables.pfAbsIso03_neu =
Var(
"pfIsolationR03().sumNeutralHadronEt",float,doc=
"PF absolute isolation dR=0.3, neutral component")
117 proc.muonTable.variables.pfAbsIso03_pho =
Var(
"pfIsolationR03().sumPhotonEt",float,doc=
"PF absolute isolation dR=0.3, photon component")
118 proc.muonTable.variables.pfAbsIso03_sumPU =
Var(
"pfIsolationR03().sumPUPt",float,doc=
"PF absolute isolation dR=0.3, pu component (no deltaBeta corrections)")
119 proc.muonTable.variables.absTrkIso03 =
Var(
"userFloat('absTrkiso03')",float,doc=
"Realtive Tracker Iso with cone size 0.3")
122 proc.muonTable.variables.pfAbsIso04_chg =
Var(
"pfIsolationR04().sumChargedHadronPt",float,doc=
"PF absolute isolation dR=0.4, charged component")
123 proc.muonTable.variables.pfAbsIso04_neu =
Var(
"pfIsolationR04().sumNeutralHadronEt",float,doc=
"PF absolute isolation dR=0.4, neutral component")
124 proc.muonTable.variables.pfAbsIso04_pho =
Var(
"pfIsolationR04().sumPhotonEt",float,doc=
"PF absolute isolation dR=0.4, photon component")
125 proc.muonTable.variables.pfAbsIso04_sumPU =
Var(
"pfIsolationR04().sumPUPt",float,doc=
"PF absolute isolation dR=0.4, pu component (no deltaBeta corrections)")
126 proc.muonTable.variables.absTrkIso04 =
Var(
"userFloat('absTrkiso04')",float,doc=
"Realtive Tracker Iso with cone size 0.4")
129 proc.muonTable.variables.miniPFAbsIso_chg =
Var(
"userFloat('miniIsoChg')",float,doc=
"mini PF absolute isolation, charged component")
130 proc.muonTable.variables.miniPFAbsIso_all =
Var(
"userFloat('miniIsoAll')",float,doc=
"mini PF absolute isolation, total (with scaled rho*EA PU corrections)")
131 proc.muonTable.variables.miniPFAbsIso_neu =
Var(
"miniPFIsolation().neutralHadronIso()",float,doc=
"mini PF absolute isolation, neutral component")
132 proc.muonTable.variables.miniPFAbsIso_pho =
Var(
"miniPFIsolation().photonIso()", float, doc=
"mini PF absolute isolation, photon component")
135 proc.muonTable.variables.tkAbsIso =
Var(
"isolationR03().sumPt",float,doc=
"Tracker-based absolute isolation dR=0.3 for highPt, trkIso",precision=6)
136 proc.muonTable.variables.pfAbsIso03_chg =
Var(
"pfIsolationR03().sumChargedHadronPt",float,doc=
"PF absolute isolation dR=0.3, charged component")
137 proc.muonTable.variables.pfAbsIso03_all =
Var(
"(pfIsolationR03().sumChargedHadronPt + max(pfIsolationR03().sumNeutralHadronEt + pfIsolationR03().sumPhotonEt - pfIsolationR03().sumPUPt/2,0.0))",float,doc=
"PF absolute isolation dR=0.3, total (deltaBeta corrections)")
138 proc.muonTable.variables.pfAbsIso04_all =
Var(
"(pfIsolationR04().sumChargedHadronPt + max(pfIsolationR04().sumNeutralHadronEt + pfIsolationR04().sumPhotonEt - pfIsolationR04().sumPUPt/2,0.0))",float,doc=
"PF absolute isolation dR=0.4, total (deltaBeta corrections)")
139 proc.muonTable.variables.jetAbsIso =
Var(
"?userCand('jetForLepJetVar').isNonnull()?(1./userFloat('ptRatio'))-1.:(pfIsolationR04().sumChargedHadronPt + max(pfIsolationR04().sumNeutralHadronEt + pfIsolationR04().sumPhotonEt - pfIsolationR04().sumPUPt/2,0.0))",float,doc=
"Absolute isolation in matched jet (1/ptRatio-1, pfRelIso04_all if no matched jet)",precision=8)
142 proc.muonTable.variables.expectedMatchedStations =
Var(
"expectedNnumberOfMatchedStations()",int,doc=
"Expected Number of Matched stations")
143 proc.muonTable.variables.RPCLayers =
Var(
"numberOfMatchedRPCLayers()",int,doc=
"Number of RPC Layers")
144 proc.muonTable.variables.stationMask =
Var(
"stationMask()",
"uint8",doc=
"Number of masked station")
145 proc.muonTable.variables.nShowers =
Var(
"numberOfShowers()",int,doc=
"Number of Showers")
150 proc.muonTable.variables.pixelLayers =
Var(
"? innerTrack().isNonnull() && innerTrack().isAvailable() ? innerTrack().hitPattern().pixelLayersWithMeasurement() : -99", float,doc=
"Number of Pixel Layers")
151 proc.muonTable.variables.pixelHits =
Var(
"? innerTrack().isNonnull() && innerTrack().isAvailable() ? innerTrack().hitPattern().numberOfValidPixelHits() : -99", float, doc=
"Numbr of valid pixel hits")
152 proc.muonTable.variables.muonStations =
Var(
"? outerTrack().isNonnull() && outerTrack().isAvailable() ? outerTrack().hitPattern().muonStationsWithValidHits() : -99", float, doc=
"No of valid hits in muon stations")
153 proc.muonTable.variables.DTHits =
Var(
"? outerTrack().isNonnull() && outerTrack().isAvailable() ? outerTrack().hitPattern().numberOfValidMuonDTHits() : -99", float, doc=
"No of valid hits in DT")
154 proc.muonTable.variables.CSCHits =
Var(
"? outerTrack().isNonnull() && outerTrack().isAvailable() ? outerTrack().hitPattern().numberOfValidMuonCSCHits() : -99", float, doc=
"No of valid hits in CSC")
155 proc.muonTable.variables.RPCHits =
Var(
"? outerTrack().isNonnull() && outerTrack().isAvailable() ? outerTrack().hitPattern().numberOfValidMuonRPCHits() : -99", float, doc=
"No of valid hits in RPC")
160 proc.muonTable.variables.trkChi2 =
Var(
"? globalTrack().isNonnull() ? globalTrack().normalizedChi2() : ? innerTrack().isNonnull() && innerTrack().isAvailable() ? innerTrack().normalizedChi2() : -99",float,doc=
"Normalized Chi Square from either globalTrack or innerTrack ")
161 proc.muonTable.variables.trkChi2_outerTrack =
Var(
"? outerTrack().isNonnull() && outerTrack().isAvailable() ? outerTrack().normalizedChi2() : -99",float,doc=
"Normalized Chi Square from outerTrack ")
162 proc.muonTable.variables.trkChi2_innerTrack =
Var(
"? innerTrack().isNonnull() && innerTrack().isAvailable() ? innerTrack().normalizedChi2() : -99",float,doc=
"Normalized Chi Square from outerTrack ")
166 proc.muonTable.variables.innerTrack_ptErr =
Var(
"? innerTrack().isNonnull() && innerTrack().isAvailable() ? innerTrack().ptError()/innerTrack().pt() : -99", float, doc=
"InnerTrack Pt Error")
167 proc.muonTable.variables.innerTrack_pt =
Var(
"? innerTrack().isNonnull() && innerTrack().isAvailable() ? innerTrack().pt(): -99", float, doc=
"InnerTrack Pt")
168 proc.muonTable.variables.innerTrack_eta =
Var(
"? innerTrack().isNonnull() && innerTrack().isAvailable() ? innerTrack().eta(): -99", float, doc=
"InnerrTrack Eta")
169 proc.muonTable.variables.innerTrack_phi =
Var(
"? innerTrack().isNonnull() && innerTrack().isAvailable() ? innerTrack().phi(): -99", float, doc=
"InnerTrack Phi")
170 proc.muonTable.variables.innerTrack_charge =
Var(
"? innerTrack().isNonnull() && innerTrack().isAvailable() ? innerTrack().charge(): -99", float, doc=
"InnerTrack charge")
171 proc.muonTable.variables.innerTrack_MuonHits =
Var(
"? innerTrack().isNonnull() ? innerTrack().hitPattern().numberOfValidMuonHits() : -99", float, doc =
"Number of valid Muon Hits from InnerTrack")
172 proc.muonTable.variables.innerTrack_validFraction =
Var(
"? innerTrack().isNonnull() && innerTrack().isAvailable() ? innerTrack().validFraction() : -99", float, doc=
"Inner Track Valid Fraction")
178 proc.muonTable.variables.innerTrackDxy =
Var(
"? userInt('isGoodVertex') ? userFloat('innerTrackDxy') : -99.9",float,doc =
"dxy from Primary Vertex calculated with Inner Track")
179 proc.muonTable.variables.innerTrackDz =
Var(
"? userInt('isGoodVertex') ? userFloat('innerTrackDz') : -99.9",float,doc=
"dz from Primary Vertex calculated with Inner Track")
183 proc.muonTable.variables.outerTrack_ptErr =
Var(
"? outerTrack().isNonnull() && outerTrack().isAvailable() ? outerTrack().ptError()/outerTrack().pt() : -99", float, doc=
"OuterTrack Pt Error")
184 proc.muonTable.variables.outerTrack_pt =
Var(
"? outerTrack().isNonnull() && outerTrack().isAvailable() ? outerTrack().pt(): -99", float, doc=
"OuterTrack Pt")
185 proc.muonTable.variables.outerTrack_eta =
Var(
"? outerTrack().isNonnull() && outerTrack().isAvailable() ? outerTrack().eta(): -99", float, doc=
"OuterTrack Eta")
186 proc.muonTable.variables.outerTrack_phi =
Var(
"? outerTrack().isNonnull() && outerTrack().isAvailable() ? outerTrack().phi(): -99", float, doc=
"OuterTrack Phi")
187 proc.muonTable.variables.outerTrack_charge =
Var(
"? outerTrack().isNonnull() && outerTrack().isAvailable() ? outerTrack().charge(): -99", float, doc=
"OuterTrack charge")
188 proc.muonTable.variables.outerTrack_MuonHits =
Var(
"? outerTrack().isNonnull() ? outerTrack().hitPattern().numberOfValidMuonHits() : -99", float, doc =
"Number of valid Muon Hits from OuterTrack")
193 proc.muonTable.variables.muonHits =
Var(
"? globalTrack().isNonnull() ? globalTrack().hitPattern().numberOfValidMuonHits() : ? innerTrack().isNonnull() && innerTrack().isAvailable() ? innerTrack().hitPattern().numberOfValidMuonHits() :-99",float,doc=
"Number of valid Muon Hits from either globalTrack or innerTrack")
194 proc.muonTable.variables.globalTrack_ptErr =
Var(
"? globalTrack().isNonnull() ? globalTrack().ptError()/globalTrack().pt() : -99", float, doc=
"GlobalTrack Pt Error")
195 proc.muonTable.variables.globalTrack_pt =
Var(
"? globalTrack().isNonnull() ? globalTrack().pt(): -99", float, doc=
"GlobalTrack Pt")
196 proc.muonTable.variables.globalTrack_eta =
Var(
"? globalTrack().isNonnull() ? globalTrack().eta(): -99", float, doc=
"GlobalTrack Eta")
197 proc.muonTable.variables.globalTrack_phi =
Var(
"? globalTrack().isNonnull() ? globalTrack().phi(): -99", float, doc=
"GlobalTrack Phi")
198 proc.muonTable.variables.globalTrack_charge =
Var(
"? globalTrack().isNonnull() ? globalTrack().charge(): -99", float, doc=
"GlobalTrack charge")
202 proc.muonTable.variables.best_pt =
Var(
"? muonBestTrack().isNonnull() && muonBestTrack().isAvailable() ? muonBestTrack().pt(): -99", float, doc=
"MuonBestTrack Pt")
203 proc.muonTable.variables.best_pterr =
Var(
"? muonBestTrack().isNonnull() && muonBestTrack().isAvailable() ? muonBestTrack().ptError() : -99", float, doc =
"pTerr from MuonBestTrack")
204 proc.muonTable.variables.best_eta =
Var(
"? muonBestTrack().isNonnull() && muonBestTrack().isAvailable() ? muonBestTrack().eta(): -99", float, doc=
"MuonBestrack Eta")
205 proc.muonTable.variables.best_phi =
Var(
"? muonBestTrack().isNonnull() && muonBestTrack().isAvailable() ? muonBestTrack().phi(): -99", float, doc=
"MuonBestTrack Phi")
206 proc.muonTable.variables.best_charge =
Var(
"? muonBestTrack().isNonnull() && muonBestTrack().isAvailable() ? muonBestTrack().charge(): -99", float, doc=
"MuonBestTrack charge")
209 proc.muonTable.variables.tuneP_pt =
Var(
"? tunePMuonBestTrack().isNonnull() && tunePMuonBestTrack().isAvailable() ? tunePMuonBestTrack().pt() : -99", float, doc =
"pT from tunePMuonBestTrack")
210 proc.muonTable.variables.tuneP_pterr =
Var(
"? tunePMuonBestTrack().isNonnull() && tunePMuonBestTrack().isAvailable() ? tunePMuonBestTrack().ptError() : -99", float, doc =
"pTerr from tunePMuonBestTrack")
211 proc.muonTable.variables.tuneP_eta =
Var(
"? tunePMuonBestTrack().isNonnull() && tunePMuonBestTrack().isAvailable() ? tunePMuonBestTrack().eta(): -99", float, doc=
"tunePMuonBestTrack Eta")
212 proc.muonTable.variables.tuneP_phi =
Var(
"? tunePMuonBestTrack().isNonnull() && tunePMuonBestTrack().isAvailable() ? tunePMuonBestTrack().phi(): -99", float, doc=
"tunePMuonBestTrack Phi")
213 proc.muonTable.variables.tuneP_charge =
Var(
"? tunePMuonBestTrack().isNonnull() && tunePMuonBestTrack().isAvailable() ? tunePMuonBestTrack().charge(): -99", float, doc=
"tunePMuonBestTrack() charge")
214 proc.muonTable.variables.tuneP_muonHits =
Var(
"? tunePMuonBestTrack().isNonnull() && tunePMuonBestTrack().isAvailable() ? tunePMuonBestTrack().hitPattern().numberOfValidMuonHits() : -99", int, doc=
"No of valid muon hists from tunePMuonBestTrack")
217 proc.muonTable.variables.tpfms_pt =
Var(
"? tpfmsTrack().isNonnull() && tpfmsTrack().isAvailable() ? tpfmsTrack().pt() : -99", float, doc =
"pT from tpfmsTrack")
218 proc.muonTable.variables.tpfms_pterr =
Var(
"? tpfmsTrack().isNonnull() && tpfmsTrack().isAvailable() ? tpfmsTrack().ptError() : -99", float, doc =
"pTerr from tpfmsTrack")
219 proc.muonTable.variables.tpfms_eta =
Var(
"? tpfmsTrack().isNonnull() && tpfmsTrack().isAvailable() ? tpfmsTrack().eta(): -99", float, doc=
"tpfmsTrack Eta")
220 proc.muonTable.variables.tpfms_phi =
Var(
"? tpfmsTrack().isNonnull() && tpfmsTrack().isAvailable() ? tpfmsTrack().phi(): -99", float, doc=
"tpfmsTrack Phi")
221 proc.muonTable.variables.tpfms_charge =
Var(
"? tpfmsTrack().isNonnull() && tpfmsTrack().isAvailable() ? tpfmsTrack().charge(): -99", float, doc=
"tpfmsTrack charge")
222 proc.muonTable.variables.tpfms_muonHits =
Var(
"? tpfmsTrack().isNonnull() && tpfmsTrack().isAvailable() ? tpfmsTrack().hitPattern().numberOfValidMuonHits() : -99", int, doc=
"No of valid muon hists from tpfmsTrack")
226 proc.muonTable.variables.picky_pt =
Var(
"? pickyTrack().isNonnull() && pickyTrack().isAvailable() ? pickyTrack().pt() : -99", float, doc =
"pT from pickyTrack")
227 proc.muonTable.variables.picky_pterr =
Var(
"? pickyTrack().isNonnull() && pickyTrack().isAvailable() ? pickyTrack().ptError() : -99", float, doc =
"pTerr from pickyTrack")
228 proc.muonTable.variables.picky_eta =
Var(
"? pickyTrack().isNonnull() && pickyTrack().isAvailable() ? pickyTrack().eta(): -99", float, doc=
"pickyTrack Eta")
229 proc.muonTable.variables.picky_phi =
Var(
"? pickyTrack().isNonnull() && pickyTrack().isAvailable() ? pickyTrack().phi(): -99", float, doc=
"pickyTrack Phi")
230 proc.muonTable.variables.picky_charge =
Var(
"? pickyTrack().isNonnull() && pickyTrack().isAvailable() ? pickyTrack().charge(): -99", float, doc=
"pickyTrack charge")
231 proc.muonTable.variables.picky_muonHits =
Var(
"? pickyTrack().isNonnull() && pickyTrack().isAvailable() ? pickyTrack().hitPattern().numberOfValidMuonHits() : -99", int, doc=
"No of valid muon hists from pickyTrack")
234 proc.muonTable.variables.dyt_pt =
Var(
"? dytTrack().isNonnull() && dytTrack().isAvailable() ? dytTrack().pt() : -99", float, doc =
"pT from dytTrack")
235 proc.muonTable.variables.dyt_pterr =
Var(
"? dytTrack().isNonnull() && dytTrack().isAvailable() ? dytTrack().ptError() : -99", float, doc =
"pTerr from dytTrack")
236 proc.muonTable.variables.dyt_eta =
Var(
"? dytTrack().isNonnull() && dytTrack().isAvailable() ? dytTrack().eta(): -99", float, doc=
"dytTrack Eta")
237 proc.muonTable.variables.dyt_phi =
Var(
"? dytTrack().isNonnull() && dytTrack().isAvailable() ? dytTrack().phi(): -99", float, doc=
"dytTrack Phi")
238 proc.muonTable.variables.dyt_charge =
Var(
"? dytTrack().isNonnull() && dytTrack().isAvailable() ? dytTrack().charge(): -99", float, doc=
"dytTrack charge")
239 proc.muonTable.variables.dyt_muonHits =
Var(
"? dytTrack().isNonnull() && dytTrack().isAvailable() ? dytTrack().hitPattern().numberOfValidMuonHits() : -99", int, doc=
"No of valid muon hists from dytTrack")
242 proc.muonTable.variables.positionChi2 =
Var(
"combinedQuality().chi2LocalPosition", float, doc=
"chi2 Local Position")
243 proc.muonTable.variables.momentumChi2 =
Var(
"combinedQuality().chi2LocalMomentum", float, doc=
"chi2 Local Momentum")
244 proc.muonTable.variables.trkKink =
Var(
"combinedQuality().trkKink", float, doc=
"Track Kink")
245 proc.muonTable.variables.glbKink =
Var(
"combinedQuality().glbKink", float, doc=
"Glb Kink")
246 proc.muonTable.variables.glbTrackProbability =
Var(
"combinedQuality().glbTrackProbability", float, doc=
"Glb Track Probability")
247 proc.muonTable.variables.trkRelChi2 =
Var(
"combinedQuality().trkRelChi2",float,doc=
"Track Rel Chi2")
250 proc.muonTable.variables.timAtIpInOutErr =
Var(
"time().timeAtIpInOutErr",float,doc=
"timAtIpInOutErr")
253 proc.muonTable.variables.isArbitratedTracker =
Var(
"userInt('isArbitratedTracker')", bool, doc =
"s Arbitrated Tracker")
256 proc.muonTable.variables.standaloneExtraIdx =
Var(
'? standAloneMuon().isNonnull() ? standAloneMuon().extra().key() : -99',
'int', precision=-1, doc=
'Index of the StandAloneTrack TrackExtra in the original collection')
257 proc.muonTable.variables.innerTrackExtraIdx =
Var(
'? innerTrack().isNonnull() ? innerTrack().extra().key() : -99',
'int', precision=-1, doc=
'Index of the innerTrack TrackExtra in the original collection')
260 proc.muonTable.variables.jetPtRatio =
Var(
"?userCand('jetForLepJetVar').isNonnull()?min(userFloat('ptRatio'),1.5):1.0/(1.0+(pfIsolationR04().sumChargedHadronPt + max(pfIsolationR04().sumNeutralHadronEt + pfIsolationR04().sumPhotonEt - pfIsolationR04().sumPUPt/2,0.0))/pt)", float, doc=
"ptRatio using the LepAware JEC approach, for muon MVA")
261 proc.muonTable.variables.jetDF =
Var(
"?userCand('jetForLepJetVar').isNonnull()?max(userCand('jetForLepJetVar').bDiscriminator('pfDeepFlavourJetTags:probbb')+userCand('jetForLepJetVar').bDiscriminator('pfDeepFlavourJetTags:probb')+userCand('jetForLepJetVar').bDiscriminator('pfDeepFlavourJetTags:problepb'),0.0):0.0",float,doc=
"b-tagging discriminator of the jet matched to the lepton, for muon MVA")
262 proc.muonTable.variables.jetCSVv2 =
Var(
"?userCand('jetForLepJetVar').isNonnull()?max(userCand('jetForLepJetVar').bDiscriminator('pfCombinedSecondaryVertexV2BJetTags'),0.0):0.0",float,doc=
"CSVv2 b-tagging discriminator of the jet matched to the lepton, for muon MVA")
266 proc.muonTable.variables.nsegments =
Var(
"userInt('nsegments')", int, doc =
"nsegments as of Spark-tool")
269 proc.muonTable.variables.simType =
Var(
"? simType() ? simType() : -99",int,doc=
"simType")
270 proc.muonTable.variables.simExtType =
Var(
"? simExtType() ? simExtType() : -99",int,doc=
"simExtType")
271 proc.muonTable.variables.simFlavour =
Var(
"? simFlavour() ? simFlavour() : -99",int,doc=
"simFlavour")
272 proc.muonTable.variables.simHeaviestMotherFlavour =
Var(
" ? simHeaviestMotherFlavour() ? simHeaviestMotherFlavour() : -99",int,doc=
"simHeaviestMotherFlavour")
273 proc.muonTable.variables.simPdgId =
Var(
"? simPdgId() ? simPdgId() : -99",int,doc=
"simPdgId")
274 proc.muonTable.variables.simMotherPdgId =
Var(
"? simMotherPdgId() ? simMotherPdgId() : -99",int,doc=
"simMotherPdgId")
275 proc.muonTable.variables.simBX =
Var(
"? simBX() ? simBX() : -99",int,doc=
"simBX")
276 proc.muonTable.variables.simProdRho =
Var(
"? simProdRho() ? simProdRho(): -99",float,doc=
"simProdRho")
277 proc.muonTable.variables.simProdZ =
Var(
"? simProdZ() ? simProdZ(): -99",float,doc=
"simProdZ")
278 proc.muonTable.variables.simPt =
Var(
"? simPt() ? simPt(): -99",float,doc=
"simPt")
279 proc.muonTable.variables.simEta =
Var(
"? simEta() ? simEta(): -99",float,doc=
"simEta")
280 proc.muonTable.variables.simPhi =
Var(
"? simPhi() ? simPhi(): -99",float,doc=
'simPhi')
283 proc.muonTable.variables.isRPC =
Var(
"isRPCMuon",bool,doc=
"muon is RPC muon")
288 process.triggerObjectTable.selections.Muon_POG = cms.PSet(
289 id = cms.int32(1313),
290 sel = cms.string(
"type(83) && pt > 5 && (coll('hltIterL3MuonCandidates') || (pt > 45 && coll('hltHighPtTkMuonCands')) || (pt > 95 && coll('hltOldL3MuonCandidates')))"),
291 l1seed = cms.string(
"type(-81)"), l1deltaR = cms.double(0.5),
292 l2seed = cms.string(
"type(83) && coll('hltL2MuonCandidates')"), l2deltaR = cms.double(0.3),
293 skipObjectsNotPassingQualityBits = cms.bool(
True),
294 qualityBits = cms.VPSet(
295 mksel(
"filter('hltTripleMuonL2PreFiltered0')",
"hltTripleMuonL2PreFiltered0"),
296 mksel(
"filter('hltTripleMuL3PreFiltered222')",
"hltTripleMuL3PreFiltered222"),
297 mksel(
"filter('hltJpsiMuonL3Filtered3p5')",
"hltJpsiMuonL3Filtered3p5"),
298 mksel(
"filter('hltVertexmumuFilterJpsiMuon3p5')",
"hltVertexmumuFilterJpsiMuon3p5"),
299 mksel(
"filter('hltL2fL1sDoubleMu0er15OSIorDoubleMu0er14OSIorDoubleMu4OSIorDoubleMu4p5OSL1Filtered0')",
"hltL2fL1sDoubleMu0er15OSIorDoubleMu0er14OSIorDoubleMu4OSIorDoubleMu4p5OSL1Filtered0"),
300 mksel(
"filter('hltDoubleMu4JpsiDisplacedL3Filtered')",
"hltDoubleMu4JpsiDisplacedL3Filtered"),
301 mksel(
"filter('hltDisplacedmumuFilterDoubleMu4Jpsi')",
"hltDisplacedmumuFilterDoubleMu4Jpsi"),
302 mksel(
"filter('hltJpsiTkVertexFilter')",
"hltJpsiTkVertexFilter"),
303 mksel(
"filter('hltL3crIsoL1sSingleMu22L1f0L2f10QL3f24QL3trkIsoFiltered0p07')",
"hltL3crIsoL1sSingleMu22L1f0L2f10QL3f24QL3trkIsoFiltered0p07"),
304 mksel(
"filter('hltL3crIsoL1sSingleMu22L1f0L2f10QL3f24QL3trkIsoFiltered0p08')",
"hltL3crIsoL1sSingleMu22L1f0L2f10QL3f24QL3trkIsoFiltered0p08"),
305 mksel(
"filter('hltL3fL1DoubleMu155fPreFiltered8')",
"hltL3fL1DoubleMu155fPreFiltered8"),
306 mksel(
"filter('hltL3fL1DoubleMu155fFiltered17')",
"hltL3fL1DoubleMu155fFiltered17"),
307 mksel(
"filter('hltDiMuon178RelTrkIsoFiltered0p4')",
"hltDiMuon178RelTrkIsoFiltered0p4"),
308 mksel(
"filter('hltDiMuon178RelTrkIsoFiltered0p4DzFiltered0p2')",
"hltDiMuon178RelTrkIsoFiltered0p4DzFiltered0p2"),
309 mksel(
"filter('hltDiMuon178RelTrkIsoVVLFiltered')",
"hltDiMuon178RelTrkIsoVVLFiltered"),
310 mksel(
"filter('hltDiMuon178RelTrkIsoVVLFilteredDzFiltered0p2')",
"hltDiMuon178RelTrkIsoVVLFilteredDzFiltered0p2"),
311 mksel(
"filter('hltDiMuon178Mass3p8Filtered')",
"hltDiMuon178Mass3p8Filtered"),
312 mksel(
"filter('hltL3fL1sMu22Or25L1f0L2f10QL3Filtered50Q')",
"hltL3fL1sMu22Or25L1f0L2f10QL3Filtered50Q"),
313 mksel(
"filter('hltL2fOldL1sMu22or25L1f0L2Filtered10Q')",
"hltL2fOldL1sMu22or25L1f0L2Filtered10Q"),
314 mksel(
"filter('hltL3fL1sMu22Or25L1f0L2f10QL3Filtered100Q')",
"hltL3fL1sMu22Or25L1f0L2f10QL3Filtered100Q"),
315 mksel(
"filter('hltL3fL1sMu25f0TkFiltered100Q')",
"hltL3fL1sMu25f0TkFiltered100Q"),
316 mksel(
"filter('hltL3fL1sMu15DQlqL1f0L2f10L3Filtered17')",
"hltL3fL1sMu15DQlqL1f0L2f10L3Filtered17"),
317 mksel(
"filter('hltL3fL1sMu1lqL1f0L2f10L3Filtered17TkIsoFiltered0p4')",
"hltL3fL1sMu1lqL1f0L2f10L3Filtered17TkIsoFiltered0p4"),
318 mksel(
"filter('hltL3fL1sMu1lqL1f0L2f10L3Filtered17TkIsoVVLFiltered')",
"hltL3fL1sMu1lqL1f0L2f10L3Filtered17TkIsoVVLFiltered"),
319 mksel(
"filter('hltL3fL1sMu5L1f0L2f5L3Filtered8')",
"hltL3fL1sMu5L1f0L2f5L3Filtered8"),
320 mksel(
"filter('hltL3fL1sMu5L1f0L2f5L3Filtered8TkIsoFiltered0p4')",
"hltL3fL1sMu5L1f0L2f5L3Filtered8TkIsoFiltered0p4"),
321 mksel(
"filter('hltL3fL1sMu5L1f0L2f5L3Filtered8TkIsoVVLFiltered')",
"hltL3fL1sMu5L1f0L2f5L3Filtered8TkIsoVVLFiltered"),
322 mksel(
"filter('hltL3fL1sMu15DQlqL1f0L2f10L3Filtered12')",
"hltL3fL1sMu15DQlqL1f0L2f10L3Filtered12"),
323 mksel(
"filter('hltL3fL1sMu15DQlqL1f0L2f10L3Filtered15')",
"hltL3fL1sMu15DQlqL1f0L2f10L3Filtered15"),
324 mksel(
"filter('hltL3fL1sMu15DQlqL1f0L2f10L3Filtered19')",
"hltL3fL1sMu15DQlqL1f0L2f10L3Filtered19"),
325 mksel(
"filter('hltL3fL1sMu15DQlqL1f0L2f10L3Filtered19')",
"hltL3fL1sMu15DQlqL1f0L2f10L3Filtered19")
334 process.genParticleTable.variables.pt =
Var(
"pt", float, precision=16)
335 process.genParticleTable.variables.eta =
Var(
"eta", float,precision=16)
336 process.genParticleTable.variables.phi =
Var(
"phi", float,precision=16)
def Custom_Muon_Task(process)
def Var(expr, valtype, doc=None, precision=-1)
def AddVariablesForMuon(proc)
def IncreaseGenPrecesion(process)
def PrepMuonCustomNanoAOD(process)
def mksel(selection, doc=None, bit=None)
void add(std::map< std::string, TH1 *> &h, TH1 *hist)
def AddTriggerObjectBits(process)