CMS 3D CMS Logo

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