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  DeepMETResolutionTune = cms.PSet(
36  sels = cms.PSet(),
37  plots = cms.VPSet(
38  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'Deep MET Resolution Tune phi'),
39  Plot1D('pt', 'pt', 20, 0, 400, 'Deep MET Response Tune pt'),
40  )
41  ),
42  DeepMETResponseTune = cms.PSet(
43  sels = cms.PSet(),
44  plots = cms.VPSet(
45  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'Deep MET Response Tune phi'),
46  Plot1D('pt', 'pt', 20, 0, 400, 'Deep MET Response Tune pt'),
47  )
48  ),
49  Electron = cms.PSet(
50  sels = cms.PSet(
51  Good = cms.string('pt > 15 && abs(dxy) < 0.2 && abs(dz) < 0.5 && cutBased >= 3 && miniPFRelIso_all < 0.4')
52  ),
53  plots = cms.VPSet(
54  Count1D('_size', 8, -0.5, 7.5, 'slimmedElectrons after basic selection (pt > 5 )'),
55  Plot1D('charge', 'charge', 3, -1.5, 1.5, 'electric charge'),
56  Plot1D('cleanmask', 'cleanmask', 1, 0.5, 1.5, 'simple cleaning mask with priority to leptons'),
57  Plot1D('convVeto', 'convVeto', 2, -0.5, 1.5, 'pass conversion veto'),
58  Plot1D('cutBased', 'cutBased', 5, -0.5, 4.5, 'cut-based ID (0:fail, 1:veto, 2:loose, 3:medium, 4:tight)'),
59  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)'),
60  Plot1D('cutBased_HEEP', 'cutBased_HEEP', 2, -0.5, 1.5, 'cut-based HEEP ID'),
61  Plot1D('deltaEtaSC', 'deltaEtaSC', 20, -0.2, 0.2, 'delta eta (SC,ele) with sign'),
62  Plot1D('dr03EcalRecHitSumEt', 'dr03EcalRecHitSumEt', 20, 0, 30, 'Non-PF Ecal isolation within a delta R cone of 0.3 with electron pt > 35 GeV'),
63  Plot1D('dr03HcalDepth1TowerSumEt', 'dr03HcalDepth1TowerSumEt', 20, 0, 20, 'Non-PF Hcal isolation within a delta R cone of 0.3 with electron pt > 35 GeV'),
64  Plot1D('dr03TkSumPt', 'dr03TkSumPt', 20, 0, 40, 'Non-PF track isolation within a delta R cone of 0.3 with electron pt > 35 GeV'),
65  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'),
66  Plot1D('dxy', 'dxy', 20, -0.1, 0.1, 'dxy (with sign) wrt first PV, in cm'),
67  Plot1D('dxyErr', 'dxyErr', 20, 0, 0.2, 'dxy uncertainty, in cm'),
68  Plot1D('dz', 'dz', 20, -0.3, 0.3, 'dz (with sign) wrt first PV, in cm'),
69  Plot1D('dzErr', 'dzErr', 20, 0, 0.2, 'dz uncertainty, in cm'),
70  Plot1D('eCorr', 'eCorr', 20, 0.8, 1.2, 'ratio of the calibrated energy/miniaod energy'),
71  Plot1D('eInvMinusPInv', 'eInvMinusPInv', 20, -0.1, 0.1, '1/E_SC - 1/p_trk'),
72  Plot1D('energyErr', 'energyErr', 20, 0, 90, 'energy error of the cluster-track combination'),
73  Plot1D('eta', 'eta', 20, -3, 3, 'eta'),
74  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'),
75  NoPlot('genPartIdx'),
76  Plot1D('hoe', 'hoe', 20, 0, 1, 'H over E'),
77  Plot1D('ip3d', 'ip3d', 20, 0, 0.2, '3D impact parameter wrt first PV, in cm'),
78  Plot1D('isPFcand', 'isPFcand', 2, -0.5, 1.5, 'electron is PF candidate'),
79  NoPlot('jetIdx'),
80  Plot1D('jetPtRelv2', 'jetPtRelv2', 20, 0, 60, 'Relative momentum of the lepton with respect to the closest jet after subtracting the lepton'),
81  Plot1D('jetRelIso', 'jetRelIso', 20, -0.2, 1.8, 'Relative isolation in matched jet (1/ptRatio-1, pfRelIso04_all if no matched jet)'),
82  Plot1D('lostHits', 'lostHits', 4, -0.5, 3.5, 'number of missing inner hits'),
83  Plot1D('jetNDauCharged', 'jetNDauCharged', 20, -0.5, 19.5, 'number of charged daughters of the closest jet'),
84  NoPlot('mass'),
85  Plot1D('miniPFRelIso_all', 'miniPFRelIso_all', 20, 0, 1, 'mini PF relative isolation, total (with scaled rho*EA PU corrections)'),
86  Plot1D('miniPFRelIso_chg', 'miniPFRelIso_chg', 20, 0, 1, 'mini PF relative isolation, charged component'),
87  Plot1D('mvaFall17V1Iso', 'mvaFall17V1Iso', 20, -1, 1, 'MVA Iso ID V1 score'),
88  Plot1D('mvaFall17V1Iso_WP80', 'mvaFall17V1Iso_WP80', 2, -0.5, 1.5, 'MVA Iso ID V1 WP80'),
89  Plot1D('mvaFall17V1Iso_WP90', 'mvaFall17V1Iso_WP90', 2, -0.5, 1.5, 'MVA Iso ID V1 WP90'),
90  Plot1D('mvaFall17V1Iso_WPL', 'mvaFall17V1Iso_WPL', 2, -0.5, 1.5, 'MVA Iso ID V1 loose WP'),
91  Plot1D('mvaFall17V1noIso', 'mvaFall17V1noIso', 20, -1, 1, 'MVA noIso ID V1 score'),
92  Plot1D('mvaFall17V1noIso_WP80', 'mvaFall17V1noIso_WP80', 2, -0.5, 1.5, 'MVA noIso ID V1 WP80'),
93  Plot1D('mvaFall17V1noIso_WP90', 'mvaFall17V1noIso_WP90', 2, -0.5, 1.5, 'MVA noIso ID V1 WP90'),
94  Plot1D('mvaFall17V1noIso_WPL', 'mvaFall17V1noIso_WPL', 2, -0.5, 1.5, 'MVA noIso ID V1 loose WP'),
95  Plot1D('mvaFall17V2Iso', 'mvaFall17V2Iso', 20, -1, 1, 'MVA Iso ID V2 score'),
96  Plot1D('mvaFall17V2Iso_WP80', 'mvaFall17V2Iso_WP80', 2, -0.5, 1.5, 'MVA Iso ID V2 WP80'),
97  Plot1D('mvaFall17V2Iso_WP90', 'mvaFall17V2Iso_WP90', 2, -0.5, 1.5, 'MVA Iso ID V2 WP90'),
98  Plot1D('mvaFall17V2Iso_WPL', 'mvaFall17V2Iso_WPL', 2, -0.5, 1.5, 'MVA Iso ID V2 loose WP'),
99  Plot1D('mvaFall17V2noIso', 'mvaFall17V2noIso', 20, -1, 1, 'MVA noIso ID V2 score'),
100  Plot1D('mvaFall17V2noIso_WP80', 'mvaFall17V2noIso_WP80', 2, -0.5, 1.5, 'MVA noIso ID V2 WP80'),
101  Plot1D('mvaFall17V2noIso_WP90', 'mvaFall17V2noIso_WP90', 2, -0.5, 1.5, 'MVA noIso ID V2 WP90'),
102  Plot1D('mvaFall17V2noIso_WPL', 'mvaFall17V2noIso_WPL', 2, -0.5, 1.5, 'MVA noIso ID V2 loose WP'),
103  Plot1D('mvaTTH', 'mvaTTH', 20, -1, 1, 'TTH MVA lepton ID score'),
104  Plot1D('pdgId', 'pdgId', 27, -13.5, 13.5, 'PDG code assigned by the event reconstruction (not by MC truth)'),
105  Plot1D('pfRelIso03_all', 'pfRelIso03_all', 20, 0, 2, 'PF relative isolation dR=0.3, total (with rho*EA PU corrections)'),
106  Plot1D('pfRelIso03_chg', 'pfRelIso03_chg', 20, 0, 2, 'PF relative isolation dR=0.3, charged component'),
107  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
108  NoPlot('photonIdx'),
109  Plot1D('pt', 'pt', 20, 0, 200, 'pt (corrected)'),
110  Plot1D('r9', 'r9', 20, 0, 1.1, 'R9 of the supercluster, calculated with full 5x5 region'),
111  Plot1D('scEtOverPt', 'scEtOverPt', 20, -0.5, 0.5, '(supercluster transverse energy)/pt - 1'),
112  Plot1D('seedGain', 'seedGain', 12, 0.5, 12.5, 'Gain of the seed crystal'),
113  Plot1D('sieie', 'sieie', 20, 0, 0.05, 'sigma_IetaIeta of the supercluster, calculated with full 5x5 region'),
114  Plot1D('sip3d', 'sip3d', 20, 0, 20, '3D impact parameter significance wrt first PV, in cm'),
115  Plot1D('tightCharge', 'tightCharge', 3, -0.5, 2.5, 'Tight charge criteria (0:none, 1:isGsfScPixChargeConsistent, 2:isGsfCtfScPixChargeConsistent)'),
116  NoPlot('vidNestedWPBitmap'),
117  NoPlot('vidNestedWPBitmapHEEP'),
118  Plot1D('dEscaleUp', 'dEscaleUp', 100, -0.01, 0.01, '#Delta E scaleUp'),
119  Plot1D('dEscaleDown', 'dEscaleDown', 100, -0.01, 0.01, '#Delta E scaleDown'),
120  Plot1D('dEsigmaUp', 'dEsigmaUp', 100, -0.1, 0.1, '#Delta E sigmaUp'),
121  Plot1D('dEsigmaDown', 'dEsigmaDown', 100, -0.1, 0.1, '#Delta E sigmaDown'),
122  )
123  ),
124  FatJet = cms.PSet(
125  sels = cms.PSet(),
126  plots = cms.VPSet(
127  Count1D('_size', 6, -0.5, 5.5, 'slimmedJetsAK8, i.e. ak8 fat jets for boosted analysis'),
128  Plot1D('area', 'area', 20, 2, 4, 'jet catchment area, for JECs'),
129  Plot1D('btagCMVA', 'btagCMVA', 20, -1, 1, 'CMVA V2 btag discriminator'),
130  Plot1D('btagCSVV2', 'btagCSVV2', 20, -1, 1, ' pfCombinedInclusiveSecondaryVertexV2 b-tag discriminator (aka CSVV2)'),
131  Plot1D('btagDDBvL', 'btagDDBvL', 20, -1, 1, 'DeepDoubleX (mass-decorrelated) discriminator for H(Z)->bb vs QCD'),
132  Plot1D('btagDDBvLV2', 'btagDDBvLV2', 20, 0, 1, 'DeepDoubleX V2(mass-decorrelated) discriminator for H(Z)->bb vs QCD'),
133  Plot1D('btagDDBvL_noMD', 'btagDDBvL_noMD', 20, 0, 1, 'DeepDoubleX discriminator (no mass-decorrelation) for H(Z)->bb vs QCD'),
134  Plot1D('btagDDCvB', 'btagDDCvB', 20, -1, 1, 'DeepDoubleX (mass-decorrelated) discriminator for H(Z)->cc vs H(Z)->bb'),
135  Plot1D('btagDDCvBV2', 'btagDDCvBV2', 20, 0, 1, 'DeepDoubleX V2 (mass-decorrelated) discriminator for H(Z)->cc vs H(Z)->bb'),
136  Plot1D('btagDDCvB_noMD', 'btagDDCvB_noMD', 20, 0, 1, 'DeepDoubleX discriminator (no mass-decorrelation) for H(Z)->cc vs H(Z)->bb'),
137  Plot1D('btagDDCvL', 'btagDDCvL', 20, -1, 1, 'DeepDoubleX (mass-decorrelated) discriminator for H(Z)->cc vs QCD'),
138  Plot1D('btagDDCvLV2', 'btagDDCvLV2', 20, 0, 1, 'DeepDoubleX V2 (mass-decorrelated) discriminator for H(Z)->cc vs QCD'),
139  Plot1D('btagDDCvL_noMD', 'btagDDCvL_noMD', 20, 0, 1, 'DeepDoubleX discriminator (no mass-decorrelation) for H(Z)->cc vs QCD'),
140  Plot1D('btagDeepB', 'btagDeepB', 20, -1, 1, 'Deep B+BB btag discriminator'),
141  Plot1D('btagHbb', 'btagHbb', 20, -1, 1, 'Higgs to BB tagger discriminator'),
142  Plot1D('deepTagMD_H4qvsQCD', 'deepTagMD_H4qvsQCD', 20, 0, 1, 'Mass-decorrelated DeepBoostedJet tagger H->4q vs QCD discriminator'),
143  Plot1D('deepTagMD_HbbvsQCD', 'deepTagMD_HbbvsQCD', 20, 0, 1, 'Mass-decorrelated DeepBoostedJet tagger H->bb vs QCD discriminator'),
144  Plot1D('deepTagMD_TvsQCD', 'deepTagMD_TvsQCD', 20, 0, 1, 'Mass-decorrelated DeepBoostedJet tagger top vs QCD discriminator'),
145  Plot1D('deepTagMD_WvsQCD', 'deepTagMD_WvsQCD', 20, 0, 1, 'Mass-decorrelated DeepBoostedJet tagger W vs QCD discriminator'),
146  Plot1D('deepTagMD_ZHbbvsQCD', 'deepTagMD_ZHbbvsQCD', 20, 0, 1, 'Mass-decorrelated DeepBoostedJet tagger Z/H->bb vs QCD discriminator'),
147  Plot1D('deepTagMD_ZHccvsQCD', 'deepTagMD_ZHccvsQCD', 20, 0, 1, 'Mass-decorrelated DeepBoostedJet tagger Z/H->cc vs QCD discriminator'),
148  Plot1D('deepTagMD_ZbbvsQCD', 'deepTagMD_ZbbvsQCD', 20, 0, 1, 'Mass-decorrelated DeepBoostedJet tagger Z->bb vs QCD discriminator'),
149  Plot1D('deepTagMD_ZvsQCD', 'deepTagMD_ZvsQCD', 20, 0, 1, 'Mass-decorrelated DeepBoostedJet tagger Z vs QCD discriminator'),
150  Plot1D('deepTagMD_bbvsLight', 'deepTagMD_bbvsLight', 20, 0, 1, 'Mass-decorrelated DeepBoostedJet tagger Z/H/gluon->bb vs light flavour discriminator'),
151  Plot1D('deepTagMD_ccvsLight', 'deepTagMD_ccvsLight', 20, 0, 1, 'Mass-decorrelated DeepBoostedJet tagger Z/H/gluon->cc vs light flavour discriminator'),
152  Plot1D('deepTag_H', 'deepTag_H', 20, 0, 1, 'DeepBoostedJet tagger H(bb,cc,4q) sum'),
153  Plot1D('deepTag_QCD', 'deepTag_QCD', 20, 0, 1, 'DeepBoostedJet tagger QCD(bb,cc,b,c,others) sum'),
154  Plot1D('deepTag_QCDothers', 'deepTag_QCDothers', 20, 0, 1, 'DeepBoostedJet tagger QCDothers value'),
155  Plot1D('deepTag_TvsQCD', 'deepTag_TvsQCD', 20, 0, 1, 'DeepBoostedJet tagger top vs QCD discriminator'),
156  Plot1D('deepTag_WvsQCD', 'deepTag_WvsQCD', 20, 0, 1, 'DeepBoostedJet tagger W vs QCD discriminator'),
157  Plot1D('deepTag_ZvsQCD', 'deepTag_ZvsQCD', 20, 0, 1, 'DeepBoostedJet tagger Z vs QCD discriminator'),
158  NoPlot('electronIdx3SJ'),
159  Plot1D('eta', 'eta', 20, -4, 4, 'eta'),
160  NoPlot('genJetAK8Idx'),
161  Plot1D('hadronFlavour', 'hadronFlavour', 6, -0.5, 5.5, 'flavour from hadron ghost clustering'),
162  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'),
163  Plot1D('lsf3', 'lsf3', 20, -1, 1, 'Lepton Subjet Fraction (3 subjets)'),
164  Plot1D('mass', 'mass', 20, 0, 300, 'mass'),
165  Plot1D('msoftdrop', 'msoftdrop', 20, -300, 300, 'Soft drop mass'),
166  NoPlot('muonIdx3SJ'),
167  Plot1D('n2b1', 'n2b1', 20, 0, 1, 'N2 (beta=1)'),
168  Plot1D('n3b1', 'n3b1', 20, 0, 5, 'N3 (beta=1)'),
169  Plot1D('nBHadrons', 'nBHadrons', 4, -0.5, 3.5, 'number of b-hadrons'),
170  Plot1D('nCHadrons', 'nCHadrons', 4, -0.5, 3.5, 'number of c-hadrons'),
171  Plot1D('particleNetMD_QCD', 'particleNetMD_QCD', 20, 0, 1, 'Mass-decorrelated ParticleNet tagger raw QCD score'),
172  Plot1D('particleNetMD_Xbb', 'particleNetMD_Xbb', 20, 0, 1, 'Mass-decorrelated ParticleNet tagger raw X->bb score. For X->bb vs QCD tagging, use Xbb/(Xbb+QCD)'),
173  Plot1D('particleNetMD_Xcc', 'particleNetMD_Xcc', 20, 0, 1, 'Mass-decorrelated ParticleNet tagger raw X->cc score. For X->cc vs QCD tagging, use Xcc/(Xcc+QCD)'),
174  Plot1D('particleNetMD_Xqq', 'particleNetMD_Xqq', 20, 0, 1, 'Mass-decorrelated ParticleNet tagger raw X->qq (uds) score. For X->qq vs QCD tagging, use Xqq/(Xqq+QCD). For W vs QCD tagging, use (Xcc+Xqq)/(Xcc+Xqq+QCD)'),
175  Plot1D('particleNet_H4qvsQCD', 'particleNet_H4qvsQCD', 20, 0, 1, 'ParticleNet tagger H(->VV->qqqq) vs QCD discriminator'),
176  Plot1D('particleNet_HbbvsQCD', 'particleNet_HbbvsQCD', 20, 0, 1, 'ParticleNet tagger H(->bb) vs QCD discriminator'),
177  Plot1D('particleNet_HccvsQCD', 'particleNet_HccvsQCD', 20, 0, 1, 'ParticleNet tagger H(->cc) vs QCD discriminator'),
178  Plot1D('particleNet_QCD', 'particleNet_QCD', 20, 0, 1, 'ParticleNet tagger QCD(bb,cc,b,c,others) sum'),
179  Plot1D('particleNet_TvsQCD', 'particleNet_TvsQCD', 20, 0, 1, 'ParticleNet tagger top vs QCD discriminator'),
180  Plot1D('particleNet_WvsQCD', 'particleNet_WvsQCD', 20, 0, 1, 'ParticleNet tagger W vs QCD discriminator'),
181  Plot1D('particleNet_ZvsQCD', 'particleNet_ZvsQCD', 20, 0, 1, 'ParticleNet tagger Z vs QCD discriminator'),
182  Plot1D('particleNet_mass', 'particleNet_mass', 25, 0, 250, 'ParticleNet mass regression'),
183  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
184  Plot1D('pt', 'pt', 20, 0, 800, 'pt'),
185  Plot1D('rawFactor', 'rawFactor', 20, -0.5, 0.5, '1 - Factor to get back to raw pT'),
186  NoPlot('subJetIdx1'),
187  NoPlot('subJetIdx2'),
188  Plot1D('tau1', 'tau1', 20, 0, 1, 'Nsubjettiness (1 axis)'),
189  Plot1D('tau2', 'tau2', 20, 0, 1, 'Nsubjettiness (2 axis)'),
190  Plot1D('tau3', 'tau3', 20, 0, 1, 'Nsubjettiness (3 axis)'),
191  Plot1D('tau4', 'tau4', 20, 0, 1, 'Nsubjettiness (4 axis)'),
192  )
193  ),
194  Flag = cms.PSet(
195  sels = cms.PSet(),
196  plots = cms.VPSet(
197  Plot1D('BadChargedCandidateFilter', 'BadChargedCandidateFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
198  Plot1D('BadChargedCandidateSummer16Filter', 'BadChargedCandidateSummer16Filter', 2, -0.5, 1.5, 'Trigger/flag bit'),
199  Plot1D('BadPFMuonFilter', 'BadPFMuonFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
200  Plot1D('BadPFMuonDzFilter', 'BadPFMuonDzFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
201  Plot1D('BadPFMuonSummer16Filter', 'BadPFMuonSummer16Filter', 2, -0.5, 1.5, 'Trigger/flag bit'),
202  Plot1D('CSCTightHalo2015Filter', 'CSCTightHalo2015Filter', 2, -0.5, 1.5, 'Trigger/flag bit'),
203  Plot1D('CSCTightHaloFilter', 'CSCTightHaloFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
204  Plot1D('CSCTightHaloTrkMuUnvetoFilter', 'CSCTightHaloTrkMuUnvetoFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
205  Plot1D('EcalDeadCellBoundaryEnergyFilter', 'EcalDeadCellBoundaryEnergyFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
206  Plot1D('EcalDeadCellTriggerPrimitiveFilter', 'EcalDeadCellTriggerPrimitiveFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
207  Plot1D('HBHENoiseFilter', 'HBHENoiseFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
208  Plot1D('HBHENoiseIsoFilter', 'HBHENoiseIsoFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
209  Plot1D('HcalStripHaloFilter', 'HcalStripHaloFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
210  Plot1D('METFilters', 'METFilters', 2, -0.5, 1.5, 'Trigger/flag bit'),
211  Plot1D('chargedHadronTrackResolutionFilter', 'chargedHadronTrackResolutionFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
212  Plot1D('ecalBadCalibFilter', 'ecalBadCalibFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
213  Plot1D('ecalBadCalibFilterV2', 'ecalBadCalibFilterV2', 1, 0.5, 1.5, 'Bad ECAL calib flag (updated xtal list)'),
214  Plot1D('ecalLaserCorrFilter', 'ecalLaserCorrFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
215  Plot1D('eeBadScFilter', 'eeBadScFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
216  Plot1D('globalSuperTightHalo2016Filter', 'globalSuperTightHalo2016Filter', 2, -0.5, 1.5, 'Trigger/flag bit'),
217  Plot1D('globalTightHalo2016Filter', 'globalTightHalo2016Filter', 2, -0.5, 1.5, 'Trigger/flag bit'),
218  Plot1D('hfNoisyHitsFilter', 'hfNoisyHitsFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
219  Plot1D('goodVertices', 'goodVertices', 2, -0.5, 1.5, 'Trigger/flag bit'),
220  Plot1D('hcalLaserEventFilter', 'hcalLaserEventFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
221  Plot1D('muonBadTrackFilter', 'muonBadTrackFilter', 2, -0.5, 1.5, 'Trigger/flag bit'),
222  Plot1D('trkPOGFilters', 'trkPOGFilters', 2, -0.5, 1.5, 'Trigger/flag bit'),
223  Plot1D('trkPOG_logErrorTooManyClusters', 'trkPOG_logErrorTooManyClusters', 2, -0.5, 1.5, 'Trigger/flag bit'),
224  Plot1D('trkPOG_manystripclus53X', 'trkPOG_manystripclus53X', 2, -0.5, 1.5, 'Trigger/flag bit'),
225  Plot1D('trkPOG_toomanystripclus53X', 'trkPOG_toomanystripclus53X', 2, -0.5, 1.5, 'Trigger/flag bit'),
226  )
227  ),
228  FsrPhoton = cms.PSet(
229  sels = cms.PSet(),
230  plots = cms.VPSet(
231  Count1D('_size', 4, -0.5, 3.5, 'Final state radiation photons emitted by muons'),
232  Plot1D('dROverEt2', 'dROverEt2', 20, 0, 0.05, 'deltaR to associated muon divided by photon et2'),
233  Plot1D('eta', 'eta', 20, -2.5, 2.5, 'eta'),
234  NoPlot('muonIdx'),
235  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
236  Plot1D('pt', 'pt', 20, 0, 40, 'pt'),
237  Plot1D('relIso03', 'relIso03', 20, 0, 2, 'relative isolation in a 0.3 cone without CHS'),
238  )
239  ),
240  GenDressedLepton = cms.PSet(
241  sels = cms.PSet(),
242  plots = cms.VPSet(
243  Count1D('_size', 25, -0.5, 24.5, 'Dressed leptons from Rivet-based ParticleLevelProducer'),
244  Plot1D('eta', 'eta', 20, -7, 7, 'eta'),
245  Plot1D('hasTauAnc', 'hasTauAnc', 2, -0.5, 1.5, 'true if Dressed lepton has a tau as ancestor'),
246  Plot1D('mass', 'mass', 20, 0, 200, 'mass'),
247  Plot1D('pdgId', 'pdgId', 40, -20, 20, 'pdgId'),
248  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
249  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
250  )
251  ),
252  GenIsolatedPhoton = cms.PSet(
253  sels = cms.PSet(),
254  plots = cms.VPSet(
255  Count1D('_size', 10, -0.5, 9.5, 'Isolated photons from Rivet-based ParticleLevelProducer'),
256  Plot1D('eta', 'eta', 20, -7, 7, 'eta'),
257  NoPlot('mass'),
258  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
259  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
260  )
261  ),
262  GenJet = cms.PSet(
263  sels = cms.PSet(),
264  plots = cms.VPSet(
265  Count1D('_size', 25, -0.5, 24.5, 'slimmedGenJets, i.e. ak4 Jets made with visible genparticles'),
266  Plot1D('eta', 'eta', 20, -7, 7, 'eta'),
267  Plot1D('hadronFlavour', 'hadronFlavour', 6, -0.5, 5.5, 'flavour from hadron ghost clustering'),
268  Plot1D('mass', 'mass', 20, 0, 200, 'mass'),
269  Plot1D('partonFlavour', 'partonFlavour', 40, -9.5, 30.5, 'flavour from parton matching'),
270  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
271  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
272  )
273  ),
274  GenJetAK8 = cms.PSet(
275  sels = cms.PSet(),
276  plots = cms.VPSet(
277  Count1D('_size', 25, -0.5, 24.5, 'slimmedGenJetAK8, i.e. ak8 Jets made with visible genparticles'),
278  Plot1D('eta', 'eta', 20, -7, 7, 'eta'),
279  Plot1D('hadronFlavour', 'hadronFlavour', 6, -0.5, 5.5, 'flavour from hadron ghost clustering'),
280  Plot1D('mass', 'mass', 20, 0, 200, 'mass'),
281  Plot1D('partonFlavour', 'partonFlavour', 40, -9.5, 30.5, 'flavour from parton matching'),
282  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
283  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
284  )
285  ),
286  GenMET = cms.PSet(
287  sels = cms.PSet(),
288  plots = cms.VPSet(
289  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
290  Plot1D('pt', 'pt', 20, 0, 400, 'pt'),
291  )
292  ),
293  GenPart = cms.PSet(
294  sels = cms.PSet(),
295  plots = cms.VPSet(
296  Count1D('_size', 40, -0.5, 124.5, 'interesting gen particles '),
297  Plot1D('eta', 'eta', 20, -30000, 30000, 'eta'),
298  NoPlot('genPartIdxMother'),
299  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'),
300  Plot1D('pdgId', 'pdgId', 20, -6000, 6000, 'PDG id'),
301  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
302  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
303  Plot1D('status', 'status', 20, 0, 100, 'Particle status. 1=stable'),
304  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, '),
305  )
306  ),
307  GenVtx = cms.PSet(
308  sels = cms.PSet(),
309  plots = cms.VPSet(
310  Plot1D('x', 'x', 50, -0.5, 0.5, 'Gen vertex x position'),
311  Plot1D('y', 'y', 50, -0.5, 0.5, 'Gen vertex y position'),
312  Plot1D('z', 'z', 30, -15, 15, 'Gen vertex z position'),
313  Plot1D('t0', 't0', 20, -1, 1, 'Gen vertex time (t0)'),
314  )
315  ),
316  GenVisTau = cms.PSet(
317  sels = cms.PSet(),
318  plots = cms.VPSet(
319  Count1D('_size', 4, -0.5, 3.5, 'gen hadronic taus '),
320  Plot1D('charge', 'charge', 3, -1.5, 1.5, 'charge'),
321  Plot1D('eta', 'eta', 20, -5, 5, 'eta'),
322  NoPlot('genPartIdxMother'),
323  Plot1D('mass', 'mass', 20, 0, 2, 'mass'),
324  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
325  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
326  Plot1D('status', 'status', 16, -0.5, 15.5, 'Hadronic tau decay mode. 0=OneProng0PiZero, 1=OneProng1PiZero, 2=OneProng2PiZero, 10=ThreeProng0PiZero, 11=ThreeProng1PiZero, 15=Other'),
327  )
328  ),
329  IsoTrack = cms.PSet(
330  sels = cms.PSet(),
331  plots = cms.VPSet(
332  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'),
333  Plot1D('dxy', 'dxy', 20, -0.02, 0.02, 'dxy (with sign) wrt first PV, in cm'),
334  Plot1D('dz', 'dz', 20, -0.09, 0.09, 'dz (with sign) wrt first PV, in cm'),
335  Plot1D('eta', 'eta', 20, -3, 3, 'eta'),
336  Plot1D('fromPV', 'fromPV', 5, -1.5, 3.5, 'provenance from primary vertex'),
337  Plot1D('isFromLostTrack', 'isFromLostTrack', 2, -0.5, 1.5, 'if isolated track comes from a lost track'),
338  Plot1D('isHighPurityTrack', 'isHighPurityTrack', 2, -0.5, 1.5, 'track is high purity'),
339  Plot1D('isPFcand', 'isPFcand', 2, -0.5, 1.5, 'if isolated track is a PF candidate'),
340  Plot1D('miniPFRelIso_all', 'miniPFRelIso_all', 20, 0, 2, 'mini PF relative isolation, total (with scaled rho*EA PU corrections)'),
341  Plot1D('miniPFRelIso_chg', 'miniPFRelIso_chg', 20, 0, 2, 'mini PF relative isolation, charged component'),
342  Plot1D('pdgId', 'pdgId', 20, -300, 300, 'PDG id of PF cand'),
343  Plot1D('pfRelIso03_all', 'pfRelIso03_all', 20, 0, 2, 'PF relative isolation dR=0.3, total (deltaBeta corrections)'),
344  Plot1D('pfRelIso03_chg', 'pfRelIso03_chg', 20, 0, 2, 'PF relative isolation dR=0.3, charged component'),
345  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
346  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
347  Plot1D('charge', 'charge', 3, -1.5, 1.5, 'electric charge'),
348  )
349  ),
350  Jet = cms.PSet(
351  sels = cms.PSet(
352  CentralPt30 = cms.string('abs(eta) < 2.4 && pt > 30'),
353  ForwardPt30 = cms.string('abs(eta) > 2.4 && pt > 30')
354  ),
355  plots = cms.VPSet(
356  Count1D('_size', 20, -0.5, 19.5, 'slimmedJets, i.e. ak4 PFJets CHS with JECs applied, after basic selection (pt > 15)'),
357  Plot1D('area', 'area', 20, 0.2, 0.8, 'jet catchment area, for JECs'),
358  Plot1D('bRegCorr', 'bRegCorr', 20, 0, 3, 'pt correction for b-jet energy regression'),
359  Plot1D('bRegRes', 'bRegRes', 20, 0, 0.6, 'res on pt corrected with b-jet regression'),
360  Plot1D('btagCMVA', 'btagCMVA', 20, -1, 1, 'CMVA V2 btag discriminator'),
361  Plot1D('btagCSVV2', 'btagCSVV2', 20, -1, 1, ' pfCombinedInclusiveSecondaryVertexV2 b-tag discriminator (aka CSVV2)'),
362  Plot1D('btagDeepB', 'btagDeepB', 20, -1, 1, 'Deep B+BB btag discriminator'),
363  Plot1D('btagDeepC', 'btagDeepC', 20, 0, 1, 'DeepCSV charm btag discriminator'),
364  Plot1D('btagDeepCvB', 'btagDeepCvB', 20, -1, 1, 'DeepCSV c vs b+bb discriminator'),
365  Plot1D('btagDeepCvL', 'btagDeepCvL', 20, -1, 1, 'DeepCSV c vs udsg discriminator'),
366  Plot1D('btagDeepFlavB', 'btagDeepFlavB', 20, 0, 1, 'DeepFlavour b+bb tag discriminator'),
367  Plot1D('btagDeepFlavC', 'btagDeepFlavC', 20, 0, 1, 'DeepFlavour charm tag discriminator'),
368  Plot1D('btagDeepFlavCvB', 'btagDeepFlavCvB', 20, -1, 1, 'DeepJet c vs b+bb+lepb discriminator'),
369  Plot1D('btagDeepFlavCvL', 'btagDeepFlavCvL', 20, -1, 1, 'DeepJet c vs uds+g discriminator'),
370  Plot1D('btagDeepFlavQG', 'btagDeepFlavQG', 20, -1, 1, 'DeepJet g vs uds discriminator'),
371  Plot1D('cRegCorr', 'cRegCorr', 20, 0.6, 2, 'pt correction for c-jet energy regression'),
372  Plot1D('cRegRes', 'cRegRes', 20, 0.05, 0.4, 'res on pt corrected with c-jet regression'),
373  Plot1D('chEmEF', 'chEmEF', 20, 0, 1, 'charged Electromagnetic Energy Fraction'),
374  Plot1D('chFPV0EF', 'chFPV0EF', 20, 0, 2, 'charged fromPV==0 Energy Fraction (energy excluded from CHS jets). Previously called betastar.'),
375  Plot1D('chFPV1EF', 'chFPV1EF', 20, 0, 1, 'charged fromPV==1 Energy Fraction (component of the total charged Energy Fraction).'),
376  Plot1D('chFPV2EF', 'chFPV2EF', 20, 0, 1, 'charged fromPV==2 Energy Fraction (component of the total charged Energy Fraction).'),
377  Plot1D('chFPV3EF', 'chFPV3EF', 20, 0, 1, 'charged fromPV==3 Energy Fraction (component of the total charged Energy Fraction).'),
378  Plot1D('chHEF', 'chHEF', 20, 0, 2, 'charged Hadron Energy Fraction'),
379  Plot1D('cleanmask', 'cleanmask', 2, -0.5, 1.5, 'simple cleaning mask with priority to leptons'),
380  NoPlot('electronIdx1'),
381  NoPlot('electronIdx2'),
382  Plot1D('eta', 'eta', 20, -6, 6, 'eta'),
383  NoPlot('genJetIdx'),
384  Plot1D('hadronFlavour', 'hadronFlavour', 6, -0.5, 5.5, 'flavour from hadron ghost clustering'),
385  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'),
386  Plot1D('mass', 'mass', 20, 0, 200, 'mass'),
387  Plot1D('muEF', 'muEF', 20, 0, 1, 'muon Energy Fraction'),
388  NoPlot('muonIdx1'),
389  NoPlot('muonIdx2'),
390  Plot1D('muonSubtrFactor', 'muonSubtrFactor', 20, 0, 1, '1-(muon-subtracted raw pt)/(raw pt)'),
391  Plot1D('nConstituents', 'nConstituents', 20, 0, 80, 'Number of particles in the jet'),
392  Plot1D('nElectrons', 'nElectrons', 5, -0.5, 4.5, 'number of electrons in the jet'),
393  Plot1D('nMuons', 'nMuons', 4, -0.5, 3.5, 'number of muons in the jet'),
394  Plot1D('neEmEF', 'neEmEF', 20, 0, 1, 'charged Electromagnetic EnergyFraction'),
395  Plot1D('neHEF', 'neHEF', 20, 0, 1, 'neutral Hadron Energy Fraction'),
396  Plot1D('partonFlavour', 'partonFlavour', 40, -9.5, 30.5, 'flavour from parton matching'),
397  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
398  Plot1D('pt', 'pt', 20, 0, 400, 'pt'),
399  Plot1D('puId', 'puId', 8, -0.5, 7.5, 'Pilup ID flags'),
400  Plot1D('puIdDisc', 'puIdDisc', 20, -1, 1, 'Pilup ID discriminant with 102X (2018) training'),
401  Plot1D('qgl', 'qgl', 20, 0, 1, 'Quark vs Gluon likelihood discriminator'),
402  Plot1D('hfsigmaEtaEta', 'hfsigmaEtaEta', 20, 0, 0.2, 'sigmaEtaEta for HF jets (noise discriminating variable)'),
403  Plot1D('hfsigmaPhiPhi', 'hfsigmaPhiPhi', 20, 0, 0.2, 'sigmaPhiPhi for HF jets (noise discriminating variable)'),
404  Plot1D('hfcentralEtaStripSize', 'hfcentralEtaStripSize', 10, 0, 10, 'eta size of the central tower strip in HF (noise discriminating variable)'),
405  Plot1D('hfadjacentEtaStripsSize', 'hfadjacentEtaStripsSize', 10, 0, 10, 'eta size of the strips next to the central tower strip in HF (noise discriminating variable)'),
406  Plot1D('rawFactor', 'rawFactor', 20, -0.5, 0.5, '1 - Factor to get back to raw pT'),
407  )
408  ),
409  LHEPart = cms.PSet(
410  sels = cms.PSet(),
411  plots = cms.VPSet(
412  Count1D('_size', 20, 0, 20, 'LHE particles'),
413  Plot1D('eta', 'eta', 20, -30000, 30000, 'eta'),
414  Plot1D('pdgId', 'pdgId', 20, -6000, 6000, 'PDG id'),
415  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
416  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
417  )
418  ),
419  LHEPdfWeight = cms.PSet(
420  sels = cms.PSet(),
421  plots = cms.VPSet(
422  Count1D('_size', 1000, 0, 2000, 'LHE PDF weights'),
423  Plot1D('', '', 100, 0, 2, 'all weights'),
424  )
425  ),
426  LHEScaleWeight = cms.PSet(
427  sels = cms.PSet(),
428  plots = cms.VPSet(
429  Count1D('_size', 20, 0, 20, 'LHE scale weights'),
430  Plot1D('', '', 100, 0, 2, 'all weights'),
431  )
432  ),
433 
434  MET = cms.PSet(
435  sels = cms.PSet(),
436  plots = cms.VPSet(
437  Plot1D('MetUnclustEnUpDeltaX', 'MetUnclustEnUpDeltaX', 20, -20, 20, 'Delta (METx_mod-METx) Unclustered Energy Up'),
438  Plot1D('MetUnclustEnUpDeltaY', 'MetUnclustEnUpDeltaY', 20, -10, 10, 'Delta (METy_mod-METy) Unclustered Energy Up'),
439  Plot1D('covXX', 'covXX', 20, 0, 40000, 'xx element of met covariance matrix'),
440  Plot1D('covXY', 'covXY', 20, -8000, 8000, 'xy element of met covariance matrix'),
441  Plot1D('covYY', 'covYY', 20, 0, 50000, 'yy element of met covariance matrix'),
442  Plot1D('fiducialGenPhi', 'fiducialGenPhi', 20, -3.14159, 3.14159, 'phi'),
443  Plot1D('fiducialGenPt', 'fiducialGenPt', 20, 0, 400, 'pt'),
444  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
445  Plot1D('pt', 'pt', 20, 0, 400, 'pt'),
446  Plot1D('significance', 'significance', 20, 0, 200, 'MET significance'),
447  Plot1D('sumEt', 'sumEt', 20, 600, 5000, 'scalar sum of Et'),
448  Plot1D('sumPtUnclustered', 'sumPtUnclustered', 20, 0, 3000, 'sumPt used for MET significance'),
449  )
450  ),
451  Muon = cms.PSet(
452  sels = cms.PSet(
453  Good = cms.string('pt > 15 && abs(dxy) < 0.2 && abs(dz) < 0.5 && mediumId && miniPFRelIso_all < 0.4')
454  ),
455  plots = cms.VPSet(
456  Count1D('_size', 5, -0.5, 4.5, 'slimmedMuons after basic selection (pt > 3 && track.isNonnull && isLooseMuon)'),
457  Plot1D('charge', 'charge', 3, -1.5, 1.5, 'electric charge'),
458  Plot1D('cleanmask', 'cleanmask', 2, -0.5, 1.5, 'simple cleaning mask with priority to leptons'),
459  Plot1D('dxy', 'dxy', 20, -0.1, 0.1, 'dxy (with sign) wrt first PV, in cm'),
460  Plot1D('dxyErr', 'dxyErr', 20, 0, 0.1, 'dxy uncertainty, in cm'),
461  Plot1D('dxybs', 'dxybs', 20, -0.1, 0.1, 'dxy (with sign) wrt the beam spot, in cm'),
462  Plot1D('dz', 'dz', 20, -0.3, 0.3, 'dz (with sign) wrt first PV, in cm'),
463  Plot1D('dzErr', 'dzErr', 20, 0, 0.2, 'dz uncertainty, in cm'),
464  Plot1D('eta', 'eta', 20, -2.5, 2.5, 'eta'),
465  NoPlot('fsrPhotonIdx'),
466  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'),
467  NoPlot('genPartIdx'),
468  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)'),
469  Plot1D('highPurity', 'highPurity', 2, -0.5, 1.5, 'inner track is high purity'),
470  Plot1D('inTimeMuon', 'inTimeMuon', 2, -0.5, 1.5, 'inTimeMuon ID'),
471  Plot1D('ip3d', 'ip3d', 20, 0, 0.2, '3D impact parameter wrt first PV, in cm'),
472  Plot1D('isGlobal', 'isGlobal', 2, -0.5, 1.5, 'muon is global muon'),
473  Plot1D('isPFcand', 'isPFcand', 2, -0.5, 1.5, 'muon is PF candidate'),
474  Plot1D('isTracker', 'isTracker', 2, -0.5, 1.5, 'muon is tracker muon'),
475  Plot1D('isStandalone', 'isStandalone', 2, -0.5, 1.5, 'muon is a standalone muon'),
476  NoPlot('jetIdx'),
477  Plot1D('jetPtRelv2', 'jetPtRelv2', 20, 0, 30, 'Relative momentum of the lepton with respect to the closest jet after subtracting the lepton'),
478  Plot1D('jetRelIso', 'jetRelIso', 20, -0.2, 1.8, 'Relative isolation in matched jet (1/ptRatio-1, pfRelIso04_all if no matched jet)'),
479  Plot1D('looseId', 'looseId', 2, -0.5, 1.5, 'muon is loose muon'),
480  NoPlot('mass'),
481  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)'),
482  Plot1D('mediumPromptId', 'mediumPromptId', 2, -0.5, 1.5, 'cut-based ID, medium prompt WP'),
483  Plot1D('miniIsoId', 'miniIsoId', 5, -0.5, 4.5, 'MiniIso ID from miniAOD selector (1=MiniIsoLoose, 2=MiniIsoMedium, 3=MiniIsoTight, 4=MiniIsoVeryTight)'),
484  Plot1D('miniPFRelIso_all', 'miniPFRelIso_all', 20, 0, 1, 'mini PF relative isolation, total (with scaled rho*EA PU corrections)'),
485  Plot1D('miniPFRelIso_chg', 'miniPFRelIso_chg', 20, 0, 1, 'mini PF relative isolation, charged component'),
486  Plot1D('multiIsoId', 'multiIsoId', 3, -0.5, 2.5, 'MultiIsoId from miniAOD selector (1=MultiIsoLoose, 2=MultiIsoMedium)'),
487  Plot1D('mvaId', 'mvaId', 6, -0.5, 5.5, 'Mva ID from miniAOD selector (1=MvaLoose, 2=MvaMedium, 3=MvaTight, 4=MvaVTight, 5=MvaVVTight)'),
488  Plot1D('mvaLowPt', 'mvaLowPt', 20, -1, 1, 'Low pt muon ID score'),
489  Plot1D('mvaLowPtId', 'mvaLowPtId', 3, -0.5, 2.5, 'Low Pt Mva ID from miniAOD selector (1=LowPtMvaLoose, 2=LowPtMvaMedium)'),
490  Plot1D('mvaTTH', 'mvaTTH', 20, -1, 1, 'TTH MVA lepton ID score'),
491  Plot1D('nStations', 'nStations', 5, -0.5, 4.5, 'number of matched stations with default arbitration (segment & track)'),
492  Plot1D('nTrackerLayers', 'nTrackerLayers', 15, 2.5, 17.5, 'number of layers in the tracker'),
493  Plot1D('jetNDauCharged', 'jetNDauCharged', 20, -0.5, 19.5, 'number of charged daughters of the closest jet'),
494  Plot1D('pdgId', 'pdgId', 27, -13.5, 13.5, 'PDG code assigned by the event reconstruction (not by MC truth)'),
495  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)'),
496  Plot1D('pfRelIso03_all', 'pfRelIso03_all', 20, 0, 2, 'PF relative isolation dR=0.3, total (deltaBeta corrections)'),
497  Plot1D('pfRelIso03_chg', 'pfRelIso03_chg', 20, 0, 2, 'PF relative isolation dR=0.3, charged component'),
498  Plot1D('pfRelIso04_all', 'pfRelIso04_all', 20, 0, 2, 'PF relative isolation dR=0.4, total (deltaBeta corrections)'),
499  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
500  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
501  Plot1D('ptErr', 'ptErr', 20, 0, 20, 'ptError of the muon track'),
502  Plot1D('segmentComp', 'segmentComp', 20, 0, 1, 'muon segment compatibility'),
503  Plot1D('sip3d', 'sip3d', 20, 0, 20, '3D impact parameter significance wrt first PV'),
504  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)'),
505  Plot1D('softMva', 'softMva', 20, -1, 1, 'soft MVA ID score'),
506  Plot1D('softMvaId', 'softMvaId', 2, -0.5, 1.5, 'soft MVA ID'),
507  Plot1D('tightCharge', 'tightCharge', 1, 1.5, 2.5, 'Tight charge criterion using pterr/pt of muonBestTrack (0:fail, 2:pass)'),
508  Profile1D('tightId', 'tightId', 'pt', 16, 0, 80, 'POG Tight muon ID'),
509  Plot1D('tkIsoId', 'tkIsoId', 3, -0.5, 2.5, 'TkIso ID (1=TkIsoLoose, 2=TkIsoTight)'),
510  Plot1D('tkRelIso', 'tkRelIso', 100, 0, 1, 'Tracker-based relative isolation dR=0.3 for highPt, trkIso/tunePpt'),
511  Plot1D('triggerIdLoose', 'triggerIdLoose', 2, -0.5, 1.5, 'TriggerIdLoose ID'),
512  Plot1D('tunepRelPt', 'tunepRelPt', 200, 0, 200, 'TuneP relative pt, tunePpt/pt'),
513  )
514  ),
515  OtherPV = cms.PSet(
516  sels = cms.PSet(),
517  plots = cms.VPSet(
518  NoPlot('_size'),
519  Plot1D('z', 'z', 20, -20, 20, 'Z position of other primary vertices, excluding the main PV'),
520  )
521  ),
522  PPSLocalTrack = cms.PSet(
523  sels = cms.PSet(),
524  plots = cms.VPSet(
525  Count1D('_size', 26, -0.5, 25.5, 'ppsLocalTrack variables'),
526  Plot1D('decRPId', 'decRPId', 20, 0, 200, 'local track detector dec id'),
527  NoPlot('multiRPProtonIdx'),
528  Plot1D('rpType', 'rpType', 2, 3.5, 5.5, 'strip=3, pixel=4, diamond=5, timing=6'),
529  Plot1D('time', 'time', 20, -2, 2, 'local track time'),
530  Plot1D('timeUnc', 'timeUnc', 20, 0, 0.3, 'local track time uncertainty'),
531  Plot1D('x', 'x', 20, 2, 30, 'local track x'),
532  Plot1D('y', 'y', 20, -20, 20, 'local track y'),
533  )
534  ),
535  PSWeight = cms.PSet(
536  sels = cms.PSet(),
537  plots = cms.VPSet(
538  Plot1D('', '', 20, 0, 2, 'All PS weights (w_var / w_nominal)'),
539  Count1D('_size', 46, -0.5, 45.5, 'Number of PS weights'),
540  )
541  ),
542  PV = cms.PSet(
543  sels = cms.PSet(),
544  plots = cms.VPSet(
545  Plot1D('chi2', 'chi2', 20, 0.5, 3, 'main primary vertex reduced chi2'),
546  Plot1D('ndof', 'ndof', 20, 0, 500, 'main primary vertex number of degree of freedom'),
547  Plot1D('npvs', 'npvs', 20, 0, 60, 'total number of reconstructed primary vertices'),
548  Plot1D('npvsGood', 'npvsGood', 20, 0, 60, 'total number of Good primary vertices'),
549  Plot1D('score', 'score', 20, 0, 300000, 'main primary vertex score, i.e. sum pt2 of clustered objects'),
550  Plot1D('x', 'x', 20, -0.3, 0.3, 'main primary vertex position x coordinate'),
551  Plot1D('y', 'y', 20, -0.3, 0.3, 'main primary vertex position y coordinate'),
552  Plot1D('z', 'z', 20, -20, 20, 'main primary vertex position z coordinate'),
553  )
554  ),
555  Photon = cms.PSet(
556  sels = cms.PSet(),
557  plots = cms.VPSet(
558  Count1D('_size', 9, -0.5, 8.5, 'slimmedPhotons after basic selection (pt > 5 )'),
559  Plot1D('charge', 'charge', 1, -0.5, 0.5, 'electric charge'),
560  Plot1D('cleanmask', 'cleanmask', 1, 0.5, 1.5, 'simple cleaning mask with priority to leptons'),
561  Plot1D('cutBased', 'cutBased', 4, -0.5, 3.5, 'cut-based ID bitmap, Fall17V2, (0:fail, 1:loose, 2:medium, 3:tight)'),
562  Plot1D('cutBased_Fall17V1Bitmap', 'cutBased_Fall17V1Bitmap', 8, -0.5, 7.5, 'cut-based ID bitmap, Fall17V1, 2^(0:loose, 1:medium, 2:tight).'),
563  Plot1D('eCorr', 'eCorr', 20, 0.8, 1.2, 'ratio of the calibrated energy/miniaod energy'),
564  NoPlot('electronIdx'),
565  Plot1D('electronVeto', 'electronVeto', 2, -0.5, 1.5, 'pass electron veto'),
566  Plot1D('energyErr', 'energyErr', 20, 0, 300, 'energy error of the cluster from regression'),
567  Plot1D('eta', 'eta', 20, -3, 3, 'eta'),
568  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'),
569  NoPlot('genPartIdx'),
570  Plot1D('hoe', 'hoe', 20, 0, 0.6, 'H over E'),
571  Plot1D('isScEtaEB', 'isScEtaEB', 2, -0.5, 1.5, 'is supercluster eta within barrel acceptance'),
572  Plot1D('isScEtaEE', 'isScEtaEE', 2, -0.5, 1.5, 'is supercluster eta within endcap acceptance'),
573  NoPlot('jetIdx'),
574  NoPlot('mass'),
575  Plot1D('mvaID', 'mvaID', 20, -1, 1, 'MVA ID score'),
576  Plot1D('mvaID_Fall17V1p1', 'mvaID_Fall17V1p1', 20, -1, 1, 'MVA ID score, Fall17V1p1'),
577  Plot1D('mvaID_WP80', 'mvaID_WP80', 2, -0.5, 1.5, 'MVA ID WP80'),
578  Plot1D('mvaID_WP90', 'mvaID_WP90', 2, -0.5, 1.5, 'MVA ID WP90'),
579  Plot1D('pdgId', 'pdgId', 1, 21.5, 22.5, 'PDG code assigned by the event reconstruction (not by MC truth)'),
580  Plot1D('pfRelIso03_all', 'pfRelIso03_all', 20, 0, 2, 'PF relative isolation dR=0.3, total (with rho*EA PU corrections)'),
581  Plot1D('pfRelIso03_chg', 'pfRelIso03_chg', 20, 0, 2, 'PF relative isolation dR=0.3, charged component (with rho*EA PU corrections)'),
582  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
583  Plot1D('pixelSeed', 'pixelSeed', 2, -0.5, 1.5, 'has pixel seed'),
584  Plot1D('pt', 'pt', 20, 0, 200, 'pt (corrected)'),
585  Plot1D('r9', 'r9', 20, 0, 1.1, 'R9 of the supercluster, calculated with full 5x5 region'),
586  Plot1D('seedGain', 'seedGain', 12, 0.5, 12.5, 'Gain of the seed crystal'),
587  Plot1D('sieie', 'sieie', 20, 0, 0.05, 'sigma_IetaIeta of the supercluster, calculated with full 5x5 region'),
588  Plot1D('dEscaleUp', 'dEscaleUp', 100, -0.01, 0.01, '#Delta E scaleUp'),
589  Plot1D('dEscaleDown', 'dEscaleDown', 100, -0.01, 0.01, '#Delta E scaleDown'),
590  Plot1D('dEsigmaUp', 'dEsigmaUp', 100, -0.1, 0.1, '#Delta E sigmaUp'),
591  Plot1D('dEsigmaDown', 'dEsigmaDown', 100, -0.1, 0.1, '#Delta E sigmaDown'),
592  NoPlot('vidNestedWPBitmap'),
593  )
594  ),
595  Pileup = cms.PSet(
596  sels = cms.PSet(),
597  plots = cms.VPSet(
598  Plot1D('gpudensity', 'gpudensity', 20, 0, 0.9, 'Generator-level PU vertices / mm'),
599  Plot1D('nPU', 'nPU', 20, 0, 60, 'the number of pileup interactions that have been added to the event in the current bunch crossing'),
600  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'),
601  Plot1D('pudensity', 'pudensity', 5, -0.5, 4.5, 'PU vertices / mm'),
602  Plot1D('sumEOOT', 'sumEOOT', 20, 0, 800, 'number of early out of time pileup'),
603  Plot1D('sumLOOT', 'sumLOOT', 20, 0, 300, 'number of late out of time pileup'),
604  )
605  ),
606  Proton_multiRP = cms.PSet(
607  sels = cms.PSet(),
608  plots = cms.VPSet(
609  Count1D('_size', 3, -0.5, 2.5, 'bon'),
610  Plot1D('arm', 'arm', 2, -0.5, 1.5, '0 = sector45, 1 = sector56'),
611  Plot1D('t', 't', 20, -500, -0.003, 'Mandelstam variable t'),
612  Plot1D('thetaX', 'thetaX', 20, -0.0004, 0.0004, 'scattering angle in the y direction'),
613  Plot1D('thetaY', 'thetaY', 20, -0.001, 0.001, 'scattering angle in the x direction'),
614  Plot1D('time', 'time', 20, -1000, -1000, 'time'),
615  Plot1D('timeUnc', 'timeUnc', 20, 0, 0, 'time uncertainty'),
616  Plot1D('xi', 'xi', 20, 0, 0.3, 'fractional momentum loss'),
617  )
618  ),
619  Proton_singleRP = cms.PSet(
620  sels = cms.PSet(),
621  plots = cms.VPSet(
622  Count1D('_size', 3, -0.5, 2.5, 'bon'),
623  Plot1D('xi', 'xi', 20, 0, 0.3, 'fractional momentum loss'),
624  Plot1D('thetaY', 'thetaY', 20, -0.001, 0.001, 'scattering angle in the x direction'),
625  Plot1D('decRPId', 'decRPId', 20, 0, 200, 'Detector ID'),
626  )
627  ),
628  PuppiMET = cms.PSet(
629  sels = cms.PSet(),
630  plots = cms.VPSet(
631  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
632  Plot1D('phiJERUp', 'phiJERUp', 20, -3.14159, 3.14159, 'JER up phi'),
633  Plot1D('phiJERDown', 'phiJERDown', 20, -3.14159, 3.14159, 'JER down phi'),
634  Plot1D('phiJESUp', 'phiJESUp', 20, -3.14159, 3.14159, 'JES up phi'),
635  Plot1D('phiJESDown', 'phiJESDown', 20, -3.14159, 3.14159, 'JES down phi'),
636  Plot1D('phiUnclusteredUp', 'phiUnclusteredUp', 20, -3.14159, 3.14159, 'Unclustered up phi'),
637  Plot1D('phiUnclusteredDown', 'phiUnclusteredDown', 20, -3.14159, 3.14159, 'Unclustered down phi'),
638  Plot1D('pt', 'pt', 20, 0, 400, 'pt'),
639  Plot1D('ptJERUp', 'ptJERUp', 20, 0, 400, 'JER up pt'),
640  Plot1D('ptJERDown', 'ptJERDown', 20, 0, 400, 'JER down pt'),
641  Plot1D('ptJESUp', 'ptJESUp', 20, 0, 400, 'JES up pt'),
642  Plot1D('ptJESDown', 'ptJESDown', 20, 0, 400, 'JES down pt'),
643  Plot1D('ptUnclusteredUp', 'ptUnclusteredUp', 20, 0, 400, 'Unclustered up pt'),
644  Plot1D('ptUnclusteredDown', 'ptUnclusteredDown', 20, 0, 400, 'Unclustered down pt'),
645  Plot1D('sumEt', 'sumEt', 20, 200, 3000, 'scalar sum of Et'),
646  )
647  ),
648  RawMET = cms.PSet(
649  sels = cms.PSet(),
650  plots = cms.VPSet(
651  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
652  Plot1D('pt', 'pt', 20, 0, 400, 'pt'),
653  Plot1D('sumEt', 'sumEt', 20, 400, 4000, 'scalar sum of Et'),
654  )
655  ),
656  RawPuppiMET = cms.PSet(
657  sels = cms.PSet(),
658  plots = cms.VPSet(
659  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
660  Plot1D('pt', 'pt', 20, 0, 400, 'pt'),
661  Plot1D('sumEt', 'sumEt', 20, 400, 4000, 'scalar sum of Et'),
662  )
663  ),
664  SV = cms.PSet(
665  sels = cms.PSet(),
666  plots = cms.VPSet(
667  Count1D('_size', 14, -0.5, 13.5),
668  Plot1D('chi2', 'chi2', 20, -2000, 2000, 'reduced chi2, i.e. chi/ndof'),
669  Plot1D('dlen', 'dlen', 20, 0, 4, 'decay length in cm'),
670  Plot1D('dlenSig', 'dlenSig', 20, 0, 50, 'decay length significance'),
671  Plot1D('dxy', 'dxy', 20, 0, 4, '2D decay length in cm'),
672  Plot1D('dxySig', 'dxySig', 20, 0, 50, '2D decay length significance'),
673  Plot1D('eta', 'eta', 20, -3, 3, 'eta'),
674  Plot1D('mass', 'mass', 20, 0, 8, 'mass'),
675  Plot1D('ndof', 'ndof', 20, -1, 19, 'number of degrees of freedom'),
676  Plot1D('pAngle', 'pAngle', 20, -3.1416, 3.1416, 'pointing angle, i.e. acos(p_SV * (SV - PV)) '),
677  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
678  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
679  Plot1D('x', 'x', 20, -0.5, 0.5, 'secondary vertex X position, in cm'),
680  Plot1D('y', 'y', 20, -0.5, 0.5, 'secondary vertex Y position, in cm'),
681  Plot1D('z', 'z', 20, -10, 10, 'secondary vertex Z position, in cm'),
682  Plot1D('ntracks', 'ntracks', 11, -0.5, 10.5, 'number of tracks'),
683  Plot1D('charge', 'charge', 11 , -0.5, 10.5, 'sum of the charge of the SV tracks'),
684  )
685  ),
686  SoftActivityJet = cms.PSet(
687  sels = cms.PSet(),
688  plots = cms.VPSet(
689  Count1D('_size', 7, -0.5, 6.5, 'jets clustered from charged candidates compatible with primary vertex (charge()!=0 && pvAssociationQuality()>=5 && vertexRef().key()==0)'),
690  Plot1D('eta', 'eta', 20, -3, 3, 'eta'),
691  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
692  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
693  )
694  ),
695  SubJet = cms.PSet(
696  sels = cms.PSet(),
697  plots = cms.VPSet(
698  Count1D('_size', 9, -0.5, 8.5, 'slimmedJetsAK8, i.e. ak8 fat jets for boosted analysis'),
699  Plot1D('btagCMVA', 'btagCMVA', 20, -1, 1, 'CMVA V2 btag discriminator'),
700  Plot1D('btagCSVV2', 'btagCSVV2', 20, -1, 1, ' pfCombinedInclusiveSecondaryVertexV2 b-tag discriminator (aka CSVV2)'),
701  Plot1D('btagDeepB', 'btagDeepB', 20, -1, 1, 'Deep B+BB btag discriminator'),
702  Plot1D('eta', 'eta', 20, -4, 4, 'eta'),
703  Plot1D('hadronFlavour', 'hadronFlavour', 6, -0.5, 5.5, 'flavour from hadron ghost clustering'),
704  Plot1D('mass', 'mass', 20, -200, 200, 'mass'),
705  Plot1D('n2b1', 'n2b1', 20, 0, 1, 'N2 (beta=1)'),
706  Plot1D('n3b1', 'n3b1', 20, 0, 5, 'N3 (beta=1)'),
707  Plot1D('nBHadrons', 'nBHadrons', 4, -0.5, 3.5, 'number of b-hadrons'),
708  Plot1D('nCHadrons', 'nCHadrons', 4, -0.5, 3.5, 'number of c-hadrons'),
709  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
710  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
711  Plot1D('rawFactor', 'rawFactor', 20, -0.5, 0.5, '1 - Factor to get back to raw pT'),
712  Plot1D('tau1', 'tau1', 20, 0, 1, 'Nsubjettiness (1 axis)'),
713  Plot1D('tau2', 'tau2', 20, 0, 1, 'Nsubjettiness (2 axis)'),
714  Plot1D('tau3', 'tau3', 20, 0, 1, 'Nsubjettiness (3 axis)'),
715  Plot1D('tau4', 'tau4', 20, 0, 1, 'Nsubjettiness (4 axis)'),
716  )
717  ),
718  Tau = cms.PSet(
719  sels = cms.PSet(),
720  plots = cms.VPSet(
721  Count1D('_size', 7, -0.5, 6.5, "slimmedTaus after basic selection (pt > 18 && tauID('decayModeFindingNewDMs') && (tauID('byLooseCombinedIsolationDeltaBetaCorr3Hits') || tauID('byVLooseIsolationMVArun2v1DBoldDMwLT') || tauID('byVLooseIsolationMVArun2v1DBnewDMwLT') || tauID('byVLooseIsolationMVArun2v1DBdR03oldDMwLT')))"),
722  Plot1D('charge', 'charge', 3, -1.5, 1.5, 'electric charge'),
723  Plot1D('chargedIso', 'chargedIso', 20, 0, 200, 'charged isolation'),
724  Plot1D('cleanmask', 'cleanmask', 1, 0.5, 1.5, 'simple cleaning mask with priority to leptons'),
725  Plot1D('decayMode', 'decayMode', 12, -0.5, 11.5, 'decayMode()'),
726  Plot1D('dxy', 'dxy', 20, -1000, 1000, 'd_{xy} of lead track with respect to PV, in cm (with sign)'),
727  Plot1D('dz', 'dz', 20, -20, 20, 'd_{z} of lead track with respect to PV, in cm (with sign)'),
728  Plot1D('eta', 'eta', 20, -3, 3, 'eta'),
729  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'),
730  NoPlot('genPartIdx'),
731  Plot1D('idAntiEle', 'idAntiEle', 32, -0.5, 31.5, 'Anti-electron MVA discriminator V6: bitmask 1 = VLoose, 2 = Loose, 4 = Medium, 8 = Tight, 16 = VTight'),
732  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'),
733  Plot1D('idAntiEleDeadECal', 'idAntiEleDeadECal', 2, -0.5, 1.5, "tauID('againstElectronDeadECAL')"),
734  Plot1D('idAntiMu', 'idAntiMu', 4, -0.5, 3.5, 'Anti-muon discriminator V3: : bitmask 1 = Loose, 2 = Tight'),
735  Plot1D('idDecayMode', 'idDecayMode', 2, -0.5, 1.5, "tauID('decayModeFinding')"),
736  Plot1D('idDecayModeNewDMs', 'idDecayModeNewDMs', 2, -0.5, 1.5, "tauID('decayModeFindingNewDMs')"),
737  Plot1D('idDeepTau2017v2p1VSe', 'idDeepTau2017v2p1VSe', 256, -0.5, 255.5, 'byDeepTau2017v2p1VSe ID working points (deepTau2017v2p1): bitmask 1 = VVVLoose, 2 = VVLoose, 4 = VLoose, 8 = Loose, 16 = Medium, 32 = Tight, 64 = VTight, 128 = VVTight'),
738  Plot1D('idDeepTau2017v2p1VSjet', 'idDeepTau2017v2p1VSjet', 256, -0.5, 255.5, 'byDeepTau2017v2p1VSjet ID working points (deepTau2017v2p1): bitmask 1 = VVVLoose, 2 = VVLoose, 4 = VLoose, 8 = Loose, 16 = Medium, 32 = Tight, 64 = VTight, 128 = VVTight'),
739  Plot1D('idDeepTau2017v2p1VSmu', 'idDeepTau2017v2p1VSmu', 16, -0.5, 15.5, 'byDeepTau2017v2p1VSmu ID working points (deepTau2017v2p1): bitmask 1 = VLoose, 2 = Loose, 4 = Medium, 8 = Tight'),
740  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'),
741  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'),
742  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'),
743  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'),
744  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'),
745  NoPlot('jetIdx'),
746  Plot1D('leadTkDeltaEta', 'leadTkDeltaEta', 20, -0.1, 0.1, 'eta of the leading track, minus tau eta'),
747  Plot1D('leadTkDeltaPhi', 'leadTkDeltaPhi', 20, -0.1, 0.1, 'phi of the leading track, minus tau phi'),
748  Plot1D('leadTkPtOverTauPt', 'leadTkPtOverTauPt', 20, 0, 2, 'pt of the leading track divided by tau pt'),
749  Plot1D('mass', 'mass', 20, 0, 5, 'mass'),
750  Plot1D('neutralIso', 'neutralIso', 20, 0, 200, 'neutral (photon) isolation'),
751  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
752  Plot1D('photonsOutsideSignalCone', 'photonsOutsideSignalCone', 20, 0, 30, 'sum of photons outside signal cone'),
753  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
754  Plot1D('puCorr', 'puCorr', 20, 0, 90, 'pileup correction'),
755  Plot1D('rawAntiEle', 'rawAntiEle', 20, -100, 100, 'Anti-electron MVA discriminator V6 raw output discriminator'),
756  Plot1D('rawAntiEle2018', 'rawAntiEle2018', 20, -100, 100, 'Anti-electron MVA discriminator V6 raw output discriminator (2018)'),
757  Plot1D('rawAntiEleCat', 'rawAntiEleCat', 17, -1.5, 15.5, 'Anti-electron MVA discriminator V6 category'),
758  Plot1D('rawAntiEleCat2018', 'rawAntiEleCat2018', 17, -1.5, 15.5, 'Anti-electron MVA discriminator V6 category (2018)'),
759  Plot1D('rawDeepTau2017v2p1VSe', 'rawDeepTau2017v2p1VSe', 20, 0, 1, 'byDeepTau2017v2p1VSe raw output discriminator (deepTau2017v2p1)'),
760  Plot1D('rawDeepTau2017v2p1VSjet', 'rawDeepTau2017v2p1VSjet', 20, 0, 1, 'byDeepTau2017v2p1VSjet raw output discriminator (deepTau2017v2p1)'),
761  Plot1D('rawDeepTau2017v2p1VSmu', 'rawDeepTau2017v2p1VSmu', 20, 0, 1, 'byDeepTau2017v2p1VSmu raw output discriminator (deepTau2017v2p1)'),
762  Plot1D('rawIso', 'rawIso', 20, 0, 200, 'combined isolation (deltaBeta corrections)'),
763  Plot1D('rawIsodR03', 'rawIsodR03', 20, 0, 200, 'combined isolation (deltaBeta corrections, dR=0.3)'),
764  Plot1D('rawMVAnewDM2017v2', 'rawMVAnewDM2017v2', 20, -1, 1, 'byIsolationMVArun2v1DBnewDMwLT raw output discriminator (2017v2)'),
765  Plot1D('rawMVAoldDM', 'rawMVAoldDM', 20, -1, 1, 'byIsolationMVArun2v1DBoldDMwLT raw output discriminator'),
766  Plot1D('rawMVAoldDM2017v1', 'rawMVAoldDM2017v1', 20, -1, 1, 'byIsolationMVArun2v1DBoldDMwLT raw output discriminator (2017v1)'),
767  Plot1D('rawMVAoldDM2017v2', 'rawMVAoldDM2017v2', 20, -1, 1, 'byIsolationMVArun2v1DBoldDMwLT raw output discriminator (2017v2)'),
768  Plot1D('rawMVAoldDMdR032017v2', 'rawMVAoldDMdR032017v2', 20, -1, 1, 'byIsolationMVArun2v1DBdR03oldDMwLT raw output discriminator (2017v2)'),
769  )
770  ),
771  TkMET = cms.PSet(
772  sels = cms.PSet(),
773  plots = cms.VPSet(
774  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
775  Plot1D('pt', 'pt', 20, 0, 400, 'pt'),
776  Plot1D('sumEt', 'sumEt', 20, 0, 2000, 'scalar sum of Et'),
777  )
778  ),
779  TrigObj = cms.PSet(
780  sels = cms.PSet(
781  Electron = cms.string('id == 11'),
782  HT = cms.string('id == 3'),
783  Jet = cms.string('id == 1'),
784  MET = cms.string('id == 2'),
785  MHT = cms.string('id == 4'),
786  Muon = cms.string('id == 13'),
787  Photon = cms.string('id == 22'),
788  Tau = cms.string('id == 15')
789  ),
790  plots = cms.VPSet(
791  Count1D('_size', 28, -0.5, 27.5),
792  Plot1D('eta', 'eta', 20, -5, 5, 'eta'),
793  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'),
794  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'),
795  Plot1D('l1charge', 'l1charge', 3, -1.5, 1.5, 'charge of associated L1 seed'),
796  Plot1D('l1iso', 'l1iso', 4, -0.5, 3.5, 'iso of associated L1 seed'),
797  Plot1D('l1pt', 'l1pt', 20, 0, 200, 'pt of associated L1 seed'),
798  Plot1D('l1pt_2', 'l1pt_2', 20, 0, 200, 'pt of associated secondary L1 seed'),
799  Plot1D('l2pt', 'l2pt', 20, 0, 200, "pt of associated 'L2' seed (i.e. HLT before tracking/PF)"),
800  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
801  Plot1D('pt', 'pt', 40, 0, 400, 'pt'),
802  )
803  ),
804  boostedTau = cms.PSet(
805  sels = cms.PSet(),
806  plots = cms.VPSet(
807  Count1D('_size', 7, -0.5, 6.5, "slimmedBoostedTaus after basic selection (pt > 40 && tauID('decayModeFindingNewDMs') && (tauID('byVVLooseIsolationMVArun2017v2DBoldDMwLT2017') || tauID('byVVLooseIsolationMVArun2017v2DBoldDMdR0p3wLT2017') || tauID('byVVLooseIsolationMVArun2017v2DBnewDMwLT2017')))"),
808  Plot1D('charge', 'charge', 3, -1.5, 1.5, 'electric charge'),
809  Plot1D('chargedIso', 'chargedIso', 20, 0, 200, 'charged isolation'),
810  Plot1D('decayMode', 'decayMode', 12, -0.5, 11.5, 'decayMode()'),
811  Plot1D('eta', 'eta', 20, -3, 3, 'eta'),
812  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'),
813  NoPlot('genPartIdx'),
814  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'),
815  Plot1D('idAntiMu', 'idAntiMu', 4, -0.5, 3.5, 'Anti-muon discriminator V3: : bitmask 1 = Loose, 2 = Tight'),
816  Plot1D('idMVAnewDM2017v2', 'idMVAnewDM2017v2', 128, -0.5, 127.5, 'IsolationMVArun2017v2DBnewDMwLT ID working point (2017v2): bitmask 1 = VVLoose, 2 = VLoose, 4 = Loose, 8 = Medium, 16 = Tight, 32 = VTight, 64 = VVTight'),
817  Plot1D('idMVAoldDM2017v2', 'idMVAoldDM2017v2', 128, -0.5, 127.5, 'IsolationMVArun2017v2DBoldDMwLT ID working point (2017v2): bitmask 1 = VVLoose, 2 = VLoose, 4 = Loose, 8 = Medium, 16 = Tight, 32 = VTight, 64 = VVTight'),
818  Plot1D('idMVAoldDMdR032017v2', 'idMVAoldDMdR032017v2', 128, -0.5, 127.5, 'IsolationMVArun2017v2DBoldDMdR0p3wLT ID working point (2017v2): bitmask 1 = VVLoose, 2 = VLoose, 4 = Loose, 8 = Medium, 16 = Tight, 32 = VTight, 64 = VVTight'),
819  NoPlot('jetIdx'),
820  Plot1D('leadTkDeltaEta', 'leadTkDeltaEta', 20, -0.1, 0.1, 'eta of the leading track, minus tau eta'),
821  Plot1D('leadTkDeltaPhi', 'leadTkDeltaPhi', 20, -0.1, 0.1, 'phi of the leading track, minus tau phi'),
822  Plot1D('leadTkPtOverTauPt', 'leadTkPtOverTauPt', 20, 0, 2, 'pt of the leading track divided by tau pt'),
823  Plot1D('mass', 'mass', 20, 0, 5, 'mass'),
824  Plot1D('neutralIso', 'neutralIso', 20, 0, 200, 'neutral (photon) isolation'),
825  Plot1D('phi', 'phi', 20, -3.14159, 3.14159, 'phi'),
826  Plot1D('photonsOutsideSignalCone', 'photonsOutsideSignalCone', 20, 0, 30, 'sum of photons outside signal cone'),
827  Plot1D('pt', 'pt', 20, 0, 200, 'pt'),
828  Plot1D('puCorr', 'puCorr', 20, 0, 90, 'pileup correction'),
829  Plot1D('rawAntiEle2018', 'rawAntiEle2018', 20, -100, 100, 'Anti-electron MVA discriminator V6 raw output discriminator (2018)'),
830  Plot1D('rawAntiEleCat2018', 'rawAntiEleCat2018', 20, -100, 100, 'Anti-electron MVA discriminator V6 category (2018)'),
831  Plot1D('rawIso', 'rawIso', 20, 0, 200, 'combined isolation (deltaBeta corrections)'),
832  Plot1D('rawIsodR03', 'rawIsodR03', 20, 0, 200, 'combined isolation (deltaBeta corrections, dR=0.3)'),
833  Plot1D('rawMVAnewDM2017v2', 'rawMVAnewDM2017v2', 20, -1, 1, 'byIsolationMVArun2017v2DBnewDMwLT raw output discriminator (2017v2)'),
834  Plot1D('rawMVAoldDM2017v2', 'rawMVAoldDM2017v2', 20, -1, 1, 'byIsolationMVArun2017v2DBoldDMwLT raw output discriminator (2017v2)'),
835  Plot1D('rawMVAoldDMdR032017v2', 'rawMVAoldDMdR032017v2', 20, -1, 1, 'byIsolationMVArun2017v2DBoldDMdR0p3wLT raw output discriminator (2017v2)'),
836  )
837  ),
838  )
839 )
def Count1D(name, nbins, xmin, xmax, title="")
def Profile1D(name, ycolumn, xcolumn, nbins, xmin, xmax, title="")