CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
HPSPFTaus_cff.py
Go to the documentation of this file.
2 import copy
3 
4 '''
5 
6 Sequences for HPS taus
7 
8 '''
9 
10 # Define the discriminators for this tau
19 
21 
22 # Load helper functions to change the source of the discriminants
24 
25 # Select those taus that pass the HPS selections
26 # - pt > 15, mass cuts, tauCone cut
27 from RecoTauTag.RecoTau.PFRecoTauDiscriminationByHPSSelection_cfi import hpsSelectionDiscriminator, decayMode_1Prong0Pi0, decayMode_1Prong1Pi0, decayMode_1Prong2Pi0, decayMode_3Prong0Pi0
28 hpsPFTauDiscriminationByDecayModeFindingNewDMs = hpsSelectionDiscriminator.clone(
29  PFTauProducer = cms.InputTag('hpsPFTauProducer')
30 )
31 hpsPFTauDiscriminationByDecayModeFindingOldDMs = hpsSelectionDiscriminator.clone(
32  PFTauProducer = cms.InputTag('hpsPFTauProducer'),
33  decayModes = cms.VPSet(
34  decayMode_1Prong0Pi0,
35  decayMode_1Prong1Pi0,
36  decayMode_1Prong2Pi0,
37  decayMode_3Prong0Pi0
38  ),
39  requireTauChargedHadronsToBeChargedPFCands = cms.bool(True)
40 )
41 hpsPFTauDiscriminationByDecayModeFinding = hpsPFTauDiscriminationByDecayModeFindingOldDMs.clone() # CV: kept for backwards compatibility
42 
43 # Define decay mode prediscriminant
44 requireDecayMode = cms.PSet(
45  BooleanOperator = cms.string("and"),
46  decayMode = cms.PSet(
47  Producer = cms.InputTag('hpsPFTauDiscriminationByDecayModeFindingNewDMs'),
48  cut = cms.double(0.5)
49  )
50 )
51 
52 #Building the prototype for the Discriminator by Isolation
53 hpsPFTauDiscriminationByLooseIsolation = pfRecoTauDiscriminationByIsolation.clone(
54  PFTauProducer = cms.InputTag("hpsPFTauProducer"),
55  Prediscriminants = requireDecayMode.clone(),
56  ApplyDiscriminationByTrackerIsolation = False,
57  ApplyDiscriminationByECALIsolation = True,
58  applyOccupancyCut = True
59 )
60 hpsPFTauDiscriminationByLooseIsolation.Prediscriminants.preIso = cms.PSet(
61  Producer = cms.InputTag("hpsPFTauDiscriminationByLooseChargedIsolation"),
62  cut = cms.double(0.5))
63 
64 # Make an even looser discriminator
65 hpsPFTauDiscriminationByVLooseIsolation = hpsPFTauDiscriminationByLooseIsolation.clone(
66  customOuterCone = cms.double(0.3),
67  isoConeSizeForDeltaBeta = cms.double(0.3),
68 )
69 hpsPFTauDiscriminationByVLooseIsolation.qualityCuts.isolationQualityCuts.minTrackPt = 1.5
70 hpsPFTauDiscriminationByVLooseIsolation.qualityCuts.isolationQualityCuts.minGammaEt = 2.0
71 hpsPFTauDiscriminationByVLooseIsolation.Prediscriminants.preIso.Producer = cms.InputTag("hpsPFTauDiscriminationByVLooseChargedIsolation")
72 
73 hpsPFTauDiscriminationByMediumIsolation = hpsPFTauDiscriminationByLooseIsolation.clone()
74 hpsPFTauDiscriminationByMediumIsolation.qualityCuts.isolationQualityCuts.minTrackPt = 0.8
75 hpsPFTauDiscriminationByMediumIsolation.qualityCuts.isolationQualityCuts.minGammaEt = 0.8
76 hpsPFTauDiscriminationByMediumIsolation.Prediscriminants.preIso.Producer = cms.InputTag("hpsPFTauDiscriminationByMediumChargedIsolation")
77 
78 hpsPFTauDiscriminationByTightIsolation = hpsPFTauDiscriminationByLooseIsolation.clone()
79 hpsPFTauDiscriminationByTightIsolation.qualityCuts.isolationQualityCuts.minTrackPt = 0.5
80 hpsPFTauDiscriminationByTightIsolation.qualityCuts.isolationQualityCuts.minGammaEt = 0.5
81 hpsPFTauDiscriminationByTightIsolation.Prediscriminants.preIso.Producer = cms.InputTag("hpsPFTauDiscriminationByTightChargedIsolation")
82 
83 hpsPFTauDiscriminationByIsolationSeq = cms.Sequence(
84  hpsPFTauDiscriminationByVLooseIsolation*
85  hpsPFTauDiscriminationByLooseIsolation*
86  hpsPFTauDiscriminationByMediumIsolation*
87  hpsPFTauDiscriminationByTightIsolation
88 )
89 
90 _isolation_types = ['VLoose', 'Loose', 'Medium', 'Tight']
91 # Now build the sequences that apply PU corrections
92 
93 # Make Delta Beta corrections (on SumPt quantity)
94 hpsPFTauDiscriminationByVLooseIsolationDBSumPtCorr = hpsPFTauDiscriminationByVLooseIsolation.clone(
95  deltaBetaPUTrackPtCutOverride = cms.double(0.5),
96  applyDeltaBetaCorrection = True,
97  isoConeSizeForDeltaBeta = 0.8,
98  deltaBetaFactor = "%0.4f"%(0.0123/0.1687),
99  applyOccupancyCut = False,
100  applySumPtCut = True,
101 )
102 hpsPFTauDiscriminationByVLooseIsolationDBSumPtCorr.maximumSumPtCut=hpsPFTauDiscriminationByVLooseIsolationDBSumPtCorr.qualityCuts.isolationQualityCuts.minGammaEt
103 
104 hpsPFTauDiscriminationByLooseIsolationDBSumPtCorr = hpsPFTauDiscriminationByLooseIsolation.clone(
105  deltaBetaPUTrackPtCutOverride = cms.double(0.5),
106  applyDeltaBetaCorrection = True,
107  isoConeSizeForDeltaBeta = 0.8,
108  deltaBetaFactor = "%0.4f"%(0.0123/0.1687),
109  applyOccupancyCut = False,
110  applySumPtCut = True,
111 )
112 hpsPFTauDiscriminationByLooseIsolationDBSumPtCorr.maximumSumPtCut=hpsPFTauDiscriminationByLooseIsolationDBSumPtCorr.qualityCuts.isolationQualityCuts.minGammaEt
113 
114 hpsPFTauDiscriminationByMediumIsolationDBSumPtCorr = hpsPFTauDiscriminationByMediumIsolation.clone(
115  deltaBetaPUTrackPtCutOverride = cms.double(0.5),
116  applyDeltaBetaCorrection = True,
117  isoConeSizeForDeltaBeta = 0.8,
118  deltaBetaFactor = "%0.4f"%(0.0462/0.1687),
119  applyOccupancyCut = False,
120  applySumPtCut = True,
121 )
122 hpsPFTauDiscriminationByMediumIsolationDBSumPtCorr.maximumSumPtCut=hpsPFTauDiscriminationByMediumIsolationDBSumPtCorr.qualityCuts.isolationQualityCuts.minGammaEt
123 
124 hpsPFTauDiscriminationByTightIsolationDBSumPtCorr = hpsPFTauDiscriminationByTightIsolation.clone(
125  deltaBetaPUTrackPtCutOverride = cms.double(0.5),
126  applyDeltaBetaCorrection = True,
127  isoConeSizeForDeltaBeta = 0.8,
128  deltaBetaFactor = "%0.4f"%(0.0772/0.1687),
129  applyOccupancyCut = False,
130  applySumPtCut = True,
131 )
132 hpsPFTauDiscriminationByTightIsolationDBSumPtCorr.maximumSumPtCut=hpsPFTauDiscriminationByTightIsolationDBSumPtCorr.qualityCuts.isolationQualityCuts.minGammaEt
133 
134 hpsPFTauDiscriminationByIsolationSeqDBSumPtCorr = cms.Sequence(
135  hpsPFTauDiscriminationByVLooseIsolationDBSumPtCorr*
136  hpsPFTauDiscriminationByLooseIsolationDBSumPtCorr*
137  hpsPFTauDiscriminationByMediumIsolationDBSumPtCorr*
138  hpsPFTauDiscriminationByTightIsolationDBSumPtCorr
139 )
140 
141 hpsPFTauDiscriminationByVLooseCombinedIsolationDBSumPtCorr = hpsPFTauDiscriminationByVLooseIsolationDBSumPtCorr.clone(
142  ApplyDiscriminationByTrackerIsolation = True,
143  ApplyDiscriminationByECALIsolation = True,
144  deltaBetaFactor = "%0.4f"%((0.09/0.25)*(0.0772/0.1687)),
145  applyOccupancyCut = False,
146  applySumPtCut = True,
147  maximumSumPtCut = 3.0,
148  Prediscriminants = requireDecayMode.clone()
149 )
150 hpsPFTauDiscriminationByVLooseCombinedIsolationDBSumPtCorr.qualityCuts.isolationQualityCuts.minTrackPt = 0.5
151 hpsPFTauDiscriminationByVLooseCombinedIsolationDBSumPtCorr.qualityCuts.isolationQualityCuts.minGammaEt = 0.5
152 
153 hpsPFTauDiscriminationByLooseCombinedIsolationDBSumPtCorr = hpsPFTauDiscriminationByLooseIsolationDBSumPtCorr.clone(
154  ApplyDiscriminationByTrackerIsolation = True,
155  ApplyDiscriminationByECALIsolation = True,
156  deltaBetaFactor = "%0.4f"%(0.0772/0.1687),
157  applyOccupancyCut = False,
158  applySumPtCut = True,
159  maximumSumPtCut = 2.0,
160  Prediscriminants = requireDecayMode.clone()
161 )
162 hpsPFTauDiscriminationByLooseCombinedIsolationDBSumPtCorr.qualityCuts.isolationQualityCuts.minTrackPt = 0.5
163 hpsPFTauDiscriminationByLooseCombinedIsolationDBSumPtCorr.qualityCuts.isolationQualityCuts.minGammaEt = 0.5
164 
165 hpsPFTauDiscriminationByRawCombinedIsolationDBSumPtCorr = hpsPFTauDiscriminationByLooseCombinedIsolationDBSumPtCorr.clone(
166  applySumPtCut = False,
167  storeRawSumPt = cms.bool(True)
168 )
169 
170 hpsPFTauDiscriminationByRawChargedIsolationDBSumPtCorr = hpsPFTauDiscriminationByLooseCombinedIsolationDBSumPtCorr.clone(
171  applySumPtCut = False,
172  ApplyDiscriminationByECALIsolation = False,
173  storeRawSumPt = cms.bool(True)
174 )
175 
176 hpsPFTauDiscriminationByRawGammaIsolationDBSumPtCorr = hpsPFTauDiscriminationByLooseCombinedIsolationDBSumPtCorr.clone(
177  applySumPtCut = False,
178  ApplyDiscriminationByTrackerIsolation = False,
179  storeRawSumPt = cms.bool(True)
180 )
181 
182 hpsPFTauDiscriminationByMediumCombinedIsolationDBSumPtCorr = hpsPFTauDiscriminationByMediumIsolationDBSumPtCorr.clone(
183  ApplyDiscriminationByTrackerIsolation = True,
184  ApplyDiscriminationByECALIsolation = True,
185  deltaBetaFactor = "%0.4f"%(0.0772/0.1687),
186  applyOccupancyCut = False,
187  applySumPtCut = True,
188  maximumSumPtCut = 1.0,
189  Prediscriminants = requireDecayMode.clone()
190 )
191 hpsPFTauDiscriminationByMediumCombinedIsolationDBSumPtCorr.qualityCuts.isolationQualityCuts.minTrackPt = 0.5
192 hpsPFTauDiscriminationByMediumCombinedIsolationDBSumPtCorr.qualityCuts.isolationQualityCuts.minGammaEt = 0.5
193 
194 hpsPFTauDiscriminationByTightCombinedIsolationDBSumPtCorr = hpsPFTauDiscriminationByTightIsolationDBSumPtCorr.clone(
195  ApplyDiscriminationByTrackerIsolation = True,
196  ApplyDiscriminationByECALIsolation = True,
197  deltaBetaFactor = "%0.4f"%(0.0772/0.1687),
198  applyOccupancyCut = False,
199  applySumPtCut = True,
200  maximumSumPtCut = 0.8,
201  Prediscriminants = requireDecayMode.clone()
202 )
203 hpsPFTauDiscriminationByTightCombinedIsolationDBSumPtCorr.qualityCuts.isolationQualityCuts.minTrackPt = 0.5
204 hpsPFTauDiscriminationByTightCombinedIsolationDBSumPtCorr.qualityCuts.isolationQualityCuts.minGammaEt = 0.5
205 
206 hpsPFTauDiscriminationByCombinedIsolationSeqDBSumPtCorr = cms.Sequence(
207  hpsPFTauDiscriminationByVLooseCombinedIsolationDBSumPtCorr*
208  hpsPFTauDiscriminationByLooseCombinedIsolationDBSumPtCorr*
209  hpsPFTauDiscriminationByMediumCombinedIsolationDBSumPtCorr*
210  hpsPFTauDiscriminationByTightCombinedIsolationDBSumPtCorr
211 )
212 
213 #Charge isolation based on combined isolation
214 hpsPFTauDiscriminationByVLooseChargedIsolation = hpsPFTauDiscriminationByVLooseCombinedIsolationDBSumPtCorr.clone(
215  ApplyDiscriminationByECALIsolation = False
216 )
217 
218 hpsPFTauDiscriminationByLooseChargedIsolation = hpsPFTauDiscriminationByLooseCombinedIsolationDBSumPtCorr.clone(
219  ApplyDiscriminationByECALIsolation = False
220 )
221 
222 hpsPFTauDiscriminationByMediumChargedIsolation = hpsPFTauDiscriminationByMediumCombinedIsolationDBSumPtCorr.clone(
223  ApplyDiscriminationByECALIsolation = False
224 )
225 hpsPFTauDiscriminationByTightChargedIsolation = hpsPFTauDiscriminationByTightCombinedIsolationDBSumPtCorr.clone(
226  ApplyDiscriminationByECALIsolation = False
227 )
228 
229 hpsPFTauDiscriminationByChargedIsolationSeq = cms.Sequence(
230  hpsPFTauDiscriminationByVLooseChargedIsolation*
231  hpsPFTauDiscriminationByLooseChargedIsolation*
232  hpsPFTauDiscriminationByMediumChargedIsolation*
233  hpsPFTauDiscriminationByTightChargedIsolation
234 )
235 
236 #copying discriminator against electrons and muons
237 hpsPFTauDiscriminationByLooseElectronRejection = pfRecoTauDiscriminationAgainstElectron.clone(
238  PFTauProducer = cms.InputTag('hpsPFTauProducer'),
239  Prediscriminants = noPrediscriminants,
240  PFElectronMVA_maxValue = cms.double(0.6)
241 )
242 hpsPFTauDiscriminationByMediumElectronRejection = pfRecoTauDiscriminationAgainstElectron.clone(
243  PFTauProducer = cms.InputTag('hpsPFTauProducer'),
244  Prediscriminants = noPrediscriminants,
245  ApplyCut_EcalCrackCut = cms.bool(True)
246 )
247 hpsPFTauDiscriminationByTightElectronRejection = pfRecoTauDiscriminationAgainstElectron.clone(
248  PFTauProducer = cms.InputTag('hpsPFTauProducer'),
249  Prediscriminants = noPrediscriminants,
250  ApplyCut_EcalCrackCut = cms.bool(True),
251  ApplyCut_BremCombined = cms.bool(True)
252 )
253 
254 hpsPFTauDiscriminationByLooseMuonRejection = pfRecoTauDiscriminationAgainstMuon.clone(
255  PFTauProducer = cms.InputTag('hpsPFTauProducer'),
256  Prediscriminants = noPrediscriminants
257 )
258 hpsPFTauDiscriminationByMediumMuonRejection = pfRecoTauDiscriminationAgainstMuon.clone(
259  PFTauProducer = cms.InputTag('hpsPFTauProducer'),
260  Prediscriminants = noPrediscriminants,
261  discriminatorOption = cms.string('noAllArbitrated')
262 )
263 hpsPFTauDiscriminationByTightMuonRejection = pfRecoTauDiscriminationAgainstMuon.clone(
264  PFTauProducer = cms.InputTag('hpsPFTauProducer'),
265  Prediscriminants = noPrediscriminants,
266  discriminatorOption = cms.string('noAllArbitratedWithHOP')
267 )
268 
269 hpsPFTauDiscriminationByLooseMuonRejection2 = pfRecoTauDiscriminationAgainstMuon2.clone(
270  PFTauProducer = cms.InputTag('hpsPFTauProducer'),
271  Prediscriminants = noPrediscriminants
272 )
273 hpsPFTauDiscriminationByMediumMuonRejection2 = pfRecoTauDiscriminationAgainstMuon2.clone(
274  PFTauProducer = cms.InputTag('hpsPFTauProducer'),
275  Prediscriminants = noPrediscriminants,
276  discriminatorOption = cms.string('medium')
277 )
278 hpsPFTauDiscriminationByTightMuonRejection2 = pfRecoTauDiscriminationAgainstMuon2.clone(
279  PFTauProducer = cms.InputTag('hpsPFTauProducer'),
280  Prediscriminants = noPrediscriminants,
281  discriminatorOption = cms.string('tight')
282 )
283 
284 hpsPFTauDiscriminationByLooseMuonRejection3 = pfRecoTauDiscriminationAgainstMuon2.clone(
285  PFTauProducer = cms.InputTag('hpsPFTauProducer'),
286  Prediscriminants = noPrediscriminants,
287  discriminatorOption = cms.string('custom'),
288  maxNumberOfMatches = cms.int32(1),
289  doCaloMuonVeto = cms.bool(True),
290  maxNumberOfHitsLast2Stations = cms.int32(-1)
291 )
292 hpsPFTauDiscriminationByTightMuonRejection3 = hpsPFTauDiscriminationByLooseMuonRejection3.clone(
293  maxNumberOfHitsLast2Stations = cms.int32(0)
294 )
295 
296 hpsPFTauDiscriminationByMVArawMuonRejection = pfRecoTauDiscriminationAgainstMuonMVA.clone(
297  PFTauProducer = cms.InputTag('hpsPFTauProducer'),
298  Prediscriminants = requireDecayMode.clone(),
299  returnMVA = cms.bool(True)
300 )
301 ##hpsPFTauDiscriminationByMVALooseMuonRejection = hpsPFTauDiscriminationByMVArawMuonRejection.clone(
302 ## returnMVA = cms.bool(False),
303 ## mvaMin = cms.double(0.75)
304 ##)
305 ##hpsPFTauDiscriminationByMVAMediumMuonRejection = hpsPFTauDiscriminationByMVALooseMuonRejection.clone(
306 ## mvaMin = cms.double(0.950)
307 ##)
308 ##hpsPFTauDiscriminationByMVATightMuonRejection = hpsPFTauDiscriminationByMVALooseMuonRejection.clone(
309 ## mvaMin = cms.double(0.975)
310 ##)
311 hpsPFTauDiscriminationByMVALooseMuonRejection = recoTauDiscriminantCutMultiplexer.clone(
312  PFTauProducer = cms.InputTag('hpsPFTauProducer'),
313  Prediscriminants = requireDecayMode.clone(),
314  toMultiplex = cms.InputTag('hpsPFTauDiscriminationByMVArawMuonRejection'),
315  key = cms.InputTag('hpsPFTauDiscriminationByMVArawMuonRejection:category'),
316  inputFileName = cms.FileInPath('RecoTauTag/RecoTau/data/wpDiscriminationByMVAMuonRejection.root'),
317  mvaOutput_normalization = cms.string("mvaOutput_normalization_opt2"),
318  mapping = cms.VPSet(
319  cms.PSet(
320  category = cms.uint32(0),
321  cut = cms.string("opt2eff99_5"),
322  variable = cms.string("pt")
323  )
324  )
325 )
326 hpsPFTauDiscriminationByMVAMediumMuonRejection = hpsPFTauDiscriminationByMVALooseMuonRejection.clone()
327 hpsPFTauDiscriminationByMVAMediumMuonRejection.mapping[0].cut = cms.string("opt2eff99_0")
328 hpsPFTauDiscriminationByMVATightMuonRejection = hpsPFTauDiscriminationByMVALooseMuonRejection.clone()
329 hpsPFTauDiscriminationByMVATightMuonRejection.mapping[0].cut = cms.string("opt2eff98_0")
330 
331 hpsPFTauDiscriminationByMVA5rawElectronRejection = pfRecoTauDiscriminationAgainstElectronMVA5GBR.clone(
332  PFTauProducer = cms.InputTag('hpsPFTauProducer'),
333  Prediscriminants = requireDecayMode.clone(),
334  method = cms.string("BDTG"),
335  gbrFile = cms.FileInPath('RecoTauTag/RecoTau/data/gbrDiscriminationAgainstElectronMVA5.root'),
336 )
337 
338 hpsPFTauDiscriminationByMVA5VLooseElectronRejection = recoTauDiscriminantCutMultiplexer.clone(
339  PFTauProducer = cms.InputTag('hpsPFTauProducer'),
340  Prediscriminants = requireDecayMode.clone(),
341  toMultiplex = cms.InputTag('hpsPFTauDiscriminationByMVA5rawElectronRejection'),
342  key = cms.InputTag('hpsPFTauDiscriminationByMVA5rawElectronRejection:category'),
343  inputFileName = cms.FileInPath('RecoTauTag/RecoTau/data/wpDiscriminationAgainstElectronMVA5.root'),
344  mapping = cms.VPSet(
345  cms.PSet(
346  category = cms.uint32(0), # minMVANoEleMatchWOgWOgsfBL
347  cut = cms.string("eff99cat0"),
348  variable = cms.string("pt")
349  ),
350  cms.PSet(
351  category = cms.uint32(1), # minMVANoEleMatchWOgWgsfBL
352  cut = cms.string("eff99cat1"),
353  variable = cms.string("pt")
354  ),
355  cms.PSet(
356  category = cms.uint32(2), # minMVANoEleMatchWgWOgsfBL
357  cut = cms.string("eff99cat2"),
358  variable = cms.string("pt")
359  ),
360  cms.PSet(
361  category = cms.uint32(3), # minMVANoEleMatchWgWgsfBL
362  cut = cms.string("eff99cat3"),
363  variable = cms.string("pt")
364  ),
365  cms.PSet(
366  category = cms.uint32(4), # minMVAWOgWOgsfBL
367  cut = cms.string("eff99cat4"),
368  variable = cms.string("pt")
369  ),
370  cms.PSet(
371  category = cms.uint32(5), # minMVAWOgWgsfBL
372  cut = cms.string("eff99cat5"),
373  variable = cms.string("pt")
374  ),
375  cms.PSet(
376  category = cms.uint32(6), # minMVAWgWOgsfBL
377  cut = cms.string("eff99cat6"),
378  variable = cms.string("pt")
379  ),
380  cms.PSet(
381  category = cms.uint32(7), # minMVAWgWgsfBL
382  cut = cms.string("eff99cat7"),
383  variable = cms.string("pt")
384  ),
385  cms.PSet(
386  category = cms.uint32(8), # minMVANoEleMatchWOgWOgsfEC
387  cut = cms.string("eff99cat8"),
388  variable = cms.string("pt")
389  ),
390  cms.PSet(
391  category = cms.uint32(9), # minMVANoEleMatchWOgWgsfEC
392  cut = cms.string("eff99cat9"),
393  variable = cms.string("pt")
394  ),
395  cms.PSet(
396  category = cms.uint32(10), # minMVANoEleMatchWgWOgsfEC
397  cut = cms.string("eff99cat10"),
398  variable = cms.string("pt")
399  ),
400  cms.PSet(
401  category = cms.uint32(11), # minMVANoEleMatchWgWgsfEC
402  cut = cms.string("eff99cat11"),
403  variable = cms.string("pt")
404  ),
405  cms.PSet(
406  category = cms.uint32(12), # minMVAWOgWOgsfEC
407  cut = cms.string("eff99cat12"),
408  variable = cms.string("pt")
409  ),
410  cms.PSet(
411  category = cms.uint32(13), # minMVAWOgWgsfEC
412  cut = cms.string("eff99cat13"),
413  variable = cms.string("pt")
414  ),
415  cms.PSet(
416  category = cms.uint32(14), # minMVAWgWOgsfEC
417  cut = cms.string("eff99cat14"),
418  variable = cms.string("pt")
419  ),
420  cms.PSet(
421  category = cms.uint32(15), # minMVAWgWgsfEC
422  cut = cms.string("eff99cat15"),
423  variable = cms.string("pt")
424  )
425  )
426 )
427 
428 hpsPFTauDiscriminationByMVA5LooseElectronRejection = copy.deepcopy(hpsPFTauDiscriminationByMVA5VLooseElectronRejection)
429 hpsPFTauDiscriminationByMVA5LooseElectronRejection.mapping[0].cut = cms.string("eff96cat0")
430 hpsPFTauDiscriminationByMVA5LooseElectronRejection.mapping[1].cut = cms.string("eff96cat1")
431 hpsPFTauDiscriminationByMVA5LooseElectronRejection.mapping[2].cut = cms.string("eff96cat2")
432 hpsPFTauDiscriminationByMVA5LooseElectronRejection.mapping[3].cut = cms.string("eff96cat3")
433 hpsPFTauDiscriminationByMVA5LooseElectronRejection.mapping[4].cut = cms.string("eff96cat4")
434 hpsPFTauDiscriminationByMVA5LooseElectronRejection.mapping[5].cut = cms.string("eff96cat5")
435 hpsPFTauDiscriminationByMVA5LooseElectronRejection.mapping[6].cut = cms.string("eff96cat6")
436 hpsPFTauDiscriminationByMVA5LooseElectronRejection.mapping[7].cut = cms.string("eff96cat7")
437 hpsPFTauDiscriminationByMVA5LooseElectronRejection.mapping[8].cut = cms.string("eff96cat8")
438 hpsPFTauDiscriminationByMVA5LooseElectronRejection.mapping[9].cut = cms.string("eff96cat9")
439 hpsPFTauDiscriminationByMVA5LooseElectronRejection.mapping[10].cut = cms.string("eff96cat10")
440 hpsPFTauDiscriminationByMVA5LooseElectronRejection.mapping[11].cut = cms.string("eff96cat11")
441 hpsPFTauDiscriminationByMVA5LooseElectronRejection.mapping[12].cut = cms.string("eff96cat12")
442 hpsPFTauDiscriminationByMVA5LooseElectronRejection.mapping[13].cut = cms.string("eff96cat13")
443 hpsPFTauDiscriminationByMVA5LooseElectronRejection.mapping[14].cut = cms.string("eff96cat14")
444 hpsPFTauDiscriminationByMVA5LooseElectronRejection.mapping[15].cut = cms.string("eff96cat15")
445 
446 hpsPFTauDiscriminationByMVA5MediumElectronRejection = copy.deepcopy(hpsPFTauDiscriminationByMVA5VLooseElectronRejection)
447 hpsPFTauDiscriminationByMVA5MediumElectronRejection.mapping[0].cut = cms.string("eff91cat0")
448 hpsPFTauDiscriminationByMVA5MediumElectronRejection.mapping[1].cut = cms.string("eff91cat1")
449 hpsPFTauDiscriminationByMVA5MediumElectronRejection.mapping[2].cut = cms.string("eff91cat2")
450 hpsPFTauDiscriminationByMVA5MediumElectronRejection.mapping[3].cut = cms.string("eff91cat3")
451 hpsPFTauDiscriminationByMVA5MediumElectronRejection.mapping[4].cut = cms.string("eff91cat4")
452 hpsPFTauDiscriminationByMVA5MediumElectronRejection.mapping[5].cut = cms.string("eff91cat5")
453 hpsPFTauDiscriminationByMVA5MediumElectronRejection.mapping[6].cut = cms.string("eff91cat6")
454 hpsPFTauDiscriminationByMVA5MediumElectronRejection.mapping[7].cut = cms.string("eff91cat7")
455 hpsPFTauDiscriminationByMVA5MediumElectronRejection.mapping[8].cut = cms.string("eff91cat8")
456 hpsPFTauDiscriminationByMVA5MediumElectronRejection.mapping[9].cut = cms.string("eff91cat9")
457 hpsPFTauDiscriminationByMVA5MediumElectronRejection.mapping[10].cut = cms.string("eff91cat10")
458 hpsPFTauDiscriminationByMVA5MediumElectronRejection.mapping[11].cut = cms.string("eff91cat11")
459 hpsPFTauDiscriminationByMVA5MediumElectronRejection.mapping[12].cut = cms.string("eff91cat12")
460 hpsPFTauDiscriminationByMVA5MediumElectronRejection.mapping[13].cut = cms.string("eff91cat13")
461 hpsPFTauDiscriminationByMVA5MediumElectronRejection.mapping[14].cut = cms.string("eff91cat14")
462 hpsPFTauDiscriminationByMVA5MediumElectronRejection.mapping[15].cut = cms.string("eff91cat15")
463 
464 hpsPFTauDiscriminationByMVA5TightElectronRejection = copy.deepcopy(hpsPFTauDiscriminationByMVA5VLooseElectronRejection)
465 hpsPFTauDiscriminationByMVA5TightElectronRejection.mapping[0].cut = cms.string("eff85cat0")
466 hpsPFTauDiscriminationByMVA5TightElectronRejection.mapping[1].cut = cms.string("eff85cat1")
467 hpsPFTauDiscriminationByMVA5TightElectronRejection.mapping[2].cut = cms.string("eff85cat2")
468 hpsPFTauDiscriminationByMVA5TightElectronRejection.mapping[3].cut = cms.string("eff85cat3")
469 hpsPFTauDiscriminationByMVA5TightElectronRejection.mapping[4].cut = cms.string("eff85cat4")
470 hpsPFTauDiscriminationByMVA5TightElectronRejection.mapping[5].cut = cms.string("eff85cat5")
471 hpsPFTauDiscriminationByMVA5TightElectronRejection.mapping[6].cut = cms.string("eff85cat6")
472 hpsPFTauDiscriminationByMVA5TightElectronRejection.mapping[7].cut = cms.string("eff85cat7")
473 hpsPFTauDiscriminationByMVA5TightElectronRejection.mapping[8].cut = cms.string("eff85cat8")
474 hpsPFTauDiscriminationByMVA5TightElectronRejection.mapping[9].cut = cms.string("eff85cat9")
475 hpsPFTauDiscriminationByMVA5TightElectronRejection.mapping[10].cut = cms.string("eff85cat10")
476 hpsPFTauDiscriminationByMVA5TightElectronRejection.mapping[11].cut = cms.string("eff85cat11")
477 hpsPFTauDiscriminationByMVA5TightElectronRejection.mapping[12].cut = cms.string("eff85cat12")
478 hpsPFTauDiscriminationByMVA5TightElectronRejection.mapping[13].cut = cms.string("eff85cat13")
479 hpsPFTauDiscriminationByMVA5TightElectronRejection.mapping[14].cut = cms.string("eff85cat14")
480 hpsPFTauDiscriminationByMVA5TightElectronRejection.mapping[15].cut = cms.string("eff85cat15")
481 
482 hpsPFTauDiscriminationByMVA5VTightElectronRejection = copy.deepcopy(hpsPFTauDiscriminationByMVA5VLooseElectronRejection)
483 hpsPFTauDiscriminationByMVA5VTightElectronRejection.mapping[0].cut = cms.string("eff79cat0")
484 hpsPFTauDiscriminationByMVA5VTightElectronRejection.mapping[1].cut = cms.string("eff79cat1")
485 hpsPFTauDiscriminationByMVA5VTightElectronRejection.mapping[2].cut = cms.string("eff79cat2")
486 hpsPFTauDiscriminationByMVA5VTightElectronRejection.mapping[3].cut = cms.string("eff79cat3")
487 hpsPFTauDiscriminationByMVA5VTightElectronRejection.mapping[4].cut = cms.string("eff79cat4")
488 hpsPFTauDiscriminationByMVA5VTightElectronRejection.mapping[5].cut = cms.string("eff79cat5")
489 hpsPFTauDiscriminationByMVA5VTightElectronRejection.mapping[6].cut = cms.string("eff79cat6")
490 hpsPFTauDiscriminationByMVA5VTightElectronRejection.mapping[7].cut = cms.string("eff79cat7")
491 hpsPFTauDiscriminationByMVA5VTightElectronRejection.mapping[8].cut = cms.string("eff79cat8")
492 hpsPFTauDiscriminationByMVA5VTightElectronRejection.mapping[9].cut = cms.string("eff79cat9")
493 hpsPFTauDiscriminationByMVA5VTightElectronRejection.mapping[10].cut = cms.string("eff79cat10")
494 hpsPFTauDiscriminationByMVA5VTightElectronRejection.mapping[11].cut = cms.string("eff79cat11")
495 hpsPFTauDiscriminationByMVA5VTightElectronRejection.mapping[12].cut = cms.string("eff79cat12")
496 hpsPFTauDiscriminationByMVA5VTightElectronRejection.mapping[13].cut = cms.string("eff79cat13")
497 hpsPFTauDiscriminationByMVA5VTightElectronRejection.mapping[14].cut = cms.string("eff79cat14")
498 hpsPFTauDiscriminationByMVA5VTightElectronRejection.mapping[15].cut = cms.string("eff79cat15")
499 
500 hpsPFTauDiscriminationByDeadECALElectronRejection = pfRecoTauDiscriminationAgainstElectronDeadECAL.clone(
501  PFTauProducer = cms.InputTag('hpsPFTauProducer'),
502  Prediscriminants = requireDecayMode.clone()
503 )
504 
505 #Define new sequence that is using smaller number on hits cut
506 hpsPFTauDiscriminationByLooseCombinedIsolationDBSumPtCorr3Hits = hpsPFTauDiscriminationByLooseCombinedIsolationDBSumPtCorr.clone()
507 hpsPFTauDiscriminationByMediumCombinedIsolationDBSumPtCorr3Hits = hpsPFTauDiscriminationByMediumCombinedIsolationDBSumPtCorr.clone()
508 hpsPFTauDiscriminationByTightCombinedIsolationDBSumPtCorr3Hits = hpsPFTauDiscriminationByTightCombinedIsolationDBSumPtCorr.clone()
509 
510 hpsPFTauDiscriminationByLooseCombinedIsolationDBSumPtCorr3Hits.qualityCuts.isolationQualityCuts.minTrackHits = cms.uint32(3)
511 hpsPFTauDiscriminationByMediumCombinedIsolationDBSumPtCorr3Hits.qualityCuts.isolationQualityCuts.minTrackHits = cms.uint32(3)
512 hpsPFTauDiscriminationByTightCombinedIsolationDBSumPtCorr3Hits.qualityCuts.isolationQualityCuts.minTrackHits = cms.uint32(3)
513 
514 hpsPFTauDiscriminationByRawCombinedIsolationDBSumPtCorr3Hits = hpsPFTauDiscriminationByLooseCombinedIsolationDBSumPtCorr3Hits.clone(
515  applySumPtCut = False,
516  storeRawSumPt = cms.bool(True)
517 )
518 
519 hpsPFTauDiscriminationByCombinedIsolationSeqDBSumPtCorr3Hits = cms.Sequence(
520  hpsPFTauDiscriminationByLooseCombinedIsolationDBSumPtCorr3Hits*
521  hpsPFTauDiscriminationByMediumCombinedIsolationDBSumPtCorr3Hits*
522  hpsPFTauDiscriminationByTightCombinedIsolationDBSumPtCorr3Hits*
523  hpsPFTauDiscriminationByRawCombinedIsolationDBSumPtCorr3Hits
524 )
525 
526 # Define the HPS selection discriminator used in cleaning
527 hpsSelectionDiscriminator.PFTauProducer = cms.InputTag("combinatoricRecoTaus")
528 
529 from RecoTauTag.RecoTau.RecoTauCleaner_cfi import RecoTauCleaner
530 hpsPFTauProducerSansRefs=RecoTauCleaner.clone(
531  src=cms.InputTag("combinatoricRecoTaus")
532 )
533 
534 
535 from RecoTauTag.RecoTau.RecoTauPiZeroUnembedder_cfi import RecoTauPiZeroUnembedder
536 hpsPFTauProducer=RecoTauPiZeroUnembedder.clone(
537  src = cms.InputTag("hpsPFTauProducerSansRefs")
538 )
539 
540 
544 hpsPFTauPrimaryVertexProducer = PFTauPrimaryVertexProducer.clone(
545  PFTauTag = cms.InputTag("hpsPFTauProducer"),
546  ElectronTag = cms.InputTag(""),
547  MuonTag = cms.InputTag(""),
548  PVTag = cms.InputTag("offlinePrimaryVertices"),
549  beamSpot = cms.InputTag("offlineBeamSpot"),
550  TrackCollectionTag = cms.InputTag("generalTracks"),
551  Algorithm = cms.int32(1),
552  useBeamSpot = cms.bool(True),
553  RemoveMuonTracks = cms.bool(False),
554  RemoveElectronTracks = cms.bool(False),
555  useSelectedTaus = cms.bool(False),
556  discriminators = cms.VPSet(
557  cms.PSet(
558  discriminator = cms.InputTag('hpsPFTauDiscriminationByDecayModeFindingNewDMs'),
559  selectionCut = cms.double(0.5)
560  )
561  ),
562  cut = cms.string("pt > 18.0 & abs(eta) < 2.4")
563 )
564 
565 hpsPFTauSecondaryVertexProducer = PFTauSecondaryVertexProducer.clone(
566  PFTauTag = cms.InputTag("hpsPFTauProducer")
567 )
568 hpsPFTauTransverseImpactParameters = PFTauTransverseImpactParameters.clone(
569  PFTauTag = cms.InputTag("hpsPFTauProducer"),
570  PFTauPVATag = cms.InputTag("hpsPFTauPrimaryVertexProducer"),
571  PFTauSVATag = cms.InputTag("hpsPFTauSecondaryVertexProducer"),
572  useFullCalculation = cms.bool(False)
573 )
574 hpsPFTauVertexAndImpactParametersSeq = cms.Sequence(
575  hpsPFTauPrimaryVertexProducer*
576  hpsPFTauSecondaryVertexProducer*
577  hpsPFTauTransverseImpactParameters
578 )
579 
581 hpsPFTauMVA3IsolationChargedIsoPtSum = hpsPFTauDiscriminationByLooseCombinedIsolationDBSumPtCorr3Hits.clone(
582  PFTauProducer = cms.InputTag('hpsPFTauProducer'),
583  Prediscriminants = requireDecayMode.clone(),
584  ApplyDiscriminationByECALIsolation = cms.bool(False),
585  ApplyDiscriminationByTrackerIsolation = cms.bool(True),
586  applySumPtCut = cms.bool(False),
587  applyDeltaBetaCorrection = cms.bool(False),
588  storeRawSumPt = cms.bool(True),
589  storeRawPUsumPt = cms.bool(False),
590  customOuterCone = cms.double(0.5),
591  isoConeSizeForDeltaBeta = cms.double(0.8),
592  verbosity = cms.int32(0)
593 )
594 hpsPFTauMVA3IsolationNeutralIsoPtSum = hpsPFTauMVA3IsolationChargedIsoPtSum.clone(
595  ApplyDiscriminationByECALIsolation = cms.bool(True),
596  ApplyDiscriminationByTrackerIsolation = cms.bool(False),
597  verbosity = cms.int32(0)
598 )
599 hpsPFTauMVA3IsolationPUcorrPtSum = hpsPFTauMVA3IsolationChargedIsoPtSum.clone(
600  ApplyDiscriminationByECALIsolation = cms.bool(False),
601  ApplyDiscriminationByTrackerIsolation = cms.bool(False),
602  applyDeltaBetaCorrection = cms.bool(True),
603  storeRawSumPt = cms.bool(False),
604  storeRawPUsumPt = cms.bool(True),
605  verbosity = cms.int32(0)
606 )
607 hpsPFTauDiscriminationByIsolationMVA3oldDMwoLTraw = discriminationByIsolationMVA2raw.clone(
608  PFTauProducer = cms.InputTag('hpsPFTauProducer'),
609  Prediscriminants = requireDecayMode.clone(),
610  inputFileName = cms.FileInPath('RecoTauTag/RecoTau/data/gbrDiscriminationByIsolationMVA3_oldDMwoLT.root'),
611  mvaName = cms.string("tauIdMVAoldDMwoLT"),
612  mvaOpt = cms.string("oldDMwoLT"),
613  srcTauTransverseImpactParameters = cms.InputTag('hpsPFTauTransverseImpactParameters'),
614  srcChargedIsoPtSum = cms.InputTag('hpsPFTauMVA3IsolationChargedIsoPtSum'),
615  srcNeutralIsoPtSum = cms.InputTag('hpsPFTauMVA3IsolationNeutralIsoPtSum'),
616  srcPUcorrPtSum = cms.InputTag('hpsPFTauMVA3IsolationPUcorrPtSum'),
617  verbosity = cms.int32(0)
618 )
619 hpsPFTauDiscriminationByVLooseIsolationMVA3oldDMwoLT = discriminationByIsolationMVA2VLoose.clone(
620  PFTauProducer = cms.InputTag('hpsPFTauProducer'),
621  Prediscriminants = requireDecayMode.clone(),
622  toMultiplex = cms.InputTag('hpsPFTauDiscriminationByIsolationMVA3oldDMwoLTraw'),
623  key = cms.InputTag('hpsPFTauDiscriminationByIsolationMVA3oldDMwoLTraw:category'),
624  inputFileName = cms.FileInPath('RecoTauTag/RecoTau/data/wpDiscriminationByIsolationMVA3_oldDMwoLT.root'),
625  mvaOutput_normalization = cms.string("mvaOutput_normalization_oldDMwoLT"),
626  mapping = cms.VPSet(
627  cms.PSet(
628  category = cms.uint32(0),
629  cut = cms.string("oldDMwoLTEff90"),
630  variable = cms.string("pt")
631  )
632  )
633 )
634 hpsPFTauDiscriminationByLooseIsolationMVA3oldDMwoLT = hpsPFTauDiscriminationByVLooseIsolationMVA3oldDMwoLT.clone()
635 hpsPFTauDiscriminationByLooseIsolationMVA3oldDMwoLT.mapping[0].cut = cms.string("oldDMwoLTEff80")
636 hpsPFTauDiscriminationByMediumIsolationMVA3oldDMwoLT = hpsPFTauDiscriminationByVLooseIsolationMVA3oldDMwoLT.clone()
637 hpsPFTauDiscriminationByMediumIsolationMVA3oldDMwoLT.mapping[0].cut = cms.string("oldDMwoLTEff70")
638 hpsPFTauDiscriminationByTightIsolationMVA3oldDMwoLT = hpsPFTauDiscriminationByVLooseIsolationMVA3oldDMwoLT.clone()
639 hpsPFTauDiscriminationByTightIsolationMVA3oldDMwoLT.mapping[0].cut = cms.string("oldDMwoLTEff60")
640 hpsPFTauDiscriminationByVTightIsolationMVA3oldDMwoLT = hpsPFTauDiscriminationByVLooseIsolationMVA3oldDMwoLT.clone()
641 hpsPFTauDiscriminationByVTightIsolationMVA3oldDMwoLT.mapping[0].cut = cms.string("oldDMwoLTEff50")
642 hpsPFTauDiscriminationByVVTightIsolationMVA3oldDMwoLT = hpsPFTauDiscriminationByVLooseIsolationMVA3oldDMwoLT.clone()
643 hpsPFTauDiscriminationByVVTightIsolationMVA3oldDMwoLT.mapping[0].cut = cms.string("oldDMwoLTEff40")
644 hpsPFTauDiscriminationByIsolationMVA3oldDMwLTraw = hpsPFTauDiscriminationByIsolationMVA3oldDMwoLTraw.clone(
645  inputFileName = cms.FileInPath('RecoTauTag/RecoTau/data/gbrDiscriminationByIsolationMVA3_oldDMwLT.root'),
646  mvaName = cms.string("tauIdMVAoldDMwLT"),
647  mvaOpt = cms.string("oldDMwLT"),
648  verbosity = cms.int32(0)
649 )
650 hpsPFTauDiscriminationByVLooseIsolationMVA3oldDMwLT = hpsPFTauDiscriminationByVLooseIsolationMVA3oldDMwoLT.clone(
651  toMultiplex = cms.InputTag('hpsPFTauDiscriminationByIsolationMVA3oldDMwLTraw'),
652  key = cms.InputTag('hpsPFTauDiscriminationByIsolationMVA3oldDMwLTraw:category'),
653  inputFileName = cms.FileInPath('RecoTauTag/RecoTau/data/wpDiscriminationByIsolationMVA3_oldDMwLT.root'),
654  mvaOutput_normalization = cms.string("mvaOutput_normalization_oldDMwLT"),
655  mapping = cms.VPSet(
656  cms.PSet(
657  category = cms.uint32(0),
658  cut = cms.string("oldDMwLTEff90"),
659  variable = cms.string("pt")
660  )
661  )
662 )
663 hpsPFTauDiscriminationByLooseIsolationMVA3oldDMwLT = hpsPFTauDiscriminationByVLooseIsolationMVA3oldDMwLT.clone()
664 hpsPFTauDiscriminationByLooseIsolationMVA3oldDMwLT.mapping[0].cut = cms.string("oldDMwLTEff80")
665 hpsPFTauDiscriminationByMediumIsolationMVA3oldDMwLT = hpsPFTauDiscriminationByVLooseIsolationMVA3oldDMwLT.clone()
666 hpsPFTauDiscriminationByMediumIsolationMVA3oldDMwLT.mapping[0].cut = cms.string("oldDMwLTEff70")
667 hpsPFTauDiscriminationByTightIsolationMVA3oldDMwLT = hpsPFTauDiscriminationByVLooseIsolationMVA3oldDMwLT.clone()
668 hpsPFTauDiscriminationByTightIsolationMVA3oldDMwLT.mapping[0].cut = cms.string("oldDMwLTEff60")
669 hpsPFTauDiscriminationByVTightIsolationMVA3oldDMwLT = hpsPFTauDiscriminationByVLooseIsolationMVA3oldDMwLT.clone()
670 hpsPFTauDiscriminationByVTightIsolationMVA3oldDMwLT.mapping[0].cut = cms.string("oldDMwLTEff50")
671 hpsPFTauDiscriminationByVVTightIsolationMVA3oldDMwLT = hpsPFTauDiscriminationByVLooseIsolationMVA3oldDMwLT.clone()
672 hpsPFTauDiscriminationByVVTightIsolationMVA3oldDMwLT.mapping[0].cut = cms.string("oldDMwLTEff40")
673 hpsPFTauDiscriminationByIsolationMVA3newDMwoLTraw = hpsPFTauDiscriminationByIsolationMVA3oldDMwoLTraw.clone(
674  inputFileName = cms.FileInPath('RecoTauTag/RecoTau/data/gbrDiscriminationByIsolationMVA3_newDMwoLT.root'),
675  mvaName = cms.string("tauIdMVAnewDMwoLT"),
676  mvaOpt = cms.string("newDMwoLT"),
677  verbosity = cms.int32(0)
678 )
679 hpsPFTauDiscriminationByVLooseIsolationMVA3newDMwoLT = hpsPFTauDiscriminationByVLooseIsolationMVA3oldDMwoLT.clone(
680  toMultiplex = cms.InputTag('hpsPFTauDiscriminationByIsolationMVA3newDMwoLTraw'),
681  key = cms.InputTag('hpsPFTauDiscriminationByIsolationMVA3newDMwoLTraw:category'),
682  inputFileName = cms.FileInPath('RecoTauTag/RecoTau/data/wpDiscriminationByIsolationMVA3_newDMwoLT.root'),
683  mvaOutput_normalization = cms.string("mvaOutput_normalization_newDMwoLT"),
684  mapping = cms.VPSet(
685  cms.PSet(
686  category = cms.uint32(0),
687  cut = cms.string("newDMwoLTEff90"),
688  variable = cms.string("pt")
689  )
690  ),
691  verbosity = cms.int32(0)
692 )
693 hpsPFTauDiscriminationByLooseIsolationMVA3newDMwoLT = hpsPFTauDiscriminationByVLooseIsolationMVA3newDMwoLT.clone()
694 hpsPFTauDiscriminationByLooseIsolationMVA3newDMwoLT.mapping[0].cut = cms.string("newDMwoLTEff80")
695 ##hpsPFTauDiscriminationByLooseIsolationMVA3newDMwoLT.verbosity = cms.int32(1)
696 hpsPFTauDiscriminationByMediumIsolationMVA3newDMwoLT = hpsPFTauDiscriminationByVLooseIsolationMVA3newDMwoLT.clone()
697 hpsPFTauDiscriminationByMediumIsolationMVA3newDMwoLT.mapping[0].cut = cms.string("newDMwoLTEff70")
698 hpsPFTauDiscriminationByTightIsolationMVA3newDMwoLT = hpsPFTauDiscriminationByVLooseIsolationMVA3newDMwoLT.clone()
699 hpsPFTauDiscriminationByTightIsolationMVA3newDMwoLT.mapping[0].cut = cms.string("newDMwoLTEff60")
700 hpsPFTauDiscriminationByVTightIsolationMVA3newDMwoLT = hpsPFTauDiscriminationByVLooseIsolationMVA3newDMwoLT.clone()
701 hpsPFTauDiscriminationByVTightIsolationMVA3newDMwoLT.mapping[0].cut = cms.string("newDMwoLTEff50")
702 hpsPFTauDiscriminationByVVTightIsolationMVA3newDMwoLT = hpsPFTauDiscriminationByVLooseIsolationMVA3newDMwoLT.clone()
703 hpsPFTauDiscriminationByVVTightIsolationMVA3newDMwoLT.mapping[0].cut = cms.string("newDMwoLTEff40")
704 hpsPFTauDiscriminationByIsolationMVA3newDMwLTraw = hpsPFTauDiscriminationByIsolationMVA3oldDMwoLTraw.clone(
705  inputFileName = cms.FileInPath('RecoTauTag/RecoTau/data/gbrDiscriminationByIsolationMVA3_newDMwLT.root'),
706  mvaName = cms.string("tauIdMVAnewDMwLT"),
707  mvaOpt = cms.string("newDMwLT"),
708  verbosity = cms.int32(0)
709 )
710 hpsPFTauDiscriminationByVLooseIsolationMVA3newDMwLT = hpsPFTauDiscriminationByVLooseIsolationMVA3oldDMwoLT.clone(
711  toMultiplex = cms.InputTag('hpsPFTauDiscriminationByIsolationMVA3newDMwLTraw'),
712  key = cms.InputTag('hpsPFTauDiscriminationByIsolationMVA3newDMwLTraw:category'),
713  inputFileName = cms.FileInPath('RecoTauTag/RecoTau/data/wpDiscriminationByIsolationMVA3_newDMwLT.root'),
714  mvaOutput_normalization = cms.string("mvaOutput_normalization_newDMwLT"),
715  mapping = cms.VPSet(
716  cms.PSet(
717  category = cms.uint32(0),
718  cut = cms.string("newDMwLTEff90"),
719  variable = cms.string("pt")
720  )
721  )
722 )
723 hpsPFTauDiscriminationByLooseIsolationMVA3newDMwLT = hpsPFTauDiscriminationByVLooseIsolationMVA3newDMwLT.clone()
724 hpsPFTauDiscriminationByLooseIsolationMVA3newDMwLT.mapping[0].cut = cms.string("newDMwLTEff80")
725 hpsPFTauDiscriminationByMediumIsolationMVA3newDMwLT = hpsPFTauDiscriminationByVLooseIsolationMVA3newDMwLT.clone()
726 hpsPFTauDiscriminationByMediumIsolationMVA3newDMwLT.mapping[0].cut = cms.string("newDMwLTEff70")
727 hpsPFTauDiscriminationByTightIsolationMVA3newDMwLT = hpsPFTauDiscriminationByVLooseIsolationMVA3newDMwLT.clone()
728 hpsPFTauDiscriminationByTightIsolationMVA3newDMwLT.mapping[0].cut = cms.string("newDMwLTEff60")
729 hpsPFTauDiscriminationByVTightIsolationMVA3newDMwLT = hpsPFTauDiscriminationByVLooseIsolationMVA3newDMwLT.clone()
730 hpsPFTauDiscriminationByVTightIsolationMVA3newDMwLT.mapping[0].cut = cms.string("newDMwLTEff50")
731 hpsPFTauDiscriminationByVVTightIsolationMVA3newDMwLT = hpsPFTauDiscriminationByVLooseIsolationMVA3newDMwLT.clone()
732 hpsPFTauDiscriminationByVVTightIsolationMVA3newDMwLT.mapping[0].cut = cms.string("newDMwLTEff40")
733 
734 hpsPFTauMVAIsolation2Seq = cms.Sequence(
735  hpsPFTauMVA3IsolationChargedIsoPtSum
736  + hpsPFTauMVA3IsolationNeutralIsoPtSum
737  + hpsPFTauMVA3IsolationPUcorrPtSum
738  + hpsPFTauDiscriminationByIsolationMVA3oldDMwoLTraw
739  + hpsPFTauDiscriminationByVLooseIsolationMVA3oldDMwoLT
740  + hpsPFTauDiscriminationByLooseIsolationMVA3oldDMwoLT
741  + hpsPFTauDiscriminationByMediumIsolationMVA3oldDMwoLT
742  + hpsPFTauDiscriminationByTightIsolationMVA3oldDMwoLT
743  + hpsPFTauDiscriminationByVTightIsolationMVA3oldDMwoLT
744  + hpsPFTauDiscriminationByVVTightIsolationMVA3oldDMwoLT
745  + hpsPFTauDiscriminationByIsolationMVA3oldDMwLTraw
746  + hpsPFTauDiscriminationByVLooseIsolationMVA3oldDMwLT
747  + hpsPFTauDiscriminationByLooseIsolationMVA3oldDMwLT
748  + hpsPFTauDiscriminationByMediumIsolationMVA3oldDMwLT
749  + hpsPFTauDiscriminationByTightIsolationMVA3oldDMwLT
750  + hpsPFTauDiscriminationByVTightIsolationMVA3oldDMwLT
751  + hpsPFTauDiscriminationByVVTightIsolationMVA3oldDMwLT
752  + hpsPFTauDiscriminationByIsolationMVA3newDMwoLTraw
753  + hpsPFTauDiscriminationByVLooseIsolationMVA3newDMwoLT
754  + hpsPFTauDiscriminationByLooseIsolationMVA3newDMwoLT
755  + hpsPFTauDiscriminationByMediumIsolationMVA3newDMwoLT
756  + hpsPFTauDiscriminationByTightIsolationMVA3newDMwoLT
757  + hpsPFTauDiscriminationByVTightIsolationMVA3newDMwoLT
758  + hpsPFTauDiscriminationByVVTightIsolationMVA3newDMwoLT
759  + hpsPFTauDiscriminationByIsolationMVA3newDMwLTraw
760  + hpsPFTauDiscriminationByVLooseIsolationMVA3newDMwLT
761  + hpsPFTauDiscriminationByLooseIsolationMVA3newDMwLT
762  + hpsPFTauDiscriminationByMediumIsolationMVA3newDMwLT
763  + hpsPFTauDiscriminationByTightIsolationMVA3newDMwLT
764  + hpsPFTauDiscriminationByVTightIsolationMVA3newDMwLT
765  + hpsPFTauDiscriminationByVVTightIsolationMVA3newDMwLT
766 )
767 
768 
769 produceHPSPFTaus = cms.Sequence(
770  hpsSelectionDiscriminator
771  #*hpsTightIsolationCleaner
772  #*hpsMediumIsolationCleaner
773  #*hpsLooseIsolationCleaner
774  #*hpsVLooseIsolationCleaner
775  *hpsPFTauProducerSansRefs
776  *hpsPFTauProducer
777 )
778 
779 produceAndDiscriminateHPSPFTaus = cms.Sequence(
780  produceHPSPFTaus*
781  hpsPFTauDiscriminationByDecayModeFindingNewDMs*
782  hpsPFTauDiscriminationByDecayModeFindingOldDMs*
783  hpsPFTauDiscriminationByDecayModeFinding* # CV: kept for backwards compatibility
784  hpsPFTauDiscriminationByChargedIsolationSeq*
785  hpsPFTauDiscriminationByIsolationSeq*
786  #hpsPFTauDiscriminationByIsolationSeqRhoCorr*
787  #hpsPFTauDiscriminationByIsolationSeqCustomRhoCorr*
788  hpsPFTauDiscriminationByIsolationSeqDBSumPtCorr*
789 
790  hpsPFTauDiscriminationByRawCombinedIsolationDBSumPtCorr*
791  hpsPFTauDiscriminationByRawChargedIsolationDBSumPtCorr*
792  hpsPFTauDiscriminationByRawGammaIsolationDBSumPtCorr*
793 
794  hpsPFTauDiscriminationByCombinedIsolationSeqDBSumPtCorr*
795  hpsPFTauDiscriminationByCombinedIsolationSeqDBSumPtCorr3Hits*
796 
797  hpsPFTauDiscriminationByLooseElectronRejection*
798  hpsPFTauDiscriminationByMediumElectronRejection*
799  hpsPFTauDiscriminationByTightElectronRejection*
800  hpsPFTauDiscriminationByMVA5rawElectronRejection*
801  hpsPFTauDiscriminationByMVA5VLooseElectronRejection*
802  hpsPFTauDiscriminationByMVA5LooseElectronRejection*
803  hpsPFTauDiscriminationByMVA5MediumElectronRejection*
804  hpsPFTauDiscriminationByMVA5TightElectronRejection*
805  hpsPFTauDiscriminationByMVA5VTightElectronRejection*
806  hpsPFTauDiscriminationByDeadECALElectronRejection*
807  hpsPFTauDiscriminationByLooseMuonRejection*
808  hpsPFTauDiscriminationByMediumMuonRejection*
809  hpsPFTauDiscriminationByTightMuonRejection*
810  hpsPFTauDiscriminationByLooseMuonRejection2*
811  hpsPFTauDiscriminationByMediumMuonRejection2*
812  hpsPFTauDiscriminationByTightMuonRejection2*
813  hpsPFTauDiscriminationByLooseMuonRejection3*
814  hpsPFTauDiscriminationByTightMuonRejection3*
815  hpsPFTauDiscriminationByMVArawMuonRejection*
816  hpsPFTauDiscriminationByMVALooseMuonRejection*
817  hpsPFTauDiscriminationByMVAMediumMuonRejection*
818  hpsPFTauDiscriminationByMVATightMuonRejection*
819 
820  hpsPFTauVertexAndImpactParametersSeq*
821 
822  hpsPFTauMVAIsolation2Seq
823 )