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 from DQMServices.Core.DQMEDAnalyzer import DQMEDAnalyzer
6 nanoDQM = DQMEDAnalyzer("NanoAODDQM",
7  vplots = cms.PSet(
8  CaloMET = cms.PSet(
9  sels = cms.PSet(),
10  plots = cms.VPSet(
11  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
12  Plot1D('pt', 'pt', 20, 0, 400, 'pt'),
13  Plot1D('sumEt', 'sumEt', 20, 200, 3000, 'scalar sum of Et'),
14  )
15  ),
16  ChsMET = cms.PSet(
17  sels = cms.PSet(),
18  plots = cms.VPSet(
19  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'raw chs PF MET phi'),
20  Plot1D('pt', 'pt', 20, 0, 400, 'raw chs PF MET pt'),
21  Plot1D('sumEt', 'sumEt', 20, 600, 5000, 'raw chs PF scalar sum of Et'),
22  )
23  ),
24  CorrT1METJet = cms.PSet(
25  sels = cms.PSet(),
26  plots = cms.VPSet(
27  Count1D('_size', 20, -0.5, 19.5, 'Additional low-pt jets for Type-1 MET re-correction'),
28  Plot1D('area', 'area', 20, 0.2, 0.8, 'jet catchment area, for JECs'),
29  Plot1D('eta', 'eta', 20, -5, 5, 'eta'),
30  Plot1D('muonSubtrFactor', 'muonSubtrFactor', 20, 0, 1, '1-(muon-subtracted raw pt)/(raw pt)'),
31  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
32  Plot1D('rawPt', 'rawPt', 20, 5, 25, "pt()*jecFactor('Uncorrected')"),
33  )
34  ),
35  Electron = cms.PSet(
36  sels = cms.PSet(
37  Good = cms.string('pt > 15 && abs(dxy) < 0.2 && abs(dz) < 0.5 && cutBased >= 3 && miniPFRelIso_all < 0.4')
38  ),
39  plots = cms.VPSet(
40  Count1D('_size', 8, -0.5, 7.5, 'slimmedElectrons after basic selection (pt > 5 )'),
41  Plot1D('charge', 'charge', 3, -1.5, 1.5, 'electric charge'),
42  Plot1D('cleanmask', 'cleanmask', 1, 0.5, 1.5, 'simple cleaning mask with priority to leptons'),
43  Plot1D('convVeto', 'convVeto', 2, -0.5, 1.5, 'pass conversion veto'),
44  Plot1D('cutBased', 'cutBased', 5, -0.5, 4.5, 'cut-based ID (0:fail, 1:veto, 2:loose, 3:medium, 4:tight)'),
45  Plot1D('cutBased_Fall17_V1', 'cutBased_Fall17_V1', 5, -0.5, 4.5, 'cut-based ID Fall17 V1 (0:fail, 1:veto, 2:loose, 3:medium, 4:tight)'),
46  Plot1D('cutBased_HEEP', 'cutBased_HEEP', 2, -0.5, 1.5, 'cut-based HEEP ID'),
47  Plot1D('deltaEtaSC', 'deltaEtaSC', 20, -0.2, 0.2, 'delta eta (SC,ele) with sign'),
48  Plot1D('dr03EcalRecHitSumEt', 'dr03EcalRecHitSumEt', 20, 0, 30, 'Non-PF Ecal isolation within a delta R cone of 0.3 with electron pt > 35 GeV'),
49  Plot1D('dr03HcalDepth1TowerSumEt', 'dr03HcalDepth1TowerSumEt', 20, 0, 20, 'Non-PF Hcal isolation within a delta R cone of 0.3 with electron pt > 35 GeV'),
50  Plot1D('dr03TkSumPt', 'dr03TkSumPt', 20, 0, 40, 'Non-PF track isolation within a delta R cone of 0.3 with electron pt > 35 GeV'),
51  Plot1D('dr03TkSumPtHEEP', 'dr03TkSumPtHEEP', 20, 0, 40, 'Non-PF track isolation within a delta R cone of 0.3 with electron pt > 35 GeV used in HEEP ID'),
52  Plot1D('dxy', 'dxy', 20, -0.1, 0.1, 'dxy (with sign) wrt first PV, in cm'),
53  Plot1D('dxyErr', 'dxyErr', 20, 0, 0.2, 'dxy uncertainty, in cm'),
54  Plot1D('dz', 'dz', 20, -0.3, 0.3, 'dz (with sign) wrt first PV, in cm'),
55  Plot1D('dzErr', 'dzErr', 20, 0, 0.2, 'dz uncertainty, in cm'),
56  Plot1D('eCorr', 'eCorr', 20, 0.8, 1.2, 'ratio of the calibrated energy/miniaod energy'),
57  Plot1D('eInvMinusPInv', 'eInvMinusPInv', 20, -0.1, 0.1, '1/E_SC - 1/p_trk'),
58  Plot1D('energyErr', 'energyErr', 20, 0, 90, 'energy error of the cluster-track combination'),
59  Plot1D('eta', 'eta', 20, -3, 3, 'eta'),
60  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'),
61  NoPlot('genPartIdx'),
62  Plot1D('hoe', 'hoe', 20, 0, 1, 'H over E'),
63  Plot1D('ip3d', 'ip3d', 20, 0, 0.2, '3D impact parameter wrt first PV, in cm'),
64  Plot1D('isPFcand', 'isPFcand', 2, -0.5, 1.5, 'electron is PF candidate'),
65  NoPlot('jetIdx'),
66  Plot1D('jetPtRelv2', 'jetPtRelv2', 20, 0, 60, 'Relative momentum of the lepton with respect to the closest jet after subtracting the lepton'),
67  Plot1D('jetRelIso', 'jetRelIso', 20, -0.2, 1.8, 'Relative isolation in matched jet (1/ptRatio-1, pfRelIso04_all if no matched jet)'),
68  Plot1D('lostHits', 'lostHits', 4, -0.5, 3.5, 'number of missing inner hits'),
69  NoPlot('mass'),
70  Plot1D('miniPFRelIso_all', 'miniPFRelIso_all', 20, 0, 1, 'mini PF relative isolation, total (with scaled rho*EA PU corrections)'),
71  Plot1D('miniPFRelIso_chg', 'miniPFRelIso_chg', 20, 0, 1, 'mini PF relative isolation, charged component'),
72  Plot1D('mvaFall17V1Iso', 'mvaFall17V1Iso', 20, -1, 1, 'MVA Iso ID V1 score'),
73  Plot1D('mvaFall17V1Iso_WP80', 'mvaFall17V1Iso_WP80', 2, -0.5, 1.5, 'MVA Iso ID V1 WP80'),
74  Plot1D('mvaFall17V1Iso_WP90', 'mvaFall17V1Iso_WP90', 2, -0.5, 1.5, 'MVA Iso ID V1 WP90'),
75  Plot1D('mvaFall17V1Iso_WPL', 'mvaFall17V1Iso_WPL', 2, -0.5, 1.5, 'MVA Iso ID V1 loose WP'),
76  Plot1D('mvaFall17V1noIso', 'mvaFall17V1noIso', 20, -1, 1, 'MVA noIso ID V1 score'),
77  Plot1D('mvaFall17V1noIso_WP80', 'mvaFall17V1noIso_WP80', 2, -0.5, 1.5, 'MVA noIso ID V1 WP80'),
78  Plot1D('mvaFall17V1noIso_WP90', 'mvaFall17V1noIso_WP90', 2, -0.5, 1.5, 'MVA noIso ID V1 WP90'),
79  Plot1D('mvaFall17V1noIso_WPL', 'mvaFall17V1noIso_WPL', 2, -0.5, 1.5, 'MVA noIso ID V1 loose WP'),
80  Plot1D('mvaFall17V2Iso', 'mvaFall17V2Iso', 20, -1, 1, 'MVA Iso ID V2 score'),
81  Plot1D('mvaFall17V2Iso_WP80', 'mvaFall17V2Iso_WP80', 2, -0.5, 1.5, 'MVA Iso ID V2 WP80'),
82  Plot1D('mvaFall17V2Iso_WP90', 'mvaFall17V2Iso_WP90', 2, -0.5, 1.5, 'MVA Iso ID V2 WP90'),
83  Plot1D('mvaFall17V2Iso_WPL', 'mvaFall17V2Iso_WPL', 2, -0.5, 1.5, 'MVA Iso ID V2 loose WP'),
84  Plot1D('mvaFall17V2noIso', 'mvaFall17V2noIso', 20, -1, 1, 'MVA noIso ID V2 score'),
85  Plot1D('mvaFall17V2noIso_WP80', 'mvaFall17V2noIso_WP80', 2, -0.5, 1.5, 'MVA noIso ID V2 WP80'),
86  Plot1D('mvaFall17V2noIso_WP90', 'mvaFall17V2noIso_WP90', 2, -0.5, 1.5, 'MVA noIso ID V2 WP90'),
87  Plot1D('mvaFall17V2noIso_WPL', 'mvaFall17V2noIso_WPL', 2, -0.5, 1.5, 'MVA noIso ID V2 loose WP'),
88  Plot1D('mvaTTH', 'mvaTTH', 20, -1, 1, 'TTH MVA lepton ID score'),
89  Plot1D('pdgId', 'pdgId', 27, -13.5, 13.5, 'PDG code assigned by the event reconstruction (not by MC truth)'),
90  Plot1D('pfRelIso03_all', 'pfRelIso03_all', 20, 0, 2, 'PF relative isolation dR=0.3, total (with rho*EA PU corrections)'),
91  Plot1D('pfRelIso03_chg', 'pfRelIso03_chg', 20, 0, 2, 'PF relative isolation dR=0.3, charged component'),
92  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
93  NoPlot('photonIdx'),
94  Plot1D('pt', 'pt', 20, 0, 200, 'pt (corrected)'),
95  Plot1D('r9', 'r9', 20, 0, 1.1, 'R9 of the supercluster, calculated with full 5x5 region'),
96  Plot1D('seedGain', 'seedGain', 12, 0.5, 12.5, 'Gain of the seed crystal'),
97  Plot1D('sieie', 'sieie', 20, 0, 0.05, 'sigma_IetaIeta of the supercluster, calculated with full 5x5 region'),
98  Plot1D('sip3d', 'sip3d', 20, 0, 20, '3D impact parameter significance wrt first PV, in cm'),
99  Plot1D('tightCharge', 'tightCharge', 3, -0.5, 2.5, 'Tight charge criteria (0:none, 1:isGsfScPixChargeConsistent, 2:isGsfCtfScPixChargeConsistent)'),
100  NoPlot('vidNestedWPBitmap'),
101  )
102  ),
103  FatJet = cms.PSet(
104  sels = cms.PSet(),
105  plots = cms.VPSet(
106  Count1D('_size', 6, -0.5, 5.5, 'slimmedJetsAK8, i.e. ak8 fat jets for boosted analysis'),
107  Plot1D('area', 'area', 20, 2, 4, 'jet catchment area, for JECs'),
108  Plot1D('btagCMVA', 'btagCMVA', 20, -1, 1, 'CMVA V2 btag discriminator'),
109  Plot1D('btagCSVV2', 'btagCSVV2', 20, -1, 1, ' pfCombinedInclusiveSecondaryVertexV2 b-tag discriminator (aka CSVV2)'),
110  Plot1D('btagDDBvL', 'btagDDBvL', 20, 0, 1, 'DeepDoubleX (mass-decorrelated) discriminator for H(Z)->bb vs QCD'),
111  Plot1D('btagDDCvB', 'btagDDCvB', 20, 0, 1, 'DeepDoubleX (mass-decorrelated) discriminator for H(Z)->cc vs H(Z)->bb'),
112  Plot1D('btagDDCvL', 'btagDDCvL', 20, 0, 1, 'DeepDoubleX (mass-decorrelated) discriminator for H(Z)->cc vs QCD'),
113  Plot1D('btagDeepB', 'btagDeepB', 20, -1, 1, 'Deep B+BB btag discriminator'),
114  Plot1D('btagHbb', 'btagHbb', 20, -1, 1, 'Higgs to BB tagger discriminator'),
115  Plot1D('deepTagMD_H4qvsQCD', 'deepTagMD_H4qvsQCD', 20, 0, 1, 'Mass-decorrelated DeepBoostedJet tagger H->4q vs QCD discriminator'),
116  Plot1D('deepTagMD_HbbvsQCD', 'deepTagMD_HbbvsQCD', 20, 0, 1, 'Mass-decorrelated DeepBoostedJet tagger H->bb vs QCD discriminator'),
117  Plot1D('deepTagMD_TvsQCD', 'deepTagMD_TvsQCD', 20, 0, 1, 'Mass-decorrelated DeepBoostedJet tagger top vs QCD discriminator'),
118  Plot1D('deepTagMD_WvsQCD', 'deepTagMD_WvsQCD', 20, 0, 1, 'Mass-decorrelated DeepBoostedJet tagger W vs QCD discriminator'),
119  Plot1D('deepTagMD_ZHbbvsQCD', 'deepTagMD_ZHbbvsQCD', 20, 0, 1, 'Mass-decorrelated DeepBoostedJet tagger Z/H->bb vs QCD discriminator'),
120  Plot1D('deepTagMD_ZHccvsQCD', 'deepTagMD_ZHccvsQCD', 20, 0, 1, 'Mass-decorrelated DeepBoostedJet tagger Z/H->cc vs QCD discriminator'),
121  Plot1D('deepTagMD_ZbbvsQCD', 'deepTagMD_ZbbvsQCD', 20, 0, 1, 'Mass-decorrelated DeepBoostedJet tagger Z->bb vs QCD discriminator'),
122  Plot1D('deepTagMD_ZvsQCD', 'deepTagMD_ZvsQCD', 20, 0, 1, 'Mass-decorrelated DeepBoostedJet tagger Z vs QCD discriminator'),
123  Plot1D('deepTagMD_bbvsLight', 'deepTagMD_bbvsLight', 20, 0, 1, 'Mass-decorrelated DeepBoostedJet tagger Z/H/gluon->bb vs light flavour discriminator'),
124  Plot1D('deepTagMD_ccvsLight', 'deepTagMD_ccvsLight', 20, 0, 1, 'Mass-decorrelated DeepBoostedJet tagger Z/H/gluon->cc vs light flavour discriminator'),
125  Plot1D('deepTag_H', 'deepTag_H', 20, 0, 1, 'DeepBoostedJet tagger H(bb,cc,4q) sum'),
126  Plot1D('deepTag_QCD', 'deepTag_QCD', 20, 0, 1, 'DeepBoostedJet tagger QCD(bb,cc,b,c,others) sum'),
127  Plot1D('deepTag_QCDothers', 'deepTag_QCDothers', 20, 0, 1, 'DeepBoostedJet tagger QCDothers value'),
128  Plot1D('deepTag_TvsQCD', 'deepTag_TvsQCD', 20, 0, 1, 'DeepBoostedJet tagger top vs QCD discriminator'),
129  Plot1D('deepTag_WvsQCD', 'deepTag_WvsQCD', 20, 0, 1, 'DeepBoostedJet tagger W vs QCD discriminator'),
130  Plot1D('deepTag_ZvsQCD', 'deepTag_ZvsQCD', 20, 0, 1, 'DeepBoostedJet tagger Z vs QCD discriminator'),
131  Plot1D('eta', 'eta', 20, -4, 4, 'eta'),
132  Plot1D('jetId', 'jetId', 8, -0.5, 7.5, 'Jet ID flags bit1 is loose (always false in 2017 since it does not exist), bit2 is tight, bit3 is tightLepVeto'),
133  Plot1D('mass', 'mass', 20, 0, 300, 'mass'),
134  Plot1D('msoftdrop', 'msoftdrop', 20, -300, 300, 'Soft drop mass'),
135  Plot1D('n2b1', 'n2b1', 20, 0, 1, 'N2 (beta=1)'),
136  Plot1D('n3b1', 'n3b1', 20, 0, 5, 'N3 (beta=1)'),
137  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
138  Plot1D('pt', 'pt', 20, 0, 800, 'pt'),
139  Plot1D('rawFactor', 'rawFactor', 20, -0.5, 0.5, '1 - Factor to get back to raw pT'),
140  NoPlot('subJetIdx1'),
141  NoPlot('subJetIdx2'),
142  Plot1D('tau1', 'tau1', 20, 0, 1, 'Nsubjettiness (1 axis)'),
143  Plot1D('tau2', 'tau2', 20, 0, 1, 'Nsubjettiness (2 axis)'),
144  Plot1D('tau3', 'tau3', 20, 0, 1, 'Nsubjettiness (3 axis)'),
145  Plot1D('tau4', 'tau4', 20, 0, 1, 'Nsubjettiness (4 axis)'),
146  )
147  ),
148  Flag = cms.PSet(
149  sels = cms.PSet(),
150  plots = cms.VPSet(
151  Plot1D('BadChargedCandidateFilter', 'BadChargedCandidateFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
152  Plot1D('BadChargedCandidateSummer16Filter', 'BadChargedCandidateSummer16Filter', 2, -0.5, 1.5, 'Trigger/flag bit'),
153  Plot1D('BadPFMuonFilter', 'BadPFMuonFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
154  Plot1D('BadPFMuonSummer16Filter', 'BadPFMuonSummer16Filter', 2, -0.5, 1.5, 'Trigger/flag bit'),
155  Plot1D('CSCTightHalo2015Filter', 'CSCTightHalo2015Filter', 2, -0.5, 1.5, 'Trigger/flag bit'),
156  Plot1D('CSCTightHaloFilter', 'CSCTightHaloFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
157  Plot1D('CSCTightHaloTrkMuUnvetoFilter', 'CSCTightHaloTrkMuUnvetoFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
158  Plot1D('EcalDeadCellBoundaryEnergyFilter', 'EcalDeadCellBoundaryEnergyFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
159  Plot1D('EcalDeadCellTriggerPrimitiveFilter', 'EcalDeadCellTriggerPrimitiveFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
160  Plot1D('HBHENoiseFilter', 'HBHENoiseFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
161  Plot1D('HBHENoiseIsoFilter', 'HBHENoiseIsoFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
162  Plot1D('HcalStripHaloFilter', 'HcalStripHaloFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
163  Plot1D('METFilters', 'METFilters', 2, -0.5, 1.5, 'Trigger/flag bit'),
164  Plot1D('chargedHadronTrackResolutionFilter', 'chargedHadronTrackResolutionFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
165  Plot1D('ecalBadCalibFilter', 'ecalBadCalibFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
166  Plot1D('ecalBadCalibFilterV2', 'ecalBadCalibFilterV2', 1, 0.5, 1.5, 'Bad ECAL calib flag (updated xtal list)'),
167  Plot1D('ecalLaserCorrFilter', 'ecalLaserCorrFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
168  Plot1D('eeBadScFilter', 'eeBadScFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
169  Plot1D('globalSuperTightHalo2016Filter', 'globalSuperTightHalo2016Filter', 2, -0.5, 1.5, 'Trigger/flag bit'),
170  Plot1D('globalTightHalo2016Filter', 'globalTightHalo2016Filter', 2, -0.5, 1.5, 'Trigger/flag bit'),
171  Plot1D('goodVertices', 'goodVertices', 2, -0.5, 1.5, 'Trigger/flag bit'),
172  Plot1D('hcalLaserEventFilter', 'hcalLaserEventFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
173  Plot1D('muonBadTrackFilter', 'muonBadTrackFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
174  Plot1D('trkPOGFilters', 'trkPOGFilters', 2, -0.5, 1.5, 'Trigger/flag bit'),
175  Plot1D('trkPOG_logErrorTooManyClusters', 'trkPOG_logErrorTooManyClusters', 2, -0.5, 1.5, 'Trigger/flag bit'),
176  Plot1D('trkPOG_manystripclus53X', 'trkPOG_manystripclus53X', 2, -0.5, 1.5, 'Trigger/flag bit'),
177  Plot1D('trkPOG_toomanystripclus53X', 'trkPOG_toomanystripclus53X', 2, -0.5, 1.5, 'Trigger/flag bit'),
178  )
179  ),
180  GenDressedLepton = cms.PSet(
181  sels = cms.PSet(),
182  plots = cms.VPSet(
183  Count1D('_size', 25, -0.5, 24.5, 'Dressed leptons from Rivet-based ParticleLevelProducer'),
184  Plot1D('eta', 'eta', 20, -7, 7, 'eta'),
185  Plot1D('hasTauAnc', 'hasTauAnc', 2, -0.5, 1.5, 'true if Dressed lepton has a tau as ancestor'),
186  Plot1D('mass', 'mass', 20, 0, 200, 'mass'),
187  Plot1D('pdgId', 'pdgId', 40, -20, 20, 'pdgId'),
188  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
189  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
190  )
191  ),
192  GenJet = cms.PSet(
193  sels = cms.PSet(),
194  plots = cms.VPSet(
195  Count1D('_size', 25, -0.5, 24.5, 'slimmedGenJets, i.e. ak4 Jets made with visible genparticles'),
196  Plot1D('eta', 'eta', 20, -7, 7, 'eta'),
197  Plot1D('hadronFlavour', 'hadronFlavour', 6, -0.5, 5.5, 'flavour from hadron ghost clustering'),
198  Plot1D('mass', 'mass', 20, 0, 200, 'mass'),
199  Plot1D('partonFlavour', 'partonFlavour', 40, -9.5, 30.5, 'flavour from parton matching'),
200  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
201  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
202  )
203  ),
204  GenJetAK8 = cms.PSet(
205  sels = cms.PSet(),
206  plots = cms.VPSet(
207  Count1D('_size', 25, -0.5, 24.5, 'slimmedGenJetAK8, i.e. ak8 Jets made with visible genparticles'),
208  Plot1D('eta', 'eta', 20, -7, 7, 'eta'),
209  Plot1D('hadronFlavour', 'hadronFlavour', 6, -0.5, 5.5, 'flavour from hadron ghost clustering'),
210  Plot1D('mass', 'mass', 20, 0, 200, 'mass'),
211  Plot1D('partonFlavour', 'partonFlavour', 40, -9.5, 30.5, 'flavour from parton matching'),
212  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
213  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
214  )
215  ),
216  GenMET = cms.PSet(
217  sels = cms.PSet(),
218  plots = cms.VPSet(
219  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
220  Plot1D('pt', 'pt', 20, 0, 400, 'pt'),
221  )
222  ),
223  GenPart = cms.PSet(
224  sels = cms.PSet(),
225  plots = cms.VPSet(
226  Count1D('_size', 40, -0.5, 124.5, 'interesting gen particles '),
227  Plot1D('eta', 'eta', 20, -30000, 30000, 'eta'),
228  NoPlot('genPartIdxMother'),
229  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'),
230  Plot1D('pdgId', 'pdgId', 20, -6000, 6000, 'PDG id'),
231  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
232  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
233  Plot1D('status', 'status', 20, 0, 100, 'Particle status. 1=stable'),
234  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, '),
235  )
236  ),
237  GenVisTau = cms.PSet(
238  sels = cms.PSet(),
239  plots = cms.VPSet(
240  Count1D('_size', 4, -0.5, 3.5, 'gen hadronic taus '),
241  Plot1D('charge', 'charge', 3, -1.5, 1.5, 'charge'),
242  Plot1D('eta', 'eta', 20, -5, 5, 'eta'),
243  NoPlot('genPartIdxMother'),
244  Plot1D('mass', 'mass', 20, 0, 2, 'mass'),
245  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
246  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
247  Plot1D('status', 'status', 16, -0.5, 15.5, 'Hadronic tau decay mode. 0=OneProng0PiZero, 1=OneProng1PiZero, 2=OneProng2PiZero, 10=ThreeProng0PiZero, 11=ThreeProng1PiZero, 15=Other'),
248  )
249  ),
250  IsoTrack = cms.PSet(
251  sels = cms.PSet(),
252  plots = cms.VPSet(
253  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'),
254  Plot1D('dxy', 'dxy', 20, -0.02, 0.02, 'dxy (with sign) wrt first PV, in cm'),
255  Plot1D('dz', 'dz', 20, -0.09, 0.09, 'dz (with sign) wrt first PV, in cm'),
256  Plot1D('eta', 'eta', 20, -3, 3, 'eta'),
257  Plot1D('fromPV', 'fromPV', 5, -1.5, 3.5, 'provenance from primary vertex'),
258  Plot1D('isFromLostTrack', 'isFromLostTrack', 2, -0.5, 1.5, 'if isolated track comes from a lost track'),
259  Plot1D('isHighPurityTrack', 'isHighPurityTrack', 2, -0.5, 1.5, 'track is high purity'),
260  Plot1D('isPFcand', 'isPFcand', 2, -0.5, 1.5, 'if isolated track is a PF candidate'),
261  Plot1D('miniPFRelIso_all', 'miniPFRelIso_all', 20, 0, 2, 'mini PF relative isolation, total (with scaled rho*EA PU corrections)'),
262  Plot1D('miniPFRelIso_chg', 'miniPFRelIso_chg', 20, 0, 2, 'mini PF relative isolation, charged component'),
263  Plot1D('pdgId', 'pdgId', 20, -300, 300, 'PDG id of PF cand'),
264  Plot1D('pfRelIso03_all', 'pfRelIso03_all', 20, 0, 2, 'PF relative isolation dR=0.3, total (deltaBeta corrections)'),
265  Plot1D('pfRelIso03_chg', 'pfRelIso03_chg', 20, 0, 2, 'PF relative isolation dR=0.3, charged component'),
266  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
267  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
268  )
269  ),
270  Jet = cms.PSet(
271  sels = cms.PSet(
272  CentralPt30 = cms.string('abs(eta) < 2.4 && pt > 30'),
273  ForwardPt30 = cms.string('abs(eta) > 2.4 && pt > 30')
274  ),
275  plots = cms.VPSet(
276  Count1D('_size', 20, -0.5, 19.5, 'slimmedJets, i.e. ak4 PFJets CHS with JECs applied, after basic selection (pt > 15)'),
277  Plot1D('area', 'area', 20, 0.2, 0.8, 'jet catchment area, for JECs'),
278  Plot1D('bRegCorr', 'bRegCorr', 20, 0, 3, 'pt corrected with b-jet regression'),
279  Plot1D('bRegRes', 'bRegRes', 20, 0, 0.6, 'res on pt corrected with b-jet regression'),
280  Plot1D('btagCMVA', 'btagCMVA', 20, -1, 1, 'CMVA V2 btag discriminator'),
281  Plot1D('btagCSVV2', 'btagCSVV2', 20, -1, 1, ' pfCombinedInclusiveSecondaryVertexV2 b-tag discriminator (aka CSVV2)'),
282  Plot1D('btagDeepB', 'btagDeepB', 20, -1, 1, 'Deep B+BB btag discriminator'),
283  Plot1D('btagDeepC', 'btagDeepC', 20, 0, 1, 'DeepCSV charm btag discriminator'),
284  Plot1D('btagDeepFlavB', 'btagDeepFlavB', 20, 0, 1, 'DeepFlavour b+bb tag discriminator'),
285  Plot1D('btagDeepFlavC', 'btagDeepFlavC', 20, 0, 1, 'DeepFlavour charm tag discriminator'),
286  Plot1D('chEmEF', 'chEmEF', 20, 0, 1, 'charged Electromagnetic Energy Fraction'),
287  Plot1D('chHEF', 'chHEF', 20, 0, 2, 'charged Hadron Energy Fraction'),
288  Plot1D('cleanmask', 'cleanmask', 2, -0.5, 1.5, 'simple cleaning mask with priority to leptons'),
289  NoPlot('electronIdx1'),
290  NoPlot('electronIdx2'),
291  Plot1D('eta', 'eta', 20, -6, 6, 'eta'),
292  NoPlot('genJetIdx'),
293  Plot1D('hadronFlavour', 'hadronFlavour', 6, -0.5, 5.5, 'flavour from hadron ghost clustering'),
294  Plot1D('jercCHF', 'jercCHF', 20, 0, 1, 'Charged Hadron Energy Fraction with the JERC group definition'),
295  Plot1D('jercCHPUF', 'jercCHPUF', 20, 0, 2, 'Pileup Charged Hadron Energy Fraction with the JERC group definition'),
296  Plot1D('jetId', 'jetId', 8, -0.5, 7.5, 'Jet ID flags bit1 is loose (always false in 2017 since it does not exist), bit2 is tight, bit3 is tightLepVeto'),
297  Plot1D('mass', 'mass', 20, 0, 200, 'mass'),
298  Plot1D('muEF', 'muEF', 20, 0, 1, 'muon Energy Fraction'),
299  NoPlot('muonIdx1'),
300  NoPlot('muonIdx2'),
301  Plot1D('muonSubtrFactor', 'muonSubtrFactor', 20, 0, 1, '1-(muon-subtracted raw pt)/(raw pt)'),
302  Plot1D('nConstituents', 'nConstituents', 20, 0, 80, 'Number of particles in the jet'),
303  Plot1D('nElectrons', 'nElectrons', 5, -0.5, 4.5, 'number of electrons in the jet'),
304  Plot1D('nMuons', 'nMuons', 4, -0.5, 3.5, 'number of muons in the jet'),
305  Plot1D('neEmEF', 'neEmEF', 20, 0, 1, 'charged Electromagnetic EnergyFraction'),
306  Plot1D('neHEF', 'neHEF', 20, 0, 1, 'neutral Hadron Energy Fraction'),
307  Plot1D('partonFlavour', 'partonFlavour', 40, -9.5, 30.5, 'flavour from parton matching'),
308  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
309  Plot1D('pt', 'pt', 20, 0, 400, 'pt'),
310  Plot1D('puId', 'puId', 8, -0.5, 7.5, 'Pilup ID flags'),
311  Plot1D('qgl', 'qgl', 20, 0, 1, 'Quark vs Gluon likelihood discriminator'),
312  Plot1D('rawFactor', 'rawFactor', 20, -0.5, 0.5, '1 - Factor to get back to raw pT'),
313  )
314  ),
315  MET = cms.PSet(
316  sels = cms.PSet(),
317  plots = cms.VPSet(
318  Plot1D('MetUnclustEnUpDeltaX', 'MetUnclustEnUpDeltaX', 20, -20, 20, 'Delta (METx_mod-METx) Unclustered Energy Up'),
319  Plot1D('MetUnclustEnUpDeltaY', 'MetUnclustEnUpDeltaY', 20, -10, 10, 'Delta (METy_mod-METy) Unclustered Energy Up'),
320  Plot1D('covXX', 'covXX', 20, 0, 40000, 'xx element of met covariance matrix'),
321  Plot1D('covXY', 'covXY', 20, -8000, 8000, 'xy element of met covariance matrix'),
322  Plot1D('covYY', 'covYY', 20, 0, 50000, 'yy element of met covariance matrix'),
323  Plot1D('fiducialGenPhi', 'fiducialGenPhi', 20, -3.14159, 3.14159, 'phi'),
324  Plot1D('fiducialGenPt', 'fiducialGenPt', 20, 0, 400, 'pt'),
325  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
326  Plot1D('pt', 'pt', 20, 0, 400, 'pt'),
327  Plot1D('significance', 'significance', 20, 0, 200, 'MET significance'),
328  Plot1D('sumEt', 'sumEt', 20, 600, 5000, 'scalar sum of Et'),
329  )
330  ),
331  Muon = cms.PSet(
332  sels = cms.PSet(
333  Good = cms.string('pt > 15 && abs(dxy) < 0.2 && abs(dz) < 0.5 && mediumId && miniPFRelIso_all < 0.4')
334  ),
335  plots = cms.VPSet(
336  Count1D('_size', 5, -0.5, 4.5, 'slimmedMuons after basic selection (pt > 3 && track.isNonnull && isLooseMuon)'),
337  Plot1D('charge', 'charge', 3, -1.5, 1.5, 'electric charge'),
338  Plot1D('cleanmask', 'cleanmask', 2, -0.5, 1.5, 'simple cleaning mask with priority to leptons'),
339  Plot1D('dxy', 'dxy', 20, -0.1, 0.1, 'dxy (with sign) wrt first PV, in cm'),
340  Plot1D('dxyErr', 'dxyErr', 20, 0, 0.1, 'dxy uncertainty, in cm'),
341  Plot1D('dz', 'dz', 20, -0.3, 0.3, 'dz (with sign) wrt first PV, in cm'),
342  Plot1D('dzErr', 'dzErr', 20, 0, 0.2, 'dz uncertainty, in cm'),
343  Plot1D('eta', 'eta', 20, -2.5, 2.5, 'eta'),
344  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'),
345  NoPlot('genPartIdx'),
346  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)'),
347  Plot1D('inTimeMuon', 'inTimeMuon', 2, -0.5, 1.5, 'inTimeMuon ID'),
348  Plot1D('ip3d', 'ip3d', 20, 0, 0.2, '3D impact parameter wrt first PV, in cm'),
349  Plot1D('isGlobal', 'isGlobal', 2, -0.5, 1.5, 'muon is global muon'),
350  Plot1D('isPFcand', 'isPFcand', 2, -0.5, 1.5, 'muon is PF candidate'),
351  Plot1D('isTracker', 'isTracker', 2, -0.5, 1.5, 'muon is tracker muon'),
352  NoPlot('jetIdx'),
353  Plot1D('jetPtRelv2', 'jetPtRelv2', 20, 0, 30, 'Relative momentum of the lepton with respect to the closest jet after subtracting the lepton'),
354  Plot1D('jetRelIso', 'jetRelIso', 20, -0.2, 1.8, 'Relative isolation in matched jet (1/ptRatio-1, pfRelIso04_all if no matched jet)'),
355  Plot1D('looseId', 'looseId', 2, -0.5, 1.5, 'muon is loose muon'),
356  NoPlot('mass'),
357  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)'),
358  Plot1D('mediumPromptId', 'mediumPromptId', 2, -0.5, 1.5, 'cut-based ID, medium prompt WP'),
359  Plot1D('miniIsoId', 'miniIsoId', 5, -0.5, 4.5, 'MiniIso ID from miniAOD selector (1=MiniIsoLoose, 2=MiniIsoMedium, 3=MiniIsoTight, 4=MiniIsoVeryTight)'),
360  Plot1D('miniPFRelIso_all', 'miniPFRelIso_all', 20, 0, 1, 'mini PF relative isolation, total (with scaled rho*EA PU corrections)'),
361  Plot1D('miniPFRelIso_chg', 'miniPFRelIso_chg', 20, 0, 1, 'mini PF relative isolation, charged component'),
362  Plot1D('multiIsoId', 'multiIsoId', 3, -0.5, 2.5, 'MultiIsoId from miniAOD selector (1=MultiIsoLoose, 2=MultiIsoMedium)'),
363  Plot1D('mvaId', 'mvaId', 4, -0.5, 3.5, 'Mva ID from miniAOD selector (1=MvaLoose, 2=MvaMedium, 3=MvaTight)'),
364  Plot1D('mvaLowPt', 'mvaLowPt', 20, -1, 1, 'Low pt muon ID score'),
365  Plot1D('mvaTTH', 'mvaTTH', 20, -1, 1, 'TTH MVA lepton ID score'),
366  Plot1D('nStations', 'nStations', 5, -0.5, 4.5, 'number of matched stations with default arbitration (segment & track)'),
367  Plot1D('nTrackerLayers', 'nTrackerLayers', 15, 2.5, 17.5, 'number of layers in the tracker'),
368  Plot1D('pdgId', 'pdgId', 27, -13.5, 13.5, 'PDG code assigned by the event reconstruction (not by MC truth)'),
369  Plot1D('pfIsoId', 'pfIsoId', 7, -0.5, 6.5, 'PFIso ID from miniAOD selector (1=PFIsoVeryLoose, 2=PFIsoLoose, 3=PFIsoMedium, 4=PFIsoTight, 5=PFIsoVeryTight, 6=PFIsoVeryVeryTight)'),
370  Plot1D('pfRelIso03_all', 'pfRelIso03_all', 20, 0, 2, 'PF relative isolation dR=0.3, total (deltaBeta corrections)'),
371  Plot1D('pfRelIso03_chg', 'pfRelIso03_chg', 20, 0, 2, 'PF relative isolation dR=0.3, charged component'),
372  Plot1D('pfRelIso04_all', 'pfRelIso04_all', 20, 0, 2, 'PF relative isolation dR=0.4, total (deltaBeta corrections)'),
373  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
374  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
375  Plot1D('ptErr', 'ptErr', 20, 0, 20, 'ptError of the muon track'),
376  Plot1D('segmentComp', 'segmentComp', 20, 0, 1, 'muon segment compatibility'),
377  Plot1D('sip3d', 'sip3d', 20, 0, 20, '3D impact parameter significance wrt first PV'),
378  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)'),
379  Plot1D('softMva', 'softMva', 20, -1, 1, 'soft MVA ID score'),
380  Plot1D('softMvaId', 'softMvaId', 2, -0.5, 1.5, 'soft MVA ID'),
381  Plot1D('tightCharge', 'tightCharge', 1, 1.5, 2.5, 'Tight charge criterion using pterr/pt of muonBestTrack (0:fail, 2:pass)'),
382  Profile1D('tightId', 'tightId', 'pt', 16, 0, 80, 'POG Tight muon ID'),
383  Plot1D('tkIsoId', 'tkIsoId', 3, -0.5, 2.5, 'TkIso ID (1=TkIsoLoose, 2=TkIsoTight)'),
384  Plot1D('tkRelIso', 'tkRelIso', 100, 0, 1, 'Tracker-based relative isolation dR=0.3 for highPt, trkIso/tunePpt'),
385  Plot1D('triggerIdLoose', 'triggerIdLoose', 2, -0.5, 1.5, 'TriggerIdLoose ID'),
386  Plot1D('tunepRelPt', 'tunepRelPt', 200, 0, 200, 'TuneP relative pt, tunePpt/pt'),
387  )
388  ),
389  OtherPV = cms.PSet(
390  sels = cms.PSet(),
391  plots = cms.VPSet(
392  NoPlot('_size'),
393  Plot1D('z', 'z', 20, -20, 20, 'Z position of other primary vertices, excluding the main PV'),
394  )
395  ),
396  PV = cms.PSet(
397  sels = cms.PSet(),
398  plots = cms.VPSet(
399  Plot1D('chi2', 'chi2', 20, 0.5, 3, 'main primary vertex reduced chi2'),
400  Plot1D('ndof', 'ndof', 20, 0, 500, 'main primary vertex number of degree of freedom'),
401  Plot1D('npvs', 'npvs', 20, 0, 60, 'total number of reconstructed primary vertices'),
402  Plot1D('npvsGood', 'npvsGood', 20, 0, 60, 'total number of Good primary vertices'),
403  Plot1D('score', 'score', 20, 0, 300000, 'main primary vertex score, i.e. sum pt2 of clustered objects'),
404  Plot1D('x', 'x', 20, -0.3, 0.3, 'main primary vertex position x coordinate'),
405  Plot1D('y', 'y', 20, -0.3, 0.3, 'main primary vertex position y coordinate'),
406  Plot1D('z', 'z', 20, -20, 20, 'main primary vertex position z coordinate'),
407  )
408  ),
409  Photon = cms.PSet(
410  sels = cms.PSet(),
411  plots = cms.VPSet(
412  Count1D('_size', 9, -0.5, 8.5, 'slimmedPhotons after basic selection (pt > 5 )'),
413  Plot1D('charge', 'charge', 1, -0.5, 0.5, 'electric charge'),
414  Plot1D('cleanmask', 'cleanmask', 1, 0.5, 1.5, 'simple cleaning mask with priority to leptons'),
415  Plot1D('cutBasedBitmap', 'cutBasedBitmap', 8, -0.5, 7.5, 'cut-based ID bitmap, 2^(0:loose, 1:medium, 2:tight)'),
416  Plot1D('cutBasedV1Bitmap', 'cutBasedV1Bitmap', 8, -0.5, 7.5, 'cut-based ID bitmap, Fall17 V1, 2^(0:loose, 1:medium, 2:tight)'),
417  Plot1D('eCorr', 'eCorr', 20, 0.8, 1.2, 'ratio of the calibrated energy/miniaod energy'),
418  NoPlot('electronIdx'),
419  Plot1D('electronVeto', 'electronVeto', 2, -0.5, 1.5, 'pass electron veto'),
420  Plot1D('energyErr', 'energyErr', 20, 0, 300, 'energy error of the cluster from regression'),
421  Plot1D('eta', 'eta', 20, -3, 3, 'eta'),
422  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'),
423  NoPlot('genPartIdx'),
424  Plot1D('hoe', 'hoe', 20, 0, 0.6, 'H over E'),
425  Plot1D('isScEtaEB', 'isScEtaEB', 2, -0.5, 1.5, 'is supercluster eta within barrel acceptance'),
426  Plot1D('isScEtaEE', 'isScEtaEE', 2, -0.5, 1.5, 'is supercluster eta within endcap acceptance'),
427  NoPlot('jetIdx'),
428  NoPlot('mass'),
429  Plot1D('mvaID', 'mvaID', 20, -1, 1, 'MVA ID score'),
430  Plot1D('mvaIDV1', 'mvaIDV1', 20, -1, 1, 'MVA ID score, Fall17 V1p1'),
431  Plot1D('mvaID_WP80', 'mvaID_WP80', 2, -0.5, 1.5, 'MVA ID WP80'),
432  Plot1D('mvaID_WP90', 'mvaID_WP90', 2, -0.5, 1.5, 'MVA ID WP90'),
433  Plot1D('pdgId', 'pdgId', 1, 21.5, 22.5, 'PDG code assigned by the event reconstruction (not by MC truth)'),
434  Plot1D('pfRelIso03_all', 'pfRelIso03_all', 20, 0, 2, 'PF relative isolation dR=0.3, total (with rho*EA PU corrections)'),
435  Plot1D('pfRelIso03_chg', 'pfRelIso03_chg', 20, 0, 2, 'PF relative isolation dR=0.3, charged component (with rho*EA PU corrections)'),
436  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
437  Plot1D('pixelSeed', 'pixelSeed', 2, -0.5, 1.5, 'has pixel seed'),
438  Plot1D('pt', 'pt', 20, 0, 200, 'pt (corrected)'),
439  Plot1D('r9', 'r9', 20, 0, 1.1, 'R9 of the supercluster, calculated with full 5x5 region'),
440  Plot1D('seedGain', 'seedGain', 12, 0.5, 12.5, 'Gain of the seed crystal'),
441  Plot1D('sieie', 'sieie', 20, 0, 0.05, 'sigma_IetaIeta of the supercluster, calculated with full 5x5 region'),
442  NoPlot('vidNestedWPBitmap'),
443  )
444  ),
445  Pileup = cms.PSet(
446  sels = cms.PSet(),
447  plots = cms.VPSet(
448  Plot1D('gpudensity', 'gpudensity', 20, 0, 0.9, 'Generator-level PU vertices / mm'),
449  Plot1D('nPU', 'nPU', 20, 0, 60, 'the number of pileup interactions that have been added to the event in the current bunch crossing'),
450  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'),
451  Plot1D('pudensity', 'pudensity', 5, -0.5, 4.5, 'PU vertices / mm'),
452  Plot1D('sumEOOT', 'sumEOOT', 20, 0, 800, 'number of early out of time pileup'),
453  Plot1D('sumLOOT', 'sumLOOT', 20, 0, 300, 'number of late out of time pileup'),
454  )
455  ),
456  PuppiMET = cms.PSet(
457  sels = cms.PSet(),
458  plots = cms.VPSet(
459  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
460  Plot1D('pt', 'pt', 20, 0, 400, 'pt'),
461  Plot1D('sumEt', 'sumEt', 20, 200, 3000, 'scalar sum of Et'),
462  )
463  ),
464  RawMET = cms.PSet(
465  sels = cms.PSet(),
466  plots = cms.VPSet(
467  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
468  Plot1D('pt', 'pt', 20, 0, 400, 'pt'),
469  Plot1D('sumEt', 'sumEt', 20, 400, 4000, 'scalar sum of Et'),
470  )
471  ),
472  SV = cms.PSet(
473  sels = cms.PSet(),
474  plots = cms.VPSet(
475  Count1D('_size', 14, -0.5, 13.5),
476  Plot1D('chi2', 'chi2', 20, -2000, 2000, 'reduced chi2, i.e. chi/ndof'),
477  Plot1D('dlen', 'dlen', 20, 0, 4, 'decay length in cm'),
478  Plot1D('dlenSig', 'dlenSig', 20, 0, 50, 'decay length significance'),
479  Plot1D('eta', 'eta', 20, -3, 3, 'eta'),
480  Plot1D('mass', 'mass', 20, 0, 8, 'mass'),
481  Plot1D('ndof', 'ndof', 20, -1, 19, 'number of degrees of freedom'),
482  Plot1D('pAngle', 'pAngle', 20, -3.1416, 3.1416, 'pointing angle, i.e. acos(p_SV * (SV - PV)) '),
483  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
484  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
485  Plot1D('x', 'x', 20, -0.5, 0.5, 'secondary vertex X position, in cm'),
486  Plot1D('y', 'y', 20, -0.5, 0.5, 'secondary vertex Y position, in cm'),
487  Plot1D('z', 'z', 20, -10, 10, 'secondary vertex Z position, in cm'),
488  )
489  ),
490  SoftActivityJet = cms.PSet(
491  sels = cms.PSet(),
492  plots = cms.VPSet(
493  Count1D('_size', 7, -0.5, 6.5, 'jets clustered from charged candidates compatible with primary vertex (charge()!=0 && pvAssociationQuality()>=5 && vertexRef().key()==0)'),
494  Plot1D('eta', 'eta', 20, -3, 3, 'eta'),
495  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
496  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
497  )
498  ),
499  SubJet = cms.PSet(
500  sels = cms.PSet(),
501  plots = cms.VPSet(
502  Count1D('_size', 9, -0.5, 8.5, 'slimmedJetsAK8, i.e. ak8 fat jets for boosted analysis'),
503  Plot1D('btagCMVA', 'btagCMVA', 20, -1, 1, 'CMVA V2 btag discriminator'),
504  Plot1D('btagCSVV2', 'btagCSVV2', 20, -1, 1, ' pfCombinedInclusiveSecondaryVertexV2 b-tag discriminator (aka CSVV2)'),
505  Plot1D('btagDeepB', 'btagDeepB', 20, -1, 1, 'Deep B+BB btag discriminator'),
506  Plot1D('eta', 'eta', 20, -4, 4, 'eta'),
507  Plot1D('mass', 'mass', 20, -200, 200, 'mass'),
508  Plot1D('n2b1', 'n2b1', 20, 0, 1, 'N2 (beta=1)'),
509  Plot1D('n3b1', 'n3b1', 20, 0, 5, 'N3 (beta=1)'),
510  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
511  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
512  Plot1D('rawFactor', 'rawFactor', 20, -0.5, 0.5, '1 - Factor to get back to raw pT'),
513  Plot1D('tau1', 'tau1', 20, 0, 1, 'Nsubjettiness (1 axis)'),
514  Plot1D('tau2', 'tau2', 20, 0, 1, 'Nsubjettiness (2 axis)'),
515  Plot1D('tau3', 'tau3', 20, 0, 1, 'Nsubjettiness (3 axis)'),
516  Plot1D('tau4', 'tau4', 20, 0, 1, 'Nsubjettiness (4 axis)'),
517  )
518  ),
519  Tau = cms.PSet(
520  sels = cms.PSet(),
521  plots = cms.VPSet(
522  Count1D('_size', 7, -0.5, 6.5, "slimmedTaus after basic selection (pt > 18 && tauID('decayModeFindingNewDMs') && (tauID('byLooseCombinedIsolationDeltaBetaCorr3Hits') || tauID('byVLooseIsolationMVArun2v1DBoldDMwLT') || tauID('byVLooseIsolationMVArun2v1DBnewDMwLT') || tauID('byVLooseIsolationMVArun2v1DBdR03oldDMwLT')))"),
523  Plot1D('charge', 'charge', 3, -1.5, 1.5, 'electric charge'),
524  Plot1D('chargedIso', 'chargedIso', 20, 0, 200, 'charged isolation'),
525  Plot1D('cleanmask', 'cleanmask', 1, 0.5, 1.5, 'simple cleaning mask with priority to leptons'),
526  Plot1D('decayMode', 'decayMode', 12, -0.5, 11.5, 'decayMode()'),
527  Plot1D('dxy', 'dxy', 20, -1000, 1000, 'd_{xy} of lead track with respect to PV, in cm (with sign)'),
528  Plot1D('dz', 'dz', 20, -20, 20, 'd_{z} of lead track with respect to PV, in cm (with sign)'),
529  Plot1D('eta', 'eta', 20, -3, 3, 'eta'),
530  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'),
531  NoPlot('genPartIdx'),
532  Plot1D('idAntiEle', 'idAntiEle', 32, -0.5, 31.5, 'Anti-electron MVA discriminator V6: bitmask 1 = VLoose, 2 = Loose, 4 = Medium, 8 = Tight, 16 = VTight'),
533  Plot1D('idAntiEle2018', 'idAntiEle2018', 32, -0.5, 31.5, 'Anti-electron MVA discriminator V6 (2018): bitmask 1 = VLoose, 2 = Loose, 4 = Medium, 8 = Tight, 16 = VTight'),
534  Plot1D('idAntiMu', 'idAntiMu', 4, -0.5, 3.5, 'Anti-muon discriminator V3: : bitmask 1 = Loose, 2 = Tight'),
535  Plot1D('idDecayMode', 'idDecayMode', 2, -0.5, 1.5, "tauID('decayModeFinding')"),
536  Plot1D('idDecayModeNewDMs', 'idDecayModeNewDMs', 2, -0.5, 1.5, "tauID('decayModeFindingNewDMs')"),
537  Plot1D('idMVAnewDM2017v2', 'idMVAnewDM2017v2', 128, -0.5, 127.5, 'IsolationMVArun2v1DBnewDMwLT ID working point (2017v2): bitmask 1 = VVLoose, 2 = VLoose, 4 = Loose, 8 = Medium, 16 = Tight, 32 = VTight, 64 = VVTight'),
538  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'),
539  Plot1D('idMVAoldDM2017v1', 'idMVAoldDM2017v1', 128, -0.5, 127.5, 'IsolationMVArun2v1DBoldDMwLT ID working point (2017v1): bitmask 1 = VVLoose, 2 = VLoose, 4 = Loose, 8 = Medium, 16 = Tight, 32 = VTight, 64 = VVTight'),
540  Plot1D('idMVAoldDM2017v2', 'idMVAoldDM2017v2', 128, -0.5, 127.5, 'IsolationMVArun2v1DBoldDMwLT ID working point (2017v2): bitmask 1 = VVLoose, 2 = VLoose, 4 = Loose, 8 = Medium, 16 = Tight, 32 = VTight, 64 = VVTight'),
541  Plot1D('idMVAoldDMdR032017v2', 'idMVAoldDMdR032017v2', 128, -0.5, 127.5, 'IsolationMVArun2v1DBdR03oldDMwLT ID working point (217v2): bitmask 1 = VVLoose, 2 = VLoose, 4 = Loose, 8 = Medium, 16 = Tight, 32 = VTight, 64 = VVTight'),
542  NoPlot('jetIdx'),
543  Plot1D('leadTkDeltaEta', 'leadTkDeltaEta', 20, -0.1, 0.1, 'eta of the leading track, minus tau eta'),
544  Plot1D('leadTkDeltaPhi', 'leadTkDeltaPhi', 20, -0.1, 0.1, 'phi of the leading track, minus tau phi'),
545  Plot1D('leadTkPtOverTauPt', 'leadTkPtOverTauPt', 20, 0, 2, 'pt of the leading track divided by tau pt'),
546  Plot1D('mass', 'mass', 20, 0, 5, 'mass'),
547  Plot1D('neutralIso', 'neutralIso', 20, 0, 200, 'neutral (photon) isolation'),
548  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
549  Plot1D('photonsOutsideSignalCone', 'photonsOutsideSignalCone', 20, 0, 30, 'sum of photons outside signal cone'),
550  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
551  Plot1D('puCorr', 'puCorr', 20, 0, 90, 'pileup correction'),
552  Plot1D('rawAntiEle', 'rawAntiEle', 20, -100, 100, 'Anti-electron MVA discriminator V6 raw output discriminator'),
553  Plot1D('rawAntiEle2018', 'rawAntiEle2018', 20, -100, 100, 'Anti-electron MVA discriminator V6 raw output discriminator (2018)'),
554  Plot1D('rawAntiEleCat', 'rawAntiEleCat', 17, -1.5, 15.5, 'Anti-electron MVA discriminator V6 category'),
555  Plot1D('rawAntiEleCat2018', 'rawAntiEleCat2018', 17, -1.5, 15.5, 'Anti-electron MVA discriminator V6 category (2018)'),
556  Plot1D('rawIso', 'rawIso', 20, 0, 200, 'combined isolation (deltaBeta corrections)'),
557  Plot1D('rawIsodR03', 'rawIsodR03', 20, 0, 200, 'combined isolation (deltaBeta corrections, dR=0.3)'),
558  Plot1D('rawMVAnewDM2017v2', 'rawMVAnewDM2017v2', 20, -1, 1, 'byIsolationMVArun2v1DBnewDMwLT raw output discriminator (2017v2)'),
559  Plot1D('rawMVAoldDM', 'rawMVAoldDM', 20, -1, 1, 'byIsolationMVArun2v1DBoldDMwLT raw output discriminator'),
560  Plot1D('rawMVAoldDM2017v1', 'rawMVAoldDM2017v1', 20, -1, 1, 'byIsolationMVArun2v1DBoldDMwLT raw output discriminator (2017v1)'),
561  Plot1D('rawMVAoldDM2017v2', 'rawMVAoldDM2017v2', 20, -1, 1, 'byIsolationMVArun2v1DBoldDMwLT raw output discriminator (2017v2)'),
562  Plot1D('rawMVAoldDMdR032017v2', 'rawMVAoldDMdR032017v2', 20, -1, 1, 'byIsolationMVArun2v1DBdR03oldDMwLT raw output discriminator (2017v2)'),
563  )
564  ),
565  TkMET = cms.PSet(
566  sels = cms.PSet(),
567  plots = cms.VPSet(
568  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
569  Plot1D('pt', 'pt', 20, 0, 400, 'pt'),
570  Plot1D('sumEt', 'sumEt', 20, 0, 2000, 'scalar sum of Et'),
571  )
572  ),
573  TrigObj = cms.PSet(
574  sels = cms.PSet(
575  Electron = cms.string('id == 11'),
576  HT = cms.string('id == 3'),
577  Jet = cms.string('id == 1'),
578  MET = cms.string('id == 2'),
579  MHT = cms.string('id == 4'),
580  Muon = cms.string('id == 13'),
581  Photon = cms.string('id == 22'),
582  Tau = cms.string('id == 15')
583  ),
584  plots = cms.VPSet(
585  Count1D('_size', 28, -0.5, 27.5),
586  Plot1D('eta', 'eta', 20, -5, 5, 'eta'),
587  Plot1D('filterBits', 'filterBits', 1024, -0.5, 1023.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'),
588  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'),
589  Plot1D('l1charge', 'l1charge', 3, -1.5, 1.5, 'charge of associated L1 seed'),
590  Plot1D('l1iso', 'l1iso', 4, -0.5, 3.5, 'iso of associated L1 seed'),
591  Plot1D('l1pt', 'l1pt', 20, 0, 200, 'pt of associated L1 seed'),
592  Plot1D('l1pt_2', 'l1pt_2', 20, 0, 200, 'pt of associated secondary L1 seed'),
593  Plot1D('l2pt', 'l2pt', 20, 0, 200, "pt of associated 'L2' seed (i.e. HLT before tracking/PF)"),
594  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
595  Plot1D('pt', 'pt', 40, 0, 400, 'pt'),
596  )
597  ),
598  )
599 )
def Count1D(name, nbins, xmin, xmax, title="")
def Profile1D(name, ycolumn, xcolumn, nbins, xmin, xmax, title="")