CMS 3D CMS Logo

nanoDQM_cfi.py
Go to the documentation of this file.
1 # automatically generated by prepareDQM.py
2 import FWCore.ParameterSet.Config as cms
4 
5 nanoDQM = cms.EDAnalyzer("NanoAODDQM",
6  vplots = cms.PSet(
7  CaloMET = cms.PSet(
8  sels = cms.PSet(),
9  plots = cms.VPSet(
10  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
11  Plot1D('pt', 'pt', 20, 0, 400, 'pt'),
12  Plot1D('sumEt', 'sumEt', 20, 200, 3000, 'scalar sum of Et'),
13  )
14  ),
15  Electron = cms.PSet(
16  sels = cms.PSet(
17  Good = cms.string('pt > 15 && abs(dxy) < 0.2 && abs(dz) < 0.5 && cutBased >= 3 && miniPFRelIso_all < 0.4')
18  ),
19  plots = cms.VPSet(
20  Count1D('_size', 8, -0.5, 7.5, 'slimmedElectrons after basic selection (pt > 5 )'),
21  Plot1D('charge', 'charge', 3, -1.5, 1.5, 'electric charge'),
22  Plot1D('cleanmask', 'cleanmask', 1, 0.5, 1.5, 'simple cleaning mask with priority to leptons'),
23  Plot1D('convVeto', 'convVeto', 2, -0.5, 1.5, 'pass conversion veto'),
24  Plot1D('cutBased', 'cutBased', 5, -0.5, 4.5, 'cut-based ID (0:fail, 1:veto, 2:loose, 3:medium, 4:tight)'),
25  Plot1D('cutBased_HEEP', 'cutBased_HEEP', 2, -0.5, 1.5, 'cut-based HEEP ID'),
26  Plot1D('cutBased_HLTPreSel', 'cutBased_HLTPreSel', 2, -0.5, 1.5, 'cut-based HLT pre-selection ID'),
27  Plot1D('deltaEtaSC', 'deltaEtaSC', 20, -0.2, 0.2, 'delta eta (SC,ele) with sign'),
28  Plot1D('dr03EcalRecHitSumEt', 'dr03EcalRecHitSumEt', 20, 0, 30, 'Non-PF Ecal isolation within a delta R cone of 0.3 with electron pt > 35 GeV'),
29  Plot1D('dr03HcalDepth1TowerSumEt', 'dr03HcalDepth1TowerSumEt', 20, 0, 20, 'Non-PF Hcal isolation within a delta R cone of 0.3 with electron pt > 35 GeV'),
30  Plot1D('dr03TkSumPt', 'dr03TkSumPt', 20, 0, 40, 'Non-PF track isolation within a delta R cone of 0.3 with electron pt > 35 GeV'),
31  Plot1D('dxy', 'dxy', 20, -0.1, 0.1, 'dxy (with sign) wrt first PV, in cm'),
32  Plot1D('dxyErr', 'dxyErr', 20, 0, 0.2, 'dxy uncertainty, in cm'),
33  Plot1D('dz', 'dz', 20, -0.3, 0.3, 'dz (with sign) wrt first PV, in cm'),
34  Plot1D('dzErr', 'dzErr', 20, 0, 0.2, 'dz uncertainty, in cm'),
35  Plot1D('eCorr', 'eCorr', 20, 0.6, 1.6, 'ratio of the calibrated energy/miniaod energy'),
36  Plot1D('eInvMinusPInv', 'eInvMinusPInv', 20, -0.1, 0.1, '1/E_SC - 1/p_trk'),
37  Plot1D('energyErr', 'energyErr', 20, 0, 90, 'energy error of the cluster-track combination'),
38  Plot1D('eta', 'eta', 20, -3, 3, 'eta'),
39  Plot1D('genPartFlav', 'genPartFlav', 20, 0, 30, 'Flavour of genParticle for MC matching to status==1 electrons or photons: 1 = prompt electron (including gamma*->mu mu), 15 = electron from prompt tau, 22 = prompt photon (likely conversion), 5 = electron from b, 4 = electron from c, 3 = electron from light or unknown, 0 = unmatched'),
40  NoPlot('genPartIdx'),
41  Plot1D('hoe', 'hoe', 20, 0, 1, 'H over E'),
42  Plot1D('ip3d', 'ip3d', 20, 0, 0.2, '3D impact parameter wrt first PV, in cm'),
43  Plot1D('isPFcand', 'isPFcand', 2, -0.5, 1.5, 'electron is PF candidate'),
44  NoPlot('jetIdx'),
45  Plot1D('lostHits', 'lostHits', 4, -0.5, 3.5, 'number of missing inner hits'),
46  NoPlot('mass'),
47  Plot1D('miniPFRelIso_all', 'miniPFRelIso_all', 20, 0, 1, 'mini PF relative isolation, total (with scaled rho*EA PU corrections)'),
48  Plot1D('miniPFRelIso_chg', 'miniPFRelIso_chg', 20, 0, 1, 'mini PF relative isolation, charged component'),
49  Plot1D('mvaSpring16GP', 'mvaSpring16GP', 20, -1, 1, 'MVA general-purpose ID score'),
50  Plot1D('mvaSpring16GP_WP80', 'mvaSpring16GP_WP80', 2, -0.5, 1.5, 'MVA general-purpose ID WP80'),
51  Plot1D('mvaSpring16GP_WP90', 'mvaSpring16GP_WP90', 2, -0.5, 1.5, 'MVA general-purpose ID WP90'),
52  Plot1D('mvaSpring16HZZ', 'mvaSpring16HZZ', 20, -1, 1, 'MVA HZZ ID score'),
53  Plot1D('mvaSpring16HZZ_WPL', 'mvaSpring16HZZ_WPL', 2, -0.5, 1.5, 'MVA HZZ ID loose WP'),
54  Plot1D('mvaTTH', 'mvaTTH', 20, -1, 1, 'TTH MVA lepton ID score'),
55  Plot1D('pdgId', 'pdgId', 27, -13.5, 13.5, 'PDG code assigned by the event reconstruction (not by MC truth)'),
56  Plot1D('pfRelIso03_all', 'pfRelIso03_all', 20, 0, 2, 'PF relative isolation dR=0.3, total (with rho*EA PU corrections)'),
57  Plot1D('pfRelIso03_chg', 'pfRelIso03_chg', 20, 0, 2, 'PF relative isolation dR=0.3, charged component'),
58  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
59  NoPlot('photonIdx'),
60  Plot1D('pt', 'pt', 20, 0, 200, 'pt (corrected)'),
61  Plot1D('r9', 'r9', 20, 0, 1.1, 'R9 of the supercluster, calculated with full 5x5 region'),
62  Plot1D('sieie', 'sieie', 20, 0, 0.05, 'sigma_IetaIeta of the supercluster, calculated with full 5x5 region'),
63  Plot1D('sip3d', 'sip3d', 20, 0, 20, '3D impact parameter significance wrt first PV, in cm'),
64  Plot1D('tightCharge', 'tightCharge', 3, -0.5, 2.5, 'Tight charge criteria (0:none, 1:isGsfScPixChargeConsistent, 2:isGsfCtfScPixChargeConsistent)'),
65  NoPlot('vidNestedWPBitmap'),
66  )
67  ),
68  FatJet = cms.PSet(
69  sels = cms.PSet(),
70  plots = cms.VPSet(
71  Count1D('_size', 6, -0.5, 5.5, 'slimmedJetsAK8, i.e. ak8 fat jets for boosted analysis'),
72  Plot1D('area', 'area', 20, 2, 4, 'jet catchment area, for JECs'),
73  Plot1D('btagCMVA', 'btagCMVA', 20, -1, 1, 'CMVA V2 btag discriminator'),
74  Plot1D('btagCSVV2', 'btagCSVV2', 20, -1, 1, ' pfCombinedInclusiveSecondaryVertexV2 b-tag discriminator (aka CSVV2)'),
75  Plot1D('btagDeepB', 'btagDeepB', 20, -1, 1, 'Deep B+BB btag discriminator'),
76  Plot1D('btagHbb', 'btagHbb', 20, -1, 1, 'Higgs to BB tagger discriminator'),
77  Plot1D('eta', 'eta', 20, -4, 4, 'eta'),
78  Plot1D('jetId', 'jetId', 1, 2.5, 3.5, 'Jet ID flags bit1 is loose, bit2 is tight'),
79  Plot1D('mass', 'mass', 20, 0, 300, 'mass'),
80  Plot1D('msoftdrop', 'msoftdrop', 20, -300, 300, 'Soft drop mass'),
81  Plot1D('n2b1', 'n2b1', 20, 0, 1, 'N2 (beta=1)'),
82  Plot1D('n3b1', 'n3b1', 20, 0, 5, 'N3 (beta=1)'),
83  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
84  Plot1D('pt', 'pt', 20, 0, 800, 'pt'),
85  NoPlot('subJetIdx1'),
86  NoPlot('subJetIdx2'),
87  Plot1D('tau1', 'tau1', 20, 0, 1, 'Nsubjettiness (1 axis)'),
88  Plot1D('tau2', 'tau2', 20, 0, 1, 'Nsubjettiness (2 axis)'),
89  Plot1D('tau3', 'tau3', 20, 0, 1, 'Nsubjettiness (3 axis)'),
90  Plot1D('tau4', 'tau4', 20, 0, 1, 'Nsubjettiness (4 axis)'),
91  )
92  ),
93  Flag = cms.PSet(
94  sels = cms.PSet(),
95  plots = cms.VPSet(
96  Plot1D('BadChargedCandidateFilter', 'BadChargedCandidateFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
97  Plot1D('BadChargedCandidateSummer16Filter', 'BadChargedCandidateSummer16Filter', 2, -0.5, 1.5, 'Trigger/flag bit'),
98  Plot1D('BadPFMuonFilter', 'BadPFMuonFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
99  Plot1D('BadPFMuonSummer16Filter', 'BadPFMuonSummer16Filter', 2, -0.5, 1.5, 'Trigger/flag bit'),
100  Plot1D('CSCTightHalo2015Filter', 'CSCTightHalo2015Filter', 2, -0.5, 1.5, 'Trigger/flag bit'),
101  Plot1D('CSCTightHaloFilter', 'CSCTightHaloFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
102  Plot1D('CSCTightHaloTrkMuUnvetoFilter', 'CSCTightHaloTrkMuUnvetoFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
103  Plot1D('EcalDeadCellBoundaryEnergyFilter', 'EcalDeadCellBoundaryEnergyFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
104  Plot1D('EcalDeadCellTriggerPrimitiveFilter', 'EcalDeadCellTriggerPrimitiveFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
105  Plot1D('HBHENoiseFilter', 'HBHENoiseFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
106  Plot1D('HBHENoiseIsoFilter', 'HBHENoiseIsoFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
107  Plot1D('HcalStripHaloFilter', 'HcalStripHaloFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
108  Plot1D('METFilters', 'METFilters', 2, -0.5, 1.5, 'Trigger/flag bit'),
109  Plot1D('chargedHadronTrackResolutionFilter', 'chargedHadronTrackResolutionFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
110  Plot1D('ecalBadCalibFilter', 'ecalBadCalibFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
111  Plot1D('ecalLaserCorrFilter', 'ecalLaserCorrFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
112  Plot1D('eeBadScFilter', 'eeBadScFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
113  Plot1D('globalSuperTightHalo2016Filter', 'globalSuperTightHalo2016Filter', 2, -0.5, 1.5, 'Trigger/flag bit'),
114  Plot1D('globalTightHalo2016Filter', 'globalTightHalo2016Filter', 2, -0.5, 1.5, 'Trigger/flag bit'),
115  Plot1D('goodVertices', 'goodVertices', 2, -0.5, 1.5, 'Trigger/flag bit'),
116  Plot1D('hcalLaserEventFilter', 'hcalLaserEventFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
117  Plot1D('muonBadTrackFilter', 'muonBadTrackFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
118  Plot1D('trkPOGFilters', 'trkPOGFilters', 2, -0.5, 1.5, 'Trigger/flag bit'),
119  Plot1D('trkPOG_logErrorTooManyClusters', 'trkPOG_logErrorTooManyClusters', 2, -0.5, 1.5, 'Trigger/flag bit'),
120  Plot1D('trkPOG_manystripclus53X', 'trkPOG_manystripclus53X', 2, -0.5, 1.5, 'Trigger/flag bit'),
121  Plot1D('trkPOG_toomanystripclus53X', 'trkPOG_toomanystripclus53X', 2, -0.5, 1.5, 'Trigger/flag bit'),
122  )
123  ),
124  GenDressedLepton = cms.PSet(
125  sels = cms.PSet(),
126  plots = cms.VPSet(
127  Count1D('_size', 25, -0.5, 24.5, 'Dressed leptons from Rivet-based ParticleLevelProducer'),
128  Plot1D('eta', 'eta', 20, -7, 7, 'eta'),
129  Plot1D('mass', 'mass', 20, 0, 200, 'mass'),
130  Plot1D('pdgId', 'pdgId', 40, -20, 20, 'pdgId'),
131  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
132  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
133  )
134  ),
135  GenJet = cms.PSet(
136  sels = cms.PSet(),
137  plots = cms.VPSet(
138  Count1D('_size', 25, -0.5, 24.5, 'slimmedGenJets, i.e. ak4 Jets made with visible genparticles'),
139  Plot1D('eta', 'eta', 20, -7, 7, 'eta'),
140  Plot1D('hadronFlavour', 'hadronFlavour', 6, -0.5, 5.5, 'flavour from hadron ghost clustering'),
141  Plot1D('mass', 'mass', 20, 0, 200, 'mass'),
142  Plot1D('partonFlavour', 'partonFlavour', 40, -9.5, 30.5, 'flavour from parton matching'),
143  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
144  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
145  )
146  ),
147  GenJetAK8 = cms.PSet(
148  sels = cms.PSet(),
149  plots = cms.VPSet(
150  Count1D('_size', 25, -0.5, 24.5, 'slimmedGenJetAK8, i.e. ak8 Jets made with visible genparticles'),
151  Plot1D('eta', 'eta', 20, -7, 7, 'eta'),
152  Plot1D('hadronFlavour', 'hadronFlavour', 6, -0.5, 5.5, 'flavour from hadron ghost clustering'),
153  Plot1D('mass', 'mass', 20, 0, 200, 'mass'),
154  Plot1D('partonFlavour', 'partonFlavour', 40, -9.5, 30.5, 'flavour from parton matching'),
155  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
156  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
157  )
158  ),
159  GenMET = cms.PSet(
160  sels = cms.PSet(),
161  plots = cms.VPSet(
162  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
163  Plot1D('pt', 'pt', 20, 0, 400, 'pt'),
164  )
165  ),
166  GenPart = cms.PSet(
167  sels = cms.PSet(),
168  plots = cms.VPSet(
169  Count1D('_size', 40, -0.5, 124.5, 'interesting gen particles '),
170  Plot1D('eta', 'eta', 20, -30000, 30000, 'eta'),
171  NoPlot('genPartIdxMother'),
172  Plot1D('mass', 'mass', 20, 0, 300, 'Mass stored for all particles with mass > 10 GeV and photons with mass > 1 GeV. For other particles you can lookup from PDGID'),
173  Plot1D('pdgId', 'pdgId', 20, -6000, 6000, 'PDG id'),
174  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
175  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
176  Plot1D('status', 'status', 20, 0, 100, 'Particle status. 1=stable'),
177  Plot1D('statusFlags', 'statusFlags', 32768, 0, 32768, 'gen status flags stored bitwise, bits are: 0 : isPrompt, 1 : isDecayedLeptonHadron, 2 : isTauDecayProduct, 3 : isPromptTauDecayProduct, 4 : isDirectTauDecayProduct, 5 : isDirectPromptTauDecayProduct, 6 : isDirectHadronDecayProduct, 7 : isHardProcess, 8 : fromHardProcess, 9 : isHardProcessTauDecayProduct, 10 : isDirectHardProcessTauDecayProduct, 11 : fromHardProcessBeforeFSR, 12 : isFirstCopy, 13 : isLastCopy, 14 : isLastCopyBeforeFSR, '),
178  )
179  ),
180  GenVisTau = cms.PSet(
181  sels = cms.PSet(),
182  plots = cms.VPSet(
183  Count1D('_size', 4, -0.5, 3.5, 'gen hadronic taus '),
184  Plot1D('charge', 'charge', 3, -1.5, 1.5, 'charge'),
185  Plot1D('eta', 'eta', 20, -5, 5, 'eta'),
186  NoPlot('genPartIdxMother'),
187  Plot1D('mass', 'mass', 20, 0, 2, 'mass'),
188  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
189  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
190  Plot1D('status', 'status', 16, -0.5, 15.5, 'Hadronic tau decay mode. 0=OneProng0PiZero, 1=OneProng1PiZero, 2=OneProng2PiZero, 10=ThreeProng0PiZero, 11=ThreeProng1PiZero, 15=Other'),
191  )
192  ),
193  IsoTrack = cms.PSet(
194  sels = cms.PSet(),
195  plots = cms.VPSet(
196  Count1D('_size', 5, -0.5, 4.5, 'isolated tracks after basic selection (pt > 10 && abs(dxy) < 0.02 && abs(dz) < 0.1 && isHighPurityTrack && miniPFIsolation.chargedHadronIso/pt < 0.2) and lepton veto'),
197  Plot1D('dxy', 'dxy', 20, -0.02, 0.02, 'dxy (with sign) wrt first PV, in cm'),
198  Plot1D('dz', 'dz', 20, -0.09, 0.09, 'dz (with sign) wrt first PV, in cm'),
199  Plot1D('eta', 'eta', 20, -3, 3, 'eta'),
200  Plot1D('isHighPurityTrack', 'isHighPurityTrack', 2, -0.5, 1.5, 'track is high purity'),
201  Plot1D('isPFcand', 'isPFcand', 2, -0.5, 1.5, 'if isolated track is a PF candidate'),
202  Plot1D('miniPFRelIso_all', 'miniPFRelIso_all', 20, 0, 2, 'mini PF relative isolation, total (with scaled rho*EA PU corrections)'),
203  Plot1D('miniPFRelIso_chg', 'miniPFRelIso_chg', 20, 0, 2, 'mini PF relative isolation, charged component'),
204  Plot1D('pdgId', 'pdgId', 20, -300, 300, 'PDG id of PF cand'),
205  Plot1D('pfRelIso03_all', 'pfRelIso03_all', 20, 0, 2, 'PF relative isolation dR=0.3, total (deltaBeta corrections)'),
206  Plot1D('pfRelIso03_chg', 'pfRelIso03_chg', 20, 0, 2, 'PF relative isolation dR=0.3, charged component'),
207  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
208  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
209  )
210  ),
211  Jet = cms.PSet(
212  sels = cms.PSet(
213  CentralPt30 = cms.string('abs(eta) < 2.4 && pt > 30'),
214  ForwardPt30 = cms.string('abs(eta) > 2.4 && pt > 30')
215  ),
216  plots = cms.VPSet(
217  Count1D('_size', 20, -0.5, 19.5, 'slimmedJets, i.e. ak4 PFJets CHS with JECs applied, after basic selection (pt > 15)'),
218  Plot1D('area', 'area', 20, 0.2, 0.8, 'jet catchment area, for JECs'),
219  Plot1D('bReg', 'bReg', 20, 30, 500, 'pt corrected with b-jet regression'),
220  Plot1D('btagCMVA', 'btagCMVA', 20, -1, 1, 'CMVA V2 btag discriminator'),
221  Plot1D('btagCSVV2', 'btagCSVV2', 20, -1, 1, ' pfCombinedInclusiveSecondaryVertexV2 b-tag discriminator (aka CSVV2)'),
222  Plot1D('btagDeepB', 'btagDeepB', 20, -1, 1, 'Deep B+BB btag discriminator'),
223  Plot1D('btagDeepC', 'btagDeepC', 20, 0, 1, 'DeepCSV charm btag discriminator'),
224  Plot1D('chEmEF', 'chEmEF', 20, 0, 1, 'charged Electromagnetic Energy Fraction'),
225  Plot1D('chHEF', 'chHEF', 20, 0, 2, 'charged Hadron Energy Fraction'),
226  Plot1D('cleanmask', 'cleanmask', 2, -0.5, 1.5, 'simple cleaning mask with priority to leptons'),
227  NoPlot('electronIdx1'),
228  NoPlot('electronIdx2'),
229  Plot1D('eta', 'eta', 20, -6, 6, 'eta'),
230  NoPlot('genJetIdx'),
231  Plot1D('hadronFlavour', 'hadronFlavour', 6, -0.5, 5.5, 'flavour from hadron ghost clustering'),
232  Plot1D('jetId', 'jetId', 4, -0.5, 3.5, 'Jet ID flags bit1 is loose, bit2 is tight'),
233  Plot1D('mass', 'mass', 20, 0, 200, 'mass'),
234  NoPlot('muonIdx1'),
235  NoPlot('muonIdx2'),
236  Plot1D('nConstituents', 'nConstituents', 20, 0, 80, 'Number of particles in the jet'),
237  Plot1D('nElectrons', 'nElectrons', 5, -0.5, 4.5, 'number of electrons in the jet'),
238  Plot1D('nMuons', 'nMuons', 4, -0.5, 3.5, 'number of muons in the jet'),
239  Plot1D('neEmEF', 'neEmEF', 20, 0, 1, 'charged Electromagnetic EnergyFraction'),
240  Plot1D('neHEF', 'neHEF', 20, 0, 1, 'neutral Hadron Energy Fraction'),
241  Plot1D('partonFlavour', 'partonFlavour', 40, -9.5, 30.5, 'flavour from parton matching'),
242  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
243  Plot1D('pt', 'pt', 20, 0, 400, 'pt'),
244  Plot1D('puId', 'puId', 8, -0.5, 7.5, 'Pilup ID flags'),
245  Plot1D('qgl', 'qgl', 20, 0, 1, 'Quark vs Gluon likelihood discriminator'),
246  Plot1D('rawFactor', 'rawFactor', 20, 0.5, 1.5, '1 - Factor to get back to raw pT'),
247  )
248  ),
249  MET = cms.PSet(
250  sels = cms.PSet(),
251  plots = cms.VPSet(
252  Plot1D('MetUnclustEnUpDeltaX', 'MetUnclustEnUpDeltaX', 20, -20, 20, 'Delta (METx_mod-METx) Unclustered Energy Up'),
253  Plot1D('MetUnclustEnUpDeltaY', 'MetUnclustEnUpDeltaY', 20, -10, 10, 'Delta (METy_mod-METy) Unclustered Energy Up'),
254  Plot1D('covXX', 'covXX', 20, 0, 40000, 'xx element of met covariance matrix'),
255  Plot1D('covXY', 'covXY', 20, -8000, 8000, 'xy element of met covariance matrix'),
256  Plot1D('covYY', 'covYY', 20, 0, 50000, 'yy element of met covariance matrix'),
257  Plot1D('fiducialGenPhi', 'fiducialGenPhi', 20, -3.14159, 3.14159, 'phi'),
258  Plot1D('fiducialGenPt', 'fiducialGenPt', 20, 0, 400, 'pt'),
259  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
260  Plot1D('pt', 'pt', 20, 0, 400, 'pt'),
261  Plot1D('significance', 'significance', 20, 0, 200, 'MET significance'),
262  Plot1D('sumEt', 'sumEt', 20, 600, 5000, 'scalar sum of Et'),
263  )
264  ),
265  Muon = cms.PSet(
266  sels = cms.PSet(
267  Good = cms.string('pt > 15 && abs(dxy) < 0.2 && abs(dz) < 0.5 && mediumId && miniPFRelIso_all < 0.4')
268  ),
269  plots = cms.VPSet(
270  Count1D('_size', 5, -0.5, 4.5, 'slimmedMuons after basic selection (pt > 3 && track.isNonnull && isLooseMuon)'),
271  Plot1D('charge', 'charge', 3, -1.5, 1.5, 'electric charge'),
272  Plot1D('cleanmask', 'cleanmask', 2, -0.5, 1.5, 'simple cleaning mask with priority to leptons'),
273  Plot1D('dxy', 'dxy', 20, -0.1, 0.1, 'dxy (with sign) wrt first PV, in cm'),
274  Plot1D('dxyErr', 'dxyErr', 20, 0, 0.1, 'dxy uncertainty, in cm'),
275  Plot1D('dz', 'dz', 20, -0.3, 0.3, 'dz (with sign) wrt first PV, in cm'),
276  Plot1D('dzErr', 'dzErr', 20, 0, 0.2, 'dz uncertainty, in cm'),
277  Plot1D('eta', 'eta', 20, -2.5, 2.5, 'eta'),
278  Plot1D('genPartFlav', 'genPartFlav', 16, -0.5, 15.5, 'Flavour of genParticle for MC matching to status==1 muons: 1 = prompt muon (including gamma*->mu mu), 15 = muon from prompt tau, 5 = muon from b, 4 = muon from c, 3 = muon from light or unknown, 0 = unmatched'),
279  NoPlot('genPartIdx'),
280  Plot1D('highPtId', 'highPtId', 3, -0.5, 2.5, 'POG highPt muon ID (1 = tracker high pT, 2 = global high pT, which includes tracker high pT)'),
281  Plot1D('ip3d', 'ip3d', 20, 0, 0.2, '3D impact parameter wrt first PV, in cm'),
282  Plot1D('isPFcand', 'isPFcand', 2, -0.5, 1.5, 'muon is PF candidate'),
283  NoPlot('jetIdx'),
284  NoPlot('mass'),
285  Profile1D('mediumId', 'mediumId', 'pt', 16, 0, 80, 'POG Medium muon ID (using the relaxed cuts in the data Run 2016 B-F periods, and standard cuts elsewhere)'),
286  Plot1D('miniPFRelIso_all', 'miniPFRelIso_all', 20, 0, 1, 'mini PF relative isolation, total (with scaled rho*EA PU corrections)'),
287  Plot1D('miniPFRelIso_chg', 'miniPFRelIso_chg', 20, 0, 1, 'mini PF relative isolation, charged component'),
288  Plot1D('mvaTTH', 'mvaTTH', 20, -1, 1, 'TTH MVA lepton ID score'),
289  Plot1D('nStations', 'nStations', 5, -0.5, 4.5, 'number of matched stations with default arbitration (segment & track)'),
290  Plot1D('nTrackerLayers', 'nTrackerLayers', 15, 2.5, 17.5, 'number of layers in the tracker'),
291  Plot1D('pdgId', 'pdgId', 27, -13.5, 13.5, 'PDG code assigned by the event reconstruction (not by MC truth)'),
292  Plot1D('pfRelIso03_all', 'pfRelIso03_all', 20, 0, 2, 'PF relative isolation dR=0.3, total (deltaBeta corrections)'),
293  Plot1D('pfRelIso03_chg', 'pfRelIso03_chg', 20, 0, 2, 'PF relative isolation dR=0.3, charged component'),
294  Plot1D('pfRelIso04_all', 'pfRelIso04_all', 20, 0, 2, 'PF relative isolation dR=0.4, total (deltaBeta corrections)'),
295  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
296  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
297  Plot1D('ptErr', 'ptErr', 20, 0, 20, 'ptError of the muon track'),
298  Plot1D('segmentComp', 'segmentComp', 20, 0, 1, 'muon segment compatibility'),
299  Plot1D('sip3d', 'sip3d', 20, 0, 20, '3D impact parameter significance wrt first PV'),
300  Profile1D('softId', 'softId', 'pt', 20, 0, 40, 'POG Soft muon ID (using the relaxed cuts in the data Run 2016 B-F periods, and standard cuts elsewhere)'),
301  Plot1D('tightCharge', 'tightCharge', 1, 1.5, 2.5, 'Tight charge criterion using pterr/pt of muonBestTrack (0:fail, 2:pass)'),
302  Profile1D('tightId', 'tightId', 'pt', 16, 0, 80, 'POG Tight muon ID'),
303  )
304  ),
305  OtherPV = cms.PSet(
306  sels = cms.PSet(),
307  plots = cms.VPSet(
308  NoPlot('_size'),
309  Plot1D('z', 'z', 20, -20, 20, 'Z position of other primary vertices, excluding the main PV'),
310  )
311  ),
312  PV = cms.PSet(
313  sels = cms.PSet(),
314  plots = cms.VPSet(
315  Plot1D('chi2', 'chi2', 20, 0.5, 3, 'main primary vertex reduced chi2'),
316  Plot1D('ndof', 'ndof', 20, 0, 500, 'main primary vertex number of degree of freedom'),
317  Plot1D('npvs', 'npvs', 20, 0, 60, 'total number of reconstructed primary vertices'),
318  Plot1D('npvsGood', 'npvsGood', 20, 0, 60, 'total number of Good primary vertices'),
319  Plot1D('score', 'score', 20, 0, 300000, 'main primary vertex score, i.e. sum pt2 of clustered objects'),
320  Plot1D('x', 'x', 20, -0.3, 0.3, 'main primary vertex position x coordinate'),
321  Plot1D('y', 'y', 20, -0.3, 0.3, 'main primary vertex position y coordinate'),
322  Plot1D('z', 'z', 20, -20, 20, 'main primary vertex position z coordinate'),
323  )
324  ),
325  Photon = cms.PSet(
326  sels = cms.PSet(),
327  plots = cms.VPSet(
328  Count1D('_size', 9, -0.5, 8.5, 'slimmedPhotons after basic selection (pt > 5 )'),
329  Plot1D('charge', 'charge', 1, -0.5, 0.5, 'electric charge'),
330  Plot1D('cleanmask', 'cleanmask', 1, 0.5, 1.5, 'simple cleaning mask with priority to leptons'),
331  Plot1D('cutBased', 'cutBased', 4, -0.5, 3.5, 'cut-based ID (0:fail, 1::loose, 2:medium, 3:tight)'),
332  Plot1D('eCorr', 'eCorr', 20, 0.6, 1.6, 'ratio of the calibrated energy/miniaod energy'),
333  NoPlot('electronIdx'),
334  Plot1D('electronVeto', 'electronVeto', 2, -0.5, 1.5, 'pass electron veto'),
335  Plot1D('energyErr', 'energyErr', 20, 0, 300, 'energy error of the cluster from regression'),
336  Plot1D('eta', 'eta', 20, -3, 3, 'eta'),
337  Plot1D('genPartFlav', 'genPartFlav', 14, -0.5, 13.5, 'Flavour of genParticle for MC matching to status==1 photons or electrons: 1 = prompt photon, 13 = prompt electron, 0 = unknown or unmatched'),
338  NoPlot('genPartIdx'),
339  Plot1D('hoe', 'hoe', 20, 0, 0.6, 'H over E'),
340  NoPlot('jetIdx'),
341  NoPlot('mass'),
342  Plot1D('mvaID', 'mvaID', 20, -1, 1, 'MVA ID score'),
343  Plot1D('mvaID_WP80', 'mvaID_WP80', 2, -0.5, 1.5, 'MVA ID WP80'),
344  Plot1D('mvaID_WP90', 'mvaID_WP90', 2, -0.5, 1.5, 'MVA ID WP90'),
345  Plot1D('pdgId', 'pdgId', 1, 21.5, 22.5, 'PDG code assigned by the event reconstruction (not by MC truth)'),
346  Plot1D('pfRelIso03_all', 'pfRelIso03_all', 20, 0, 2, 'PF relative isolation dR=0.3, total (with rho*EA PU corrections)'),
347  Plot1D('pfRelIso03_chg', 'pfRelIso03_chg', 20, 0, 2, 'PF relative isolation dR=0.3, charged component (with rho*EA PU corrections)'),
348  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
349  Plot1D('pixelSeed', 'pixelSeed', 2, -0.5, 1.5, 'has pixel seed'),
350  Plot1D('pt', 'pt', 20, 0, 200, 'pt (corrected)'),
351  Plot1D('r9', 'r9', 20, 0, 1.1, 'R9 of the supercluster, calculated with full 5x5 region'),
352  Plot1D('sieie', 'sieie', 20, 0, 0.05, 'sigma_IetaIeta of the supercluster, calculated with full 5x5 region'),
353  NoPlot('vidNestedWPBitmap'),
354  )
355  ),
356  Pileup = cms.PSet(
357  sels = cms.PSet(),
358  plots = cms.VPSet(
359  Plot1D('nPU', 'nPU', 20, 0, 60, 'the number of pileup interactions that have been added to the event in the current bunch crossing'),
360  Plot1D('nTrueInt', 'nTrueInt', 20, 0, 60, 'the true mean number of the poisson distribution for this event from which the number of interactions each bunch crossing has been sampled'),
361  Plot1D('sumEOOT', 'sumEOOT', 20, 0, 800, 'number of early out of time pileup'),
362  Plot1D('sumLOOT', 'sumLOOT', 20, 0, 300, 'number of late out of time pileup'),
363  )
364  ),
365  PuppiMET = cms.PSet(
366  sels = cms.PSet(),
367  plots = cms.VPSet(
368  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
369  Plot1D('pt', 'pt', 20, 0, 400, 'pt'),
370  Plot1D('sumEt', 'sumEt', 20, 200, 3000, 'scalar sum of Et'),
371  )
372  ),
373  RawMET = cms.PSet(
374  sels = cms.PSet(),
375  plots = cms.VPSet(
376  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
377  Plot1D('pt', 'pt', 20, 0, 400, 'pt'),
378  Plot1D('sumEt', 'sumEt', 20, 400, 4000, 'scalar sum of Et'),
379  )
380  ),
381  SV = cms.PSet(
382  sels = cms.PSet(),
383  plots = cms.VPSet(
384  Count1D('_size', 14, -0.5, 13.5),
385  Plot1D('chi2', 'chi2', 20, -2000, 2000, 'reduced chi2, i.e. chi/ndof'),
386  Plot1D('dlen', 'dlen', 20, 0, 4, 'decay length in cm'),
387  Plot1D('dlenSig', 'dlenSig', 20, 0, 50, 'decay length significance'),
388  Plot1D('eta', 'eta', 20, -3, 3, 'eta'),
389  Plot1D('mass', 'mass', 20, 0, 8, 'mass'),
390  Plot1D('ndof', 'ndof', 20, -1, 19, 'number of degrees of freedom'),
391  Plot1D('pAngle', 'pAngle', 20, -3.1416, 3.1416, 'pointing angle, i.e. acos(p_SV * (SV - PV)) '),
392  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
393  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
394  Plot1D('x', 'x', 20, -0.5, 0.5, 'secondary vertex X position, in cm'),
395  Plot1D('y', 'y', 20, -0.5, 0.5, 'secondary vertex Y position, in cm'),
396  Plot1D('z', 'z', 20, -10, 10, 'secondary vertex Z position, in cm'),
397  )
398  ),
399  SoftActivityJet = cms.PSet(
400  sels = cms.PSet(),
401  plots = cms.VPSet(
402  Count1D('_size', 7, -0.5, 6.5, 'jets clustered from charged candidates compatible with primary vertex (charge()!=0 && pvAssociationQuality()>=5 && vertexRef().key()==0)'),
403  Plot1D('eta', 'eta', 20, -3, 3, 'eta'),
404  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
405  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
406  )
407  ),
408  SubJet = cms.PSet(
409  sels = cms.PSet(),
410  plots = cms.VPSet(
411  Count1D('_size', 9, -0.5, 8.5, 'slimmedJetsAK8, i.e. ak8 fat jets for boosted analysis'),
412  Plot1D('btagCMVA', 'btagCMVA', 20, -1, 1, 'CMVA V2 btag discriminator'),
413  Plot1D('btagCSVV2', 'btagCSVV2', 20, -1, 1, ' pfCombinedInclusiveSecondaryVertexV2 b-tag discriminator (aka CSVV2)'),
414  Plot1D('btagDeepB', 'btagDeepB', 20, -1, 1, 'Deep B+BB btag discriminator'),
415  Plot1D('eta', 'eta', 20, -4, 4, 'eta'),
416  Plot1D('mass', 'mass', 20, -200, 200, 'mass'),
417  Plot1D('n2b1', 'n2b1', 20, 0, 1, 'N2 (beta=1)'),
418  Plot1D('n3b1', 'n3b1', 20, 0, 5, 'N3 (beta=1)'),
419  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
420  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
421  Plot1D('tau1', 'tau1', 20, 0, 1, 'Nsubjettiness (1 axis)'),
422  Plot1D('tau2', 'tau2', 20, 0, 1, 'Nsubjettiness (2 axis)'),
423  Plot1D('tau3', 'tau3', 20, 0, 1, 'Nsubjettiness (3 axis)'),
424  Plot1D('tau4', 'tau4', 20, 0, 1, 'Nsubjettiness (4 axis)'),
425  )
426  ),
427  Tau = cms.PSet(
428  sels = cms.PSet(),
429  plots = cms.VPSet(
430  Count1D('_size', 7, -0.5, 6.5, "slimmedTaus after basic selection (pt > 18 && tauID('decayModeFindingNewDMs') && (tauID('byLooseCombinedIsolationDeltaBetaCorr3Hits') || tauID('byVLooseIsolationMVArun2v1DBoldDMwLT') || tauID('byVLooseIsolationMVArun2v1DBnewDMwLT') || tauID('byVLooseIsolationMVArun2v1DBdR03oldDMwLT')))"),
431  Plot1D('charge', 'charge', 3, -1.5, 1.5, 'electric charge'),
432  Plot1D('chargedIso', 'chargedIso', 20, 0, 200, 'charged isolation'),
433  Plot1D('cleanmask', 'cleanmask', 1, 0.5, 1.5, 'simple cleaning mask with priority to leptons'),
434  Plot1D('decayMode', 'decayMode', 12, -0.5, 11.5, 'decayMode()'),
435  Plot1D('dxy', 'dxy', 20, -1000, 1000, 'd_{xy} of lead track with respect to PV, in cm (with sign)'),
436  Plot1D('dz', 'dz', 20, -20, 20, 'd_{z} of lead track with respect to PV, in cm (with sign)'),
437  Plot1D('eta', 'eta', 20, -3, 3, 'eta'),
438  Plot1D('footprintCorr', 'footprintCorr', 20, 0, 30, 'footprint correction'),
439  Plot1D('genPartFlav', 'genPartFlav', 6, -0.5, 5.5, 'Flavour of genParticle for MC matching to status==2 taus: 1 = prompt electron, 2 = prompt muon, 3 = tau->e decay, 4 = tau->mu decay, 5 = hadronic tau decay, 0 = unknown or unmatched'),
440  NoPlot('genPartIdx'),
441  Plot1D('idAntiEle', 'idAntiEle', 32, -0.5, 31.5, 'Anti-electron MVA discriminator V6: bitmask 1 = VLoose, 2 = Loose, 4 = Medium, 8 = Tight, 16 = VTight'),
442  Plot1D('idAntiMu', 'idAntiMu', 4, -0.5, 3.5, 'Anti-muon discriminator V3: : bitmask 1 = Loose, 2 = Tight'),
443  Plot1D('idDecayMode', 'idDecayMode', 2, -0.5, 1.5, "tauID('decayModeFinding')"),
444  Plot1D('idDecayModeNewDMs', 'idDecayModeNewDMs', 2, -0.5, 1.5, "tauID('decayModeFindingNewDMs')"),
445  Plot1D('idMVAnewDM', 'idMVAnewDM', 64, -0.5, 63.5, 'IsolationMVArun2v1DBnewDMwLT ID working point: bitmask 1 = VLoose, 2 = Loose, 4 = Medium, 8 = Tight, 16 = VTight, 32 = VVTight'),
446  Plot1D('idMVAoldDM', 'idMVAoldDM', 64, -0.5, 63.5, 'IsolationMVArun2v1DBoldDMwLT ID working point: bitmask 1 = VLoose, 2 = Loose, 4 = Medium, 8 = Tight, 16 = VTight, 32 = VVTight'),
447  Plot1D('idMVAoldDMdR03', 'idMVAoldDMdR03', 64, -0.5, 63.5, 'IsolationMVArun2v1DBdR03oldDMwLT ID working point: bitmask 1 = VLoose, 2 = Loose, 4 = Medium, 8 = Tight, 16 = VTight, 32 = VVTight'),
448  NoPlot('jetIdx'),
449  Plot1D('leadTkDeltaEta', 'leadTkDeltaEta', 20, -0.1, 0.1, 'eta of the leading track, minus tau eta'),
450  Plot1D('leadTkDeltaPhi', 'leadTkDeltaPhi', 20, -0.1, 0.1, 'phi of the leading track, minus tau phi'),
451  Plot1D('leadTkPtOverTauPt', 'leadTkPtOverTauPt', 20, 0, 2, 'pt of the leading track divided by tau pt'),
452  Plot1D('mass', 'mass', 20, 0, 5, 'mass'),
453  Plot1D('neutralIso', 'neutralIso', 20, 0, 200, 'neutral (photon) isolation'),
454  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
455  Plot1D('photonsOutsideSignalCone', 'photonsOutsideSignalCone', 20, 0, 30, 'sum of photons outside signal cone'),
456  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
457  Plot1D('puCorr', 'puCorr', 20, 0, 90, 'pileup correction'),
458  Plot1D('rawAntiEle', 'rawAntiEle', 20, -100, 100, 'Anti-electron MVA discriminator V6 raw output discriminator'),
459  Plot1D('rawAntiEleCat', 'rawAntiEleCat', 17, -1.5, 15.5, 'Anti-electron MVA discriminator V6 category'),
460  Plot1D('rawIso', 'rawIso', 20, 0, 200, 'combined isolation (deltaBeta corrections)'),
461  Plot1D('rawMVAnewDM', 'rawMVAnewDM', 20, -1, 1, 'byIsolationMVArun2v1DBnewDMwLT raw output discriminator'),
462  Plot1D('rawMVAoldDM', 'rawMVAoldDM', 20, -1, 1, 'byIsolationMVArun2v1DBoldDMwLT raw output discriminator'),
463  Plot1D('rawMVAoldDMdR03', 'rawMVAoldDMdR03', 20, -1, 1, 'byIsolationMVArun2v1DBdR03oldDMwLT raw output discriminator'),
464  )
465  ),
466  TkMET = cms.PSet(
467  sels = cms.PSet(),
468  plots = cms.VPSet(
469  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
470  Plot1D('pt', 'pt', 20, 0, 400, 'pt'),
471  Plot1D('sumEt', 'sumEt', 20, 0, 2000, 'scalar sum of Et'),
472  )
473  ),
474  TrigObj = cms.PSet(
475  sels = cms.PSet(
476  Electron = cms.string('id == 11'),
477  HT = cms.string('id == 3'),
478  Jet = cms.string('id == 1'),
479  MET = cms.string('id == 2'),
480  MHT = cms.string('id == 4'),
481  Muon = cms.string('id == 13'),
482  Photon = cms.string('id == 22'),
483  Tau = cms.string('id == 15')
484  ),
485  plots = cms.VPSet(
486  Count1D('_size', 28, -0.5, 27.5),
487  Plot1D('eta', 'eta', 20, -5, 5, 'eta'),
488  Plot1D('filterBits', 'filterBits', 512, -0.5, 511.5, 'extra bits of associated information: 1 = CaloIdL_TrackIdL_IsoVL, 2 = WPLoose, 4 = WPTight, 8 = OverlapFilter PFTau for Electron (PixelMatched e/gamma); 1 = TrkIsoVVL, 2 = Iso, 4 = OverlapFilter PFTau for Muon; 1 = LooseChargedIso, 2 = MediumChargedIso, 4 = TightChargedIso, 8 = TightID OOSC photons, 16 = L2p5 pixel iso, 32 = OverlapFilter IsoMu, 64 = OverlapFilter IsoEle, 128 = L1-HLT matched, 256 = Dz for Tau; 1 = VBF cross-cleaned from loose iso PFTau for Jet'),
489  Plot1D('id', 'id', 20, 0, 30, 'ID of the object: 11 = Electron (PixelMatched e/gamma), 22 = Photon (PixelMatch-vetoed e/gamma), 13 = Muon, 14 = Tau, 1 = Jet, 2 = MET, 3 = HT, 4 = MHT'),
490  Plot1D('l1charge', 'l1charge', 3, -1.5, 1.5, 'charge of associated L1 seed'),
491  Plot1D('l1iso', 'l1iso', 4, -0.5, 3.5, 'iso of associated L1 seed'),
492  Plot1D('l1pt', 'l1pt', 20, 0, 200, 'pt of associated L1 seed'),
493  Plot1D('l1pt_2', 'l1pt_2', 20, 0, 200, 'pt of associated secondary L1 seed'),
494  Plot1D('l2pt', 'l2pt', 20, 0, 200, "pt of associated 'L2' seed (i.e. HLT before tracking/PF)"),
495  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
496  Plot1D('pt', 'pt', 40, 0, 400, 'pt'),
497  )
498  ),
499  )
500 )
def Count1D(name, nbins, xmin, xmax, title="")
def Profile1D(name, ycolumn, xcolumn, nbins, xmin, xmax, title="")