CMS 3D CMS Logo

taus_updatedMVAIds_cff.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 ##################### Updated tau collection with MVA-based tau-Ids rerun #######
4 # Used only in some eras
7 from Configuration.Eras.Modifier_run2_miniAOD_devel_cff import run2_miniAOD_devel
8 
9 ### MVAIso 2017v2
10 ## DBoldDM
11 # Raw
12 patTauDiscriminationByIsolationMVArun2v1DBoldDMwLTraw = patDiscriminationByIsolationMVArun2v1raw.clone(
13  PATTauProducer = cms.InputTag('slimmedTaus'),
14  Prediscriminants = noPrediscriminants,
15  loadMVAfromDB = cms.bool(True),
16  mvaName = cms.string("RecoTauTag_tauIdMVAIsoDBoldDMwLT2017v2"), # name of the training you want to use
17  mvaOpt = cms.string("DBoldDMwLTwGJ"), # option you want to use for your training (i.e., which variables are used to compute the BDT score)
18  verbosity = cms.int32(0)
19 )
20 # VVLoose WP
21 patTauDiscriminationByVVLooseIsolationMVArun2v1DBoldDMwLT = patDiscriminationByIsolationMVArun2v1VLoose.clone(
22  PATTauProducer = cms.InputTag('slimmedTaus'),
23  Prediscriminants = noPrediscriminants,
24  toMultiplex = cms.InputTag('patTauDiscriminationByIsolationMVArun2v1DBoldDMwLTraw'),
25  key = cms.InputTag('patTauDiscriminationByIsolationMVArun2v1DBoldDMwLTraw','category'),
26  loadMVAfromDB = cms.bool(True),
27  mvaOutput_normalization = cms.string("RecoTauTag_tauIdMVAIsoDBoldDMwLT2017v2_mvaOutput_normalization"), # normalization fo the training you want to use
28  mapping = cms.VPSet(
29  cms.PSet(
30  category = cms.uint32(0),
31  cut = cms.string("RecoTauTag_tauIdMVAIsoDBoldDMwLT2017v2_WPEff95"), # this is the name of the working point you want to use
32  variable = cms.string("pt"),
33  )
34  )
35 )
36 # VLoose WP
37 patTauDiscriminationByVLooseIsolationMVArun2v1DBoldDMwLT = patTauDiscriminationByVVLooseIsolationMVArun2v1DBoldDMwLT.clone()
38 patTauDiscriminationByVLooseIsolationMVArun2v1DBoldDMwLT.mapping[0].cut = cms.string("RecoTauTag_tauIdMVAIsoDBoldDMwLT2017v2_WPEff90")
39 # Loose WP
40 patTauDiscriminationByLooseIsolationMVArun2v1DBoldDMwLT = patTauDiscriminationByVVLooseIsolationMVArun2v1DBoldDMwLT.clone()
41 patTauDiscriminationByLooseIsolationMVArun2v1DBoldDMwLT.mapping[0].cut = cms.string("RecoTauTag_tauIdMVAIsoDBoldDMwLT2017v2_WPEff80")
42 # Medium WP
43 patTauDiscriminationByMediumIsolationMVArun2v1DBoldDMwLT = patTauDiscriminationByVVLooseIsolationMVArun2v1DBoldDMwLT.clone()
44 patTauDiscriminationByMediumIsolationMVArun2v1DBoldDMwLT.mapping[0].cut = cms.string("RecoTauTag_tauIdMVAIsoDBoldDMwLT2017v2_WPEff70")
45 # Tight WP
46 patTauDiscriminationByTightIsolationMVArun2v1DBoldDMwLT = patTauDiscriminationByVVLooseIsolationMVArun2v1DBoldDMwLT.clone()
47 patTauDiscriminationByTightIsolationMVArun2v1DBoldDMwLT.mapping[0].cut = cms.string("RecoTauTag_tauIdMVAIsoDBoldDMwLT2017v2_WPEff60")
48 # VTight WP
49 patTauDiscriminationByVTightIsolationMVArun2v1DBoldDMwLT = patTauDiscriminationByVVLooseIsolationMVArun2v1DBoldDMwLT.clone()
50 patTauDiscriminationByVTightIsolationMVArun2v1DBoldDMwLT.mapping[0].cut = cms.string("RecoTauTag_tauIdMVAIsoDBoldDMwLT2017v2_WPEff50")
51 # VVTights WP
52 patTauDiscriminationByVVTightIsolationMVArun2v1DBoldDMwLT = patTauDiscriminationByVVLooseIsolationMVArun2v1DBoldDMwLT.clone()
53 patTauDiscriminationByVVTightIsolationMVArun2v1DBoldDMwLT.mapping[0].cut = cms.string("RecoTauTag_tauIdMVAIsoDBoldDMwLT2017v2_WPEff40")
54 # MVAIso DBoldDM Seqeunce
55 patTauDiscriminationByIsolationMVArun2v1DBoldDMwLTSeq = cms.Sequence(
56  patTauDiscriminationByIsolationMVArun2v1DBoldDMwLTraw
57  + patTauDiscriminationByVVLooseIsolationMVArun2v1DBoldDMwLT
58  + patTauDiscriminationByVLooseIsolationMVArun2v1DBoldDMwLT
59  + patTauDiscriminationByLooseIsolationMVArun2v1DBoldDMwLT
60  + patTauDiscriminationByMediumIsolationMVArun2v1DBoldDMwLT
61  + patTauDiscriminationByTightIsolationMVArun2v1DBoldDMwLT
62  + patTauDiscriminationByVTightIsolationMVArun2v1DBoldDMwLT
63  + patTauDiscriminationByVVTightIsolationMVArun2v1DBoldDMwLT
64 )
65 ## DBnewDM
66 # Raw
67 patTauDiscriminationByIsolationMVArun2v1DBnewDMwLTraw = patDiscriminationByIsolationMVArun2v1raw.clone(
68  PATTauProducer = cms.InputTag('slimmedTaus'),
69  Prediscriminants = noPrediscriminants,
70  loadMVAfromDB = cms.bool(True),
71  mvaName = cms.string("RecoTauTag_tauIdMVAIsoDBnewDMwLT2017v2"), # name of the training you want to use
72  mvaOpt = cms.string("DBnewDMwLTwGJ"), # option you want to use for your training (i.e., which variables are used to compute the BDT score)
73  verbosity = cms.int32(0)
74 )
75 # VVLoose WP
76 patTauDiscriminationByVVLooseIsolationMVArun2v1DBnewDMwLT = patDiscriminationByIsolationMVArun2v1VLoose.clone(
77  PATTauProducer = cms.InputTag('slimmedTaus'),
78  Prediscriminants = noPrediscriminants,
79  toMultiplex = cms.InputTag('patTauDiscriminationByIsolationMVArun2v1DBnewDMwLTraw'),
80  key = cms.InputTag('patTauDiscriminationByIsolationMVArun2v1DBnewDMwLTraw','category'),
81  loadMVAfromDB = cms.bool(True),
82  mvaOutput_normalization = cms.string("RecoTauTag_tauIdMVAIsoDBnewDMwLT2017v2_mvaOutput_normalization"), # normalization fo the training you want to use
83  mapping = cms.VPSet(
84  cms.PSet(
85  category = cms.uint32(0),
86  cut = cms.string("RecoTauTag_tauIdMVAIsoDBnewDMwLT2017v2_WPEff95"), # this is the name of the working point you want to use
87  variable = cms.string("pt"),
88  )
89  )
90 )
91 # VLoose WP
92 patTauDiscriminationByVLooseIsolationMVArun2v1DBnewDMwLT = patTauDiscriminationByVVLooseIsolationMVArun2v1DBnewDMwLT.clone()
93 patTauDiscriminationByVLooseIsolationMVArun2v1DBnewDMwLT.mapping[0].cut = cms.string("RecoTauTag_tauIdMVAIsoDBnewDMwLT2017v2_WPEff90")
94 # Loose WP
95 patTauDiscriminationByLooseIsolationMVArun2v1DBnewDMwLT = patTauDiscriminationByVVLooseIsolationMVArun2v1DBnewDMwLT.clone()
96 patTauDiscriminationByLooseIsolationMVArun2v1DBnewDMwLT.mapping[0].cut = cms.string("RecoTauTag_tauIdMVAIsoDBnewDMwLT2017v2_WPEff80")
97 # Medium WP
98 patTauDiscriminationByMediumIsolationMVArun2v1DBnewDMwLT = patTauDiscriminationByVVLooseIsolationMVArun2v1DBnewDMwLT.clone()
99 patTauDiscriminationByMediumIsolationMVArun2v1DBnewDMwLT.mapping[0].cut = cms.string("RecoTauTag_tauIdMVAIsoDBnewDMwLT2017v2_WPEff70")
100 # Tight WP
101 patTauDiscriminationByTightIsolationMVArun2v1DBnewDMwLT = patTauDiscriminationByVVLooseIsolationMVArun2v1DBnewDMwLT.clone()
102 patTauDiscriminationByTightIsolationMVArun2v1DBnewDMwLT.mapping[0].cut = cms.string("RecoTauTag_tauIdMVAIsoDBnewDMwLT2017v2_WPEff60")
103 # VTight WP
104 patTauDiscriminationByVTightIsolationMVArun2v1DBnewDMwLT = patTauDiscriminationByVVLooseIsolationMVArun2v1DBnewDMwLT.clone()
105 patTauDiscriminationByVTightIsolationMVArun2v1DBnewDMwLT.mapping[0].cut = cms.string("RecoTauTag_tauIdMVAIsoDBnewDMwLT2017v2_WPEff50")
106 # VVTights WP
107 patTauDiscriminationByVVTightIsolationMVArun2v1DBnewDMwLT = patTauDiscriminationByVVLooseIsolationMVArun2v1DBnewDMwLT.clone()
108 patTauDiscriminationByVVTightIsolationMVArun2v1DBnewDMwLT.mapping[0].cut = cms.string("RecoTauTag_tauIdMVAIsoDBnewDMwLT2017v2_WPEff40")
109 # MVAIso DBnewDM Seqeunce
110 patTauDiscriminationByIsolationMVArun2v1DBnewDMwLTSeq = cms.Sequence(
111  patTauDiscriminationByIsolationMVArun2v1DBnewDMwLTraw
112  + patTauDiscriminationByVVLooseIsolationMVArun2v1DBnewDMwLT
113  + patTauDiscriminationByVLooseIsolationMVArun2v1DBnewDMwLT
114  + patTauDiscriminationByLooseIsolationMVArun2v1DBnewDMwLT
115  + patTauDiscriminationByMediumIsolationMVArun2v1DBnewDMwLT
116  + patTauDiscriminationByTightIsolationMVArun2v1DBnewDMwLT
117  + patTauDiscriminationByVTightIsolationMVArun2v1DBnewDMwLT
118  + patTauDiscriminationByVVTightIsolationMVArun2v1DBnewDMwLT
119 )
120 ## DBoldDMdR0p3
121 # Raw
122 patTauDiscriminationByIsolationMVArun2v1DBoldDMdR0p3wLTraw = patDiscriminationByIsolationMVArun2v1raw.clone(
123  PATTauProducer = cms.InputTag('slimmedTaus'),
124  Prediscriminants = noPrediscriminants,
125  loadMVAfromDB = cms.bool(True),
126  mvaName = cms.string("RecoTauTag_tauIdMVAIsoDBoldDMdR0p3wLT2017v2"), # name of the training you want to use
127  mvaOpt = cms.string("DBoldDMwLTwGJ"), # option you want to use for your training (i.e., which variables are used to compute the BDT score)
128  srcChargedIsoPtSum = cms.string('chargedIsoPtSumdR03'),
129  srcFootprintCorrection = cms.string('footprintCorrectiondR03'),
130  srcNeutralIsoPtSum = cms.string('neutralIsoPtSumdR03'),
131  srcPUcorrPtSum = cms.string('puCorrPtSum'),
132  srcPhotonPtSumOutsideSignalCone = cms.string('photonPtSumOutsideSignalConedR03'),
133  verbosity = cms.int32(0)
134 )
135 # VVLoose WP
136 patTauDiscriminationByVVLooseIsolationMVArun2v1DBoldDMdR0p3wLT = patDiscriminationByIsolationMVArun2v1VLoose.clone(
137  PATTauProducer = cms.InputTag('slimmedTaus'),
138  Prediscriminants = noPrediscriminants,
139  toMultiplex = cms.InputTag('patTauDiscriminationByIsolationMVArun2v1DBoldDMdR0p3wLTraw'),
140  key = cms.InputTag('patTauDiscriminationByIsolationMVArun2v1DBoldDMdR0p3wLTraw','category'),
141  loadMVAfromDB = cms.bool(True),
142  mvaOutput_normalization = cms.string("RecoTauTag_tauIdMVAIsoDBoldDMdR0p3wLT2017v2_mvaOutput_normalization"), # normalization fo the training you want to use
143  mapping = cms.VPSet(
144  cms.PSet(
145  category = cms.uint32(0),
146  cut = cms.string("RecoTauTag_tauIdMVAIsoDBoldDMdR0p3wLT2017v2_WPEff95"), # this is the name of the working point you want to use
147  variable = cms.string("pt"),
148  )
149  )
150 )
151 # VLoose WP
152 patTauDiscriminationByVLooseIsolationMVArun2v1DBoldDMdR0p3wLT = patTauDiscriminationByVVLooseIsolationMVArun2v1DBoldDMdR0p3wLT.clone()
153 patTauDiscriminationByVLooseIsolationMVArun2v1DBoldDMdR0p3wLT.mapping[0].cut = cms.string("RecoTauTag_tauIdMVAIsoDBoldDMdR0p3wLT2017v2_WPEff90")
154 # Loose WP
155 patTauDiscriminationByLooseIsolationMVArun2v1DBoldDMdR0p3wLT = patTauDiscriminationByVVLooseIsolationMVArun2v1DBoldDMdR0p3wLT.clone()
156 patTauDiscriminationByLooseIsolationMVArun2v1DBoldDMdR0p3wLT.mapping[0].cut = cms.string("RecoTauTag_tauIdMVAIsoDBoldDMdR0p3wLT2017v2_WPEff80")
157 # Medium WP
158 patTauDiscriminationByMediumIsolationMVArun2v1DBoldDMdR0p3wLT = patTauDiscriminationByVVLooseIsolationMVArun2v1DBoldDMdR0p3wLT.clone()
159 patTauDiscriminationByMediumIsolationMVArun2v1DBoldDMdR0p3wLT.mapping[0].cut = cms.string("RecoTauTag_tauIdMVAIsoDBoldDMdR0p3wLT2017v2_WPEff70")
160 # Tight WP
161 patTauDiscriminationByTightIsolationMVArun2v1DBoldDMdR0p3wLT = patTauDiscriminationByVVLooseIsolationMVArun2v1DBoldDMdR0p3wLT.clone()
162 patTauDiscriminationByTightIsolationMVArun2v1DBoldDMdR0p3wLT.mapping[0].cut = cms.string("RecoTauTag_tauIdMVAIsoDBoldDMdR0p3wLT2017v2_WPEff60")
163 # VTight WP
164 patTauDiscriminationByVTightIsolationMVArun2v1DBoldDMdR0p3wLT = patTauDiscriminationByVVLooseIsolationMVArun2v1DBoldDMdR0p3wLT.clone()
165 patTauDiscriminationByVTightIsolationMVArun2v1DBoldDMdR0p3wLT.mapping[0].cut = cms.string("RecoTauTag_tauIdMVAIsoDBoldDMdR0p3wLT2017v2_WPEff50")
166 # VVTights WP
167 patTauDiscriminationByVVTightIsolationMVArun2v1DBoldDMdR0p3wLT = patTauDiscriminationByVVLooseIsolationMVArun2v1DBoldDMdR0p3wLT.clone()
168 patTauDiscriminationByVVTightIsolationMVArun2v1DBoldDMdR0p3wLT.mapping[0].cut = cms.string("RecoTauTag_tauIdMVAIsoDBoldDMdR0p3wLT2017v2_WPEff40")
169 # MVAIso DBoldDMdR0p3 Seqeunce
170 patTauDiscriminationByIsolationMVArun2v1DBoldDMdR0p3wLTSeq = cms.Sequence(
171  patTauDiscriminationByIsolationMVArun2v1DBoldDMdR0p3wLTraw
172  + patTauDiscriminationByVVLooseIsolationMVArun2v1DBoldDMdR0p3wLT
173  + patTauDiscriminationByVLooseIsolationMVArun2v1DBoldDMdR0p3wLT
174  + patTauDiscriminationByLooseIsolationMVArun2v1DBoldDMdR0p3wLT
175  + patTauDiscriminationByMediumIsolationMVArun2v1DBoldDMdR0p3wLT
176  + patTauDiscriminationByTightIsolationMVArun2v1DBoldDMdR0p3wLT
177  + patTauDiscriminationByVTightIsolationMVArun2v1DBoldDMdR0p3wLT
178  + patTauDiscriminationByVVTightIsolationMVArun2v1DBoldDMdR0p3wLT
179 )
180 ### MVAIso 2017v1 for Nano on top of MiniAODv1
181 ## DBoldDM
182 # Raw
183 patTauDiscriminationByIsolationMVArun2v1DBoldDMwLTraw2017v1 = patDiscriminationByIsolationMVArun2v1raw.clone(
184  PATTauProducer = cms.InputTag('slimmedTaus'),
185  Prediscriminants = noPrediscriminants,
186  loadMVAfromDB = cms.bool(True),
187  mvaName = cms.string("RecoTauTag_tauIdMVAIsoDBoldDMwLT2017v1"), # name of the training you want to use
188  mvaOpt = cms.string("DBoldDMwLTwGJ"), # option you want to use for your training (i.e., which variables are used to compute the BDT score)
189  verbosity = cms.int32(0)
190 )
191 # VVLoose WP
192 patTauDiscriminationByVVLooseIsolationMVArun2v1DBoldDMwLT2017v1 = patDiscriminationByIsolationMVArun2v1VLoose.clone(
193  PATTauProducer = cms.InputTag('slimmedTaus'),
194  Prediscriminants = noPrediscriminants,
195  toMultiplex = cms.InputTag('patTauDiscriminationByIsolationMVArun2v1DBoldDMwLTraw2017v1'),
196  key = cms.InputTag('patTauDiscriminationByIsolationMVArun2v1DBoldDMwLTraw2017v1','category'),
197  loadMVAfromDB = cms.bool(True),
198  mvaOutput_normalization = cms.string("RecoTauTag_tauIdMVAIsoDBoldDMwLT2017v1_mvaOutput_normalization"), # normalization fo the training you want to use
199  mapping = cms.VPSet(
200  cms.PSet(
201  category = cms.uint32(0),
202  cut = cms.string("RecoTauTag_tauIdMVAIsoDBoldDMwLT2017v1_WPEff95"), # this is the name of the working point you want to use
203  variable = cms.string("pt"),
204  )
205  )
206 )
207 # VLoose WP
208 patTauDiscriminationByVLooseIsolationMVArun2v1DBoldDMwLT2017v1 = patTauDiscriminationByVVLooseIsolationMVArun2v1DBoldDMwLT2017v1.clone()
209 patTauDiscriminationByVLooseIsolationMVArun2v1DBoldDMwLT2017v1.mapping[0].cut = cms.string("RecoTauTag_tauIdMVAIsoDBoldDMwLT2017v1_WPEff90")
210 # Loose WP
211 patTauDiscriminationByLooseIsolationMVArun2v1DBoldDMwLT2017v1 = patTauDiscriminationByVVLooseIsolationMVArun2v1DBoldDMwLT2017v1.clone()
212 patTauDiscriminationByLooseIsolationMVArun2v1DBoldDMwLT2017v1.mapping[0].cut = cms.string("RecoTauTag_tauIdMVAIsoDBoldDMwLT2017v1_WPEff80")
213 # Medium WP
214 patTauDiscriminationByMediumIsolationMVArun2v1DBoldDMwLT2017v1 = patTauDiscriminationByVVLooseIsolationMVArun2v1DBoldDMwLT2017v1.clone()
215 patTauDiscriminationByMediumIsolationMVArun2v1DBoldDMwLT2017v1.mapping[0].cut = cms.string("RecoTauTag_tauIdMVAIsoDBoldDMwLT2017v1_WPEff70")
216 # Tight WP
217 patTauDiscriminationByTightIsolationMVArun2v1DBoldDMwLT2017v1 = patTauDiscriminationByVVLooseIsolationMVArun2v1DBoldDMwLT2017v1.clone()
218 patTauDiscriminationByTightIsolationMVArun2v1DBoldDMwLT2017v1.mapping[0].cut = cms.string("RecoTauTag_tauIdMVAIsoDBoldDMwLT2017v1_WPEff60")
219 # VTight WP
220 patTauDiscriminationByVTightIsolationMVArun2v1DBoldDMwLT2017v1 = patTauDiscriminationByVVLooseIsolationMVArun2v1DBoldDMwLT2017v1.clone()
221 patTauDiscriminationByVTightIsolationMVArun2v1DBoldDMwLT2017v1.mapping[0].cut = cms.string("RecoTauTag_tauIdMVAIsoDBoldDMwLT2017v1_WPEff50")
222 # VVTights WP
223 patTauDiscriminationByVVTightIsolationMVArun2v1DBoldDMwLT2017v1 = patTauDiscriminationByVVLooseIsolationMVArun2v1DBoldDMwLT2017v1.clone()
224 patTauDiscriminationByVVTightIsolationMVArun2v1DBoldDMwLT2017v1.mapping[0].cut = cms.string("RecoTauTag_tauIdMVAIsoDBoldDMwLT2017v1_WPEff40")
225 # MVAIso DBoldDM Seqeunce
226 patTauDiscriminationByIsolationMVArun2v1DBoldDMwLT2017v1Seq = cms.Sequence(
227  patTauDiscriminationByIsolationMVArun2v1DBoldDMwLTraw2017v1
228  + patTauDiscriminationByVVLooseIsolationMVArun2v1DBoldDMwLT2017v1
229  + patTauDiscriminationByVLooseIsolationMVArun2v1DBoldDMwLT2017v1
230  + patTauDiscriminationByLooseIsolationMVArun2v1DBoldDMwLT2017v1
231  + patTauDiscriminationByMediumIsolationMVArun2v1DBoldDMwLT2017v1
232  + patTauDiscriminationByTightIsolationMVArun2v1DBoldDMwLT2017v1
233  + patTauDiscriminationByVTightIsolationMVArun2v1DBoldDMwLT2017v1
234  + patTauDiscriminationByVVTightIsolationMVArun2v1DBoldDMwLT2017v1
235 )
236 ### MVAIso 2015 for Nano on top of MiniAODv2
237 ## DBoldDM
238 # Raw
239 patTauDiscriminationByIsolationMVArun2v1DBoldDMwLTraw2015 = patDiscriminationByIsolationMVArun2v1raw.clone(
240  PATTauProducer = cms.InputTag('slimmedTaus'),
241  Prediscriminants = noPrediscriminants,
242  loadMVAfromDB = cms.bool(True),
243  mvaName = cms.string("RecoTauTag_tauIdMVADBoldDMwLTv1"), # name of the training you want to use
244  mvaOpt = cms.string("DBoldDMwLT"), # option you want to use for your training (i.e., which variables are used to compute the BDT score)
245  verbosity = cms.int32(0)
246 )
247 # VLoose WP
248 patTauDiscriminationByVLooseIsolationMVArun2v1DBoldDMwLT2015 = patDiscriminationByIsolationMVArun2v1VLoose.clone(
249  PATTauProducer = cms.InputTag('slimmedTaus'),
250  Prediscriminants = noPrediscriminants,
251  toMultiplex = cms.InputTag('patTauDiscriminationByIsolationMVArun2v1DBoldDMwLTraw2015'),
252  key = cms.InputTag('patTauDiscriminationByIsolationMVArun2v1DBoldDMwLTraw2015','category'),
253  loadMVAfromDB = cms.bool(True),
254  mvaOutput_normalization = cms.string("RecoTauTag_tauIdMVADBoldDMwLTv1_mvaOutput_normalization"), # normalization fo the training you want to use
255  mapping = cms.VPSet(
256  cms.PSet(
257  category = cms.uint32(0),
258  cut = cms.string("RecoTauTag_tauIdMVADBoldDMwLTv1_WPEff90"), # this is the name of the working point you want to use
259  variable = cms.string("pt"),
260  )
261  )
262 )
263 # Loose WP
264 patTauDiscriminationByLooseIsolationMVArun2v1DBoldDMwLT2015 = patTauDiscriminationByVLooseIsolationMVArun2v1DBoldDMwLT2015.clone()
265 patTauDiscriminationByLooseIsolationMVArun2v1DBoldDMwLT2015.mapping[0].cut = cms.string("RecoTauTag_tauIdMVADBoldDMwLTv1_WPEff80")
266 # Medium WP
267 patTauDiscriminationByMediumIsolationMVArun2v1DBoldDMwLT2015 = patTauDiscriminationByVLooseIsolationMVArun2v1DBoldDMwLT2015.clone()
268 patTauDiscriminationByMediumIsolationMVArun2v1DBoldDMwLT2015.mapping[0].cut = cms.string("RecoTauTag_tauIdMVADBoldDMwLTv1_WPEff70")
269 # Tight WP
270 patTauDiscriminationByTightIsolationMVArun2v1DBoldDMwLT2015 = patTauDiscriminationByVLooseIsolationMVArun2v1DBoldDMwLT2015.clone()
271 patTauDiscriminationByTightIsolationMVArun2v1DBoldDMwLT2015.mapping[0].cut = cms.string("RecoTauTag_tauIdMVADBoldDMwLTv1_WPEff60")
272 # VTight WP
273 patTauDiscriminationByVTightIsolationMVArun2v1DBoldDMwLT2015 = patTauDiscriminationByVLooseIsolationMVArun2v1DBoldDMwLT2015.clone()
274 patTauDiscriminationByVTightIsolationMVArun2v1DBoldDMwLT2015.mapping[0].cut = cms.string("RecoTauTag_tauIdMVADBoldDMwLTv1_WPEff50")
275 # VVTights WP
276 patTauDiscriminationByVVTightIsolationMVArun2v1DBoldDMwLT2015 = patTauDiscriminationByVLooseIsolationMVArun2v1DBoldDMwLT2015.clone()
277 patTauDiscriminationByVVTightIsolationMVArun2v1DBoldDMwLT2015.mapping[0].cut = cms.string("RecoTauTag_tauIdMVADBoldDMwLTv1_WPEff40")
278 # MVAIso DBoldDM Seqeunce
279 patTauDiscriminationByIsolationMVArun2v1DBoldDMwLT2015Seq = cms.Sequence(
280  patTauDiscriminationByIsolationMVArun2v1DBoldDMwLTraw2015
281  + patTauDiscriminationByVLooseIsolationMVArun2v1DBoldDMwLT2015
282  + patTauDiscriminationByLooseIsolationMVArun2v1DBoldDMwLT2015
283  + patTauDiscriminationByMediumIsolationMVArun2v1DBoldDMwLT2015
284  + patTauDiscriminationByTightIsolationMVArun2v1DBoldDMwLT2015
285  + patTauDiscriminationByVTightIsolationMVArun2v1DBoldDMwLT2015
286  + patTauDiscriminationByVVTightIsolationMVArun2v1DBoldDMwLT2015
287 )
288 
289 
290 ### Define new anit-e discriminants (2018)
291 antiElectronDiscrMVA6_version = "MVA6v3_noeveto"
292 ## Raw
293 from RecoTauTag.RecoTau.PATTauDiscriminationAgainstElectronMVA6_cfi import patTauDiscriminationAgainstElectronMVA6
294 from RecoTauTag.RecoTau.TauDiscriminatorTools import noPrediscriminants
295 patTauDiscriminationByElectronRejectionMVA62018Raw = patTauDiscriminationAgainstElectronMVA6.clone(
296  Prediscriminants = noPrediscriminants, #already selected for MiniAOD
297  vetoEcalCracks = False, #keep tau candidates in EB-EE cracks
298  mvaName_NoEleMatch_wGwoGSF_BL = 'RecoTauTag_antiElectron'+antiElectronDiscrMVA6_version+'_gbr_NoEleMatch_wGwoGSF_BL',
299  mvaName_NoEleMatch_wGwoGSF_EC = 'RecoTauTag_antiElectron'+antiElectronDiscrMVA6_version+'_gbr_NoEleMatch_wGwoGSF_EC',
300  mvaName_NoEleMatch_woGwoGSF_BL = 'RecoTauTag_antiElectron'+antiElectronDiscrMVA6_version+'_gbr_NoEleMatch_woGwoGSF_BL',
301  mvaName_NoEleMatch_woGwoGSF_EC = 'RecoTauTag_antiElectron'+antiElectronDiscrMVA6_version+'_gbr_NoEleMatch_woGwoGSF_EC',
302  mvaName_wGwGSF_BL = 'RecoTauTag_antiElectron'+antiElectronDiscrMVA6_version+'_gbr_wGwGSF_BL',
303  mvaName_wGwGSF_EC = 'RecoTauTag_antiElectron'+antiElectronDiscrMVA6_version+'_gbr_wGwGSF_EC',
304  mvaName_woGwGSF_BL = 'RecoTauTag_antiElectron'+antiElectronDiscrMVA6_version+'_gbr_woGwGSF_BL',
305  mvaName_woGwGSF_EC = 'RecoTauTag_antiElectron'+antiElectronDiscrMVA6_version+'_gbr_woGwGSF_EC'
306 )
307 ## anti-e 2018 WPs
308 from RecoTauTag.RecoTau.PATTauDiscriminantCutMultiplexer_cfi import patTauDiscriminantCutMultiplexer
309 # VLoose
310 patTauDiscriminationByVLooseElectronRejectionMVA62018 = patTauDiscriminantCutMultiplexer.clone(
311  PATTauProducer = patTauDiscriminationByElectronRejectionMVA62018Raw.PATTauProducer,
312  Prediscriminants = patTauDiscriminationByElectronRejectionMVA62018Raw.Prediscriminants,
313  toMultiplex = cms.InputTag("patTauDiscriminationByElectronRejectionMVA62018Raw"),
314  key = cms.InputTag("patTauDiscriminationByElectronRejectionMVA62018Raw","category"),
315  mapping = cms.VPSet(
316  cms.PSet(
317  category = cms.uint32(0),
318  cut = cms.string('RecoTauTag_antiElectron'+antiElectronDiscrMVA6_version+'_gbr_NoEleMatch_woGwoGSF_BL_WPeff98'),
319  variable = cms.string('pt')
320  ),
321  cms.PSet(
322  category = cms.uint32(2),
323  cut = cms.string('RecoTauTag_antiElectron'+antiElectronDiscrMVA6_version+'_gbr_NoEleMatch_wGwoGSF_BL_WPeff98'),
324  variable = cms.string('pt')
325  ),
326  cms.PSet(
327  category = cms.uint32(5),
328  cut = cms.string('RecoTauTag_antiElectron'+antiElectronDiscrMVA6_version+'_gbr_woGwGSF_BL_WPeff98'),
329  variable = cms.string('pt')
330  ),
331  cms.PSet(
332  category = cms.uint32(7),
333  cut = cms.string('RecoTauTag_antiElectron'+antiElectronDiscrMVA6_version+'_gbr_wGwGSF_BL_WPeff98'),
334  variable = cms.string('pt')
335  ),
336  cms.PSet(
337  category = cms.uint32(8),
338  cut = cms.string('RecoTauTag_antiElectron'+antiElectronDiscrMVA6_version+'_gbr_NoEleMatch_woGwoGSF_EC_WPeff98'),
339  variable = cms.string('pt')
340  ),
341  cms.PSet(
342  category = cms.uint32(10),
343  cut = cms.string('RecoTauTag_antiElectron'+antiElectronDiscrMVA6_version+'_gbr_NoEleMatch_wGwoGSF_EC_WPeff98'),
344  variable = cms.string('pt')
345  ),
346  cms.PSet(
347  category = cms.uint32(13),
348  cut = cms.string('RecoTauTag_antiElectron'+antiElectronDiscrMVA6_version+'_gbr_woGwGSF_EC_WPeff98'),
349  variable = cms.string('pt')
350  ),
351  cms.PSet(
352  category = cms.uint32(15),
353  cut = cms.string('RecoTauTag_antiElectron'+antiElectronDiscrMVA6_version+'_gbr_wGwGSF_EC_WPeff98'),
354  variable = cms.string('pt')
355  )
356  )
357 )
358 # Loose
359 patTauDiscriminationByLooseElectronRejectionMVA62018 = patTauDiscriminationByVLooseElectronRejectionMVA62018.clone()
360 for m in patTauDiscriminationByLooseElectronRejectionMVA62018.mapping:
361  m.cut = m.cut.value().replace("WPeff98", "WPeff90")
362 # Medium
363 patTauDiscriminationByMediumElectronRejectionMVA62018 = patTauDiscriminationByVLooseElectronRejectionMVA62018.clone()
364 for m in patTauDiscriminationByMediumElectronRejectionMVA62018.mapping:
365  m.cut = m.cut.value().replace("WPeff98", "WPeff80")
366 # Tight
367 patTauDiscriminationByTightElectronRejectionMVA62018 = patTauDiscriminationByVLooseElectronRejectionMVA62018.clone()
368 for m in patTauDiscriminationByTightElectronRejectionMVA62018.mapping:
369  m.cut = m.cut.value().replace("WPeff98", "WPeff70")
370 # VTight
371 patTauDiscriminationByVTightElectronRejectionMVA62018 = patTauDiscriminationByVLooseElectronRejectionMVA62018.clone()
372 for m in patTauDiscriminationByVTightElectronRejectionMVA62018.mapping:
373  m.cut = m.cut.value().replace("WPeff98", "WPeff60")
374 ### Define v1 anit-e discriminants (2015)
375 antiElectronDiscrMVA6v1_version = "MVA6v1"
376 ## Raw
377 patTauDiscriminationByElectronRejectionMVA62015Raw = patTauDiscriminationAgainstElectronMVA6.clone(
378  Prediscriminants = noPrediscriminants, #already selected for MiniAOD
379  vetoEcalCracks = True, #don't keep tau candidates in EB-EE cracks for v1
380  mvaName_NoEleMatch_wGwoGSF_BL = 'RecoTauTag_antiElectron'+antiElectronDiscrMVA6v1_version+'_gbr_NoEleMatch_wGwoGSF_BL',
381  mvaName_NoEleMatch_wGwoGSF_EC = 'RecoTauTag_antiElectron'+antiElectronDiscrMVA6v1_version+'_gbr_NoEleMatch_wGwoGSF_EC',
382  mvaName_NoEleMatch_woGwoGSF_BL = 'RecoTauTag_antiElectron'+antiElectronDiscrMVA6v1_version+'_gbr_NoEleMatch_woGwoGSF_BL',
383  mvaName_NoEleMatch_woGwoGSF_EC = 'RecoTauTag_antiElectron'+antiElectronDiscrMVA6v1_version+'_gbr_NoEleMatch_woGwoGSF_EC',
384  mvaName_wGwGSF_BL = 'RecoTauTag_antiElectron'+antiElectronDiscrMVA6v1_version+'_gbr_wGwGSF_BL',
385  mvaName_wGwGSF_EC = 'RecoTauTag_antiElectron'+antiElectronDiscrMVA6v1_version+'_gbr_wGwGSF_EC',
386  mvaName_woGwGSF_BL = 'RecoTauTag_antiElectron'+antiElectronDiscrMVA6v1_version+'_gbr_woGwGSF_BL',
387  mvaName_woGwGSF_EC = 'RecoTauTag_antiElectron'+antiElectronDiscrMVA6v1_version+'_gbr_woGwGSF_EC'
388 )
389 ## anti-e v1 WPs
390 # VLoose
391 patTauDiscriminationByVLooseElectronRejectionMVA62015 = patTauDiscriminationByVLooseElectronRejectionMVA62018.clone(
392  PATTauProducer = patTauDiscriminationByElectronRejectionMVA62015Raw.PATTauProducer,
393  Prediscriminants = patTauDiscriminationByElectronRejectionMVA62015Raw.Prediscriminants,
394  toMultiplex = cms.InputTag("patTauDiscriminationByElectronRejectionMVA62015Raw"),
395  key = cms.InputTag("patTauDiscriminationByElectronRejectionMVA62015Raw","category")
396 )
397 for m in patTauDiscriminationByVLooseElectronRejectionMVA62015.mapping:
398  m.cut = m.cut.value().replace(antiElectronDiscrMVA6_version, antiElectronDiscrMVA6v1_version).replace("WPeff98", "WPEff99")
399 # Loose
400 patTauDiscriminationByLooseElectronRejectionMVA62015 = patTauDiscriminationByVLooseElectronRejectionMVA62015.clone()
401 for m in patTauDiscriminationByLooseElectronRejectionMVA62015.mapping:
402  m.cut = m.cut.value().replace("WPEff99", "WPEff96")
403 # Medium
404 patTauDiscriminationByMediumElectronRejectionMVA62015 = patTauDiscriminationByVLooseElectronRejectionMVA62015.clone()
405 for m in patTauDiscriminationByMediumElectronRejectionMVA62015.mapping:
406  m.cut = m.cut.value().replace("WPEff99", "WPEff91")
407 # Tight
408 patTauDiscriminationByTightElectronRejectionMVA62015 = patTauDiscriminationByVLooseElectronRejectionMVA62015.clone()
409 for m in patTauDiscriminationByTightElectronRejectionMVA62015.mapping:
410  m.cut = m.cut.value().replace("WPEff99", "WPEff85")
411 # VTight
412 patTauDiscriminationByVTightElectronRejectionMVA62015 = patTauDiscriminationByVLooseElectronRejectionMVA62015.clone()
413 for m in patTauDiscriminationByVTightElectronRejectionMVA62015.mapping:
414  m.cut = m.cut.value().replace("WPEff99", "WPEff79")
415 ### Put all anti-e tau-IDs into a sequence
416 _patTauDiscriminationByElectronRejection2018Seq = cms.Sequence(
417  patTauDiscriminationByElectronRejectionMVA62018Raw
418  +patTauDiscriminationByVLooseElectronRejectionMVA62018
419  +patTauDiscriminationByLooseElectronRejectionMVA62018
420  +patTauDiscriminationByMediumElectronRejectionMVA62018
421  +patTauDiscriminationByTightElectronRejectionMVA62018
422  +patTauDiscriminationByVTightElectronRejectionMVA62018
423 )
424 _patTauDiscriminationByElectronRejection2015Seq = cms.Sequence(
425  patTauDiscriminationByElectronRejectionMVA62015Raw
426  +patTauDiscriminationByVLooseElectronRejectionMVA62015
427  +patTauDiscriminationByLooseElectronRejectionMVA62015
428  +patTauDiscriminationByMediumElectronRejectionMVA62015
429  +patTauDiscriminationByTightElectronRejectionMVA62015
430  +patTauDiscriminationByVTightElectronRejectionMVA62015
431 )
432 patTauDiscriminationByElectronRejectionSeq = _patTauDiscriminationByElectronRejection2018Seq.copy()
433 run2_miniAOD_devel.toReplaceWith(patTauDiscriminationByElectronRejectionSeq,
434  _patTauDiscriminationByElectronRejection2015Seq)
435 
436 
437 ### put all new MVA tau-Id stuff to one Sequence
438 _patTauMVAIDsSeq2017v2 = cms.Sequence(
439  patTauDiscriminationByIsolationMVArun2v1DBoldDMwLTSeq
440  +patTauDiscriminationByIsolationMVArun2v1DBnewDMwLTSeq
441  +patTauDiscriminationByIsolationMVArun2v1DBoldDMdR0p3wLTSeq
442  +patTauDiscriminationByElectronRejectionSeq
443 )
444 patTauMVAIDsSeq = _patTauMVAIDsSeq2017v2.copy()
445 patTauMVAIDsSeq += patTauDiscriminationByIsolationMVArun2v1DBoldDMwLT2015Seq
446 
447 _patTauMVAIDsSeqWith2017v1 = _patTauMVAIDsSeq2017v2.copy()
448 _patTauMVAIDsSeqWith2017v1 += patTauDiscriminationByIsolationMVArun2v1DBoldDMwLT2017v1Seq
449 from Configuration.Eras.Modifier_run2_nanoAOD_94XMiniAODv1_cff import run2_nanoAOD_94XMiniAODv1
450 for era in [run2_nanoAOD_94XMiniAODv1,]:
451  era.toReplaceWith(patTauMVAIDsSeq,_patTauMVAIDsSeqWith2017v1)
452 
453 # embed new MVA tau-Ids into new tau collection
454 slimmedTausUpdated = cms.EDProducer("PATTauIDEmbedder",
455  src = cms.InputTag('slimmedTaus'),
456  tauIDSources = cms.PSet() # PSet defined below in era dependent way
457 )
458 _tauIDSources2017v2 = cms.PSet(
459  #oldDM
460  byIsolationMVArun2v1DBoldDMwLTraw2017v2 = cms.InputTag('patTauDiscriminationByIsolationMVArun2v1DBoldDMwLTraw'),
461  byVVLooseIsolationMVArun2v1DBoldDMwLT2017v2 = cms.InputTag('patTauDiscriminationByVVLooseIsolationMVArun2v1DBoldDMwLT'),
462  byVLooseIsolationMVArun2v1DBoldDMwLT2017v2 = cms.InputTag('patTauDiscriminationByVLooseIsolationMVArun2v1DBoldDMwLT'),
463  byLooseIsolationMVArun2v1DBoldDMwLT2017v2 = cms.InputTag('patTauDiscriminationByLooseIsolationMVArun2v1DBoldDMwLT'),
464  byMediumIsolationMVArun2v1DBoldDMwLT2017v2 = cms.InputTag('patTauDiscriminationByMediumIsolationMVArun2v1DBoldDMwLT'),
465  byTightIsolationMVArun2v1DBoldDMwLT2017v2 = cms.InputTag('patTauDiscriminationByTightIsolationMVArun2v1DBoldDMwLT'),
466  byVTightIsolationMVArun2v1DBoldDMwLT2017v2 = cms.InputTag('patTauDiscriminationByVTightIsolationMVArun2v1DBoldDMwLT'),
467  byVVTightIsolationMVArun2v1DBoldDMwLT2017v2 = cms.InputTag('patTauDiscriminationByVVTightIsolationMVArun2v1DBoldDMwLT'),
468  #newDM
469  byIsolationMVArun2v1DBnewDMwLTraw2017v2 = cms.InputTag('patTauDiscriminationByIsolationMVArun2v1DBnewDMwLTraw'),
470  byVVLooseIsolationMVArun2v1DBnewDMwLT2017v2 = cms.InputTag('patTauDiscriminationByVVLooseIsolationMVArun2v1DBnewDMwLT'),
471  byVLooseIsolationMVArun2v1DBnewDMwLT2017v2 = cms.InputTag('patTauDiscriminationByVLooseIsolationMVArun2v1DBnewDMwLT'),
472  byLooseIsolationMVArun2v1DBnewDMwLT2017v2 = cms.InputTag('patTauDiscriminationByLooseIsolationMVArun2v1DBnewDMwLT'),
473  byMediumIsolationMVArun2v1DBnewDMwLT2017v2 = cms.InputTag('patTauDiscriminationByMediumIsolationMVArun2v1DBnewDMwLT'),
474  byTightIsolationMVArun2v1DBnewDMwLT2017v2 = cms.InputTag('patTauDiscriminationByTightIsolationMVArun2v1DBnewDMwLT'),
475  byVTightIsolationMVArun2v1DBnewDMwLT2017v2 = cms.InputTag('patTauDiscriminationByVTightIsolationMVArun2v1DBnewDMwLT'),
476  byVVTightIsolationMVArun2v1DBnewDMwLT2017v2 = cms.InputTag('patTauDiscriminationByVVTightIsolationMVArun2v1DBnewDMwLT'),
477  #oldDMdR0p3
478  byIsolationMVArun2v1DBdR03oldDMwLTraw2017v2 = cms.InputTag('patTauDiscriminationByIsolationMVArun2v1DBoldDMdR0p3wLTraw'),
479  byVVLooseIsolationMVArun2v1DBdR03oldDMwLT2017v2 = cms.InputTag('patTauDiscriminationByVVLooseIsolationMVArun2v1DBoldDMdR0p3wLT'),
480  byVLooseIsolationMVArun2v1DBdR03oldDMwLT2017v2 = cms.InputTag('patTauDiscriminationByVLooseIsolationMVArun2v1DBoldDMdR0p3wLT'),
481  byLooseIsolationMVArun2v1DBdR03oldDMwLT2017v2 = cms.InputTag('patTauDiscriminationByLooseIsolationMVArun2v1DBoldDMdR0p3wLT'),
482  byMediumIsolationMVArun2v1DBdR03oldDMwLT2017v2 = cms.InputTag('patTauDiscriminationByMediumIsolationMVArun2v1DBoldDMdR0p3wLT'),
483  byTightIsolationMVArun2v1DBdR03oldDMwLT2017v2 = cms.InputTag('patTauDiscriminationByTightIsolationMVArun2v1DBoldDMdR0p3wLT'),
484  byVTightIsolationMVArun2v1DBdR03oldDMwLT2017v2 = cms.InputTag('patTauDiscriminationByVTightIsolationMVArun2v1DBoldDMdR0p3wLT'),
485  byVVTightIsolationMVArun2v1DBdR03oldDMwLT2017v2 = cms.InputTag('patTauDiscriminationByVVTightIsolationMVArun2v1DBoldDMdR0p3wLT'),
486 )
487 _tauIDSources2017v1 = cms.PSet(
488  byIsolationMVArun2v1DBoldDMwLTraw2017v1 = cms.InputTag('patTauDiscriminationByIsolationMVArun2v1DBoldDMwLTraw2017v1'),
489  byVVLooseIsolationMVArun2v1DBoldDMwLT2017v1 = cms.InputTag('patTauDiscriminationByVVLooseIsolationMVArun2v1DBoldDMwLT2017v1'),
490  byVLooseIsolationMVArun2v1DBoldDMwLT2017v1 = cms.InputTag('patTauDiscriminationByVLooseIsolationMVArun2v1DBoldDMwLT2017v1'),
491  byLooseIsolationMVArun2v1DBoldDMwLT2017v1 = cms.InputTag('patTauDiscriminationByLooseIsolationMVArun2v1DBoldDMwLT2017v1'),
492  byMediumIsolationMVArun2v1DBoldDMwLT2017v1 = cms.InputTag('patTauDiscriminationByMediumIsolationMVArun2v1DBoldDMwLT2017v1'),
493  byTightIsolationMVArun2v1DBoldDMwLT2017v1 = cms.InputTag('patTauDiscriminationByTightIsolationMVArun2v1DBoldDMwLT2017v1'),
494  byVTightIsolationMVArun2v1DBoldDMwLT2017v1 = cms.InputTag('patTauDiscriminationByVTightIsolationMVArun2v1DBoldDMwLT2017v1'),
495  byVVTightIsolationMVArun2v1DBoldDMwLT2017v1 = cms.InputTag('patTauDiscriminationByVVTightIsolationMVArun2v1DBoldDMwLT2017v1')
496 )
497 _tauIDSourcesWith2017v1 = cms.PSet(
498  _tauIDSources2017v2.clone(),
499  _tauIDSources2017v1
500 )
501 _tauIDSources2015 = cms.PSet(
502  byIsolationMVArun2v1DBoldDMwLTraw2015 = cms.InputTag('patTauDiscriminationByIsolationMVArun2v1DBoldDMwLTraw2015'),
503  byVLooseIsolationMVArun2v1DBoldDMwLT2015 = cms.InputTag('patTauDiscriminationByVLooseIsolationMVArun2v1DBoldDMwLT2015'),
504  byLooseIsolationMVArun2v1DBoldDMwLT2015 = cms.InputTag('patTauDiscriminationByLooseIsolationMVArun2v1DBoldDMwLT2015'),
505  byMediumIsolationMVArun2v1DBoldDMwLT2015 = cms.InputTag('patTauDiscriminationByMediumIsolationMVArun2v1DBoldDMwLT2015'),
506  byTightIsolationMVArun2v1DBoldDMwLT2015 = cms.InputTag('patTauDiscriminationByTightIsolationMVArun2v1DBoldDMwLT2015'),
507  byVTightIsolationMVArun2v1DBoldDMwLT2015 = cms.InputTag('patTauDiscriminationByVTightIsolationMVArun2v1DBoldDMwLT2015'),
508  byVVTightIsolationMVArun2v1DBoldDMwLT2015 = cms.InputTag('patTauDiscriminationByVVTightIsolationMVArun2v1DBoldDMwLT2015')
509 )
510 _tauIDSourcesWith2015 = cms.PSet(
511  _tauIDSources2017v2.clone(),
512  _tauIDSources2015
513 )
514 slimmedTausUpdated.tauIDSources = _tauIDSourcesWith2015
515 
516 for era in [run2_nanoAOD_94XMiniAODv1,]:
517  era.toModify(slimmedTausUpdated,
518  tauIDSources = _tauIDSourcesWith2017v1
519  )
520 
521 _antiETauIDSources2018 = cms.PSet(
522  againstElectronMVA6Raw2018 = cms.InputTag("patTauDiscriminationByElectronRejectionMVA62018Raw"),
523  againstElectronMVA6category2018 = cms.InputTag("patTauDiscriminationByElectronRejectionMVA62018Raw","category"),
524  againstElectronVLooseMVA62018 = cms.InputTag("patTauDiscriminationByVLooseElectronRejectionMVA62018"),
525  againstElectronLooseMVA62018 = cms.InputTag("patTauDiscriminationByLooseElectronRejectionMVA62018"),
526  againstElectronMediumMVA62018 = cms.InputTag("patTauDiscriminationByMediumElectronRejectionMVA62018"),
527  againstElectronTightMVA62018 = cms.InputTag("patTauDiscriminationByTightElectronRejectionMVA62018"),
528  againstElectronVTightMVA62018 = cms.InputTag("patTauDiscriminationByVTightElectronRejectionMVA62018")
529 )
530 _tauIDSourcesWithAntiE2018 = cms.PSet(
531  slimmedTausUpdated.tauIDSources.clone(),
532  _antiETauIDSources2018
533 )
534 _antiETauIDSources2015 = cms.PSet(
535  againstElectronMVA6Raw2015 = cms.InputTag("patTauDiscriminationByElectronRejectionMVA62015Raw"),
536  againstElectronMVA6category2015 = cms.InputTag("patTauDiscriminationByElectronRejectionMVA62015Raw","category"),
537  againstElectronVLooseMVA62015 = cms.InputTag("patTauDiscriminationByVLooseElectronRejectionMVA62015"),
538  againstElectronLooseMVA62015 = cms.InputTag("patTauDiscriminationByLooseElectronRejectionMVA62015"),
539  againstElectronMediumMVA62015 = cms.InputTag("patTauDiscriminationByMediumElectronRejectionMVA62015"),
540  againstElectronTightMVA62015 = cms.InputTag("patTauDiscriminationByTightElectronRejectionMVA62015"),
541  againstElectronVTightMVA62015 = cms.InputTag("patTauDiscriminationByVTightElectronRejectionMVA62015")
542 )
543 _tauIDSourcesWithAntiE2015 = cms.PSet(
544  slimmedTausUpdated.tauIDSources.clone(),
545  _antiETauIDSources2015
546 )
547 slimmedTausUpdated.tauIDSources = _tauIDSourcesWithAntiE2018
548 run2_miniAOD_devel.toModify(slimmedTausUpdated,
549  tauIDSources = _tauIDSourcesWithAntiE2015)
550 
551 ## anti-electron in dead-ECal regions
552 from RecoTauTag.RecoTau.patTauDiscriminationAgainstElectronDeadECAL_cfi import patTauDiscriminationAgainstElectronDeadECAL
553 patTauDiscriminationAgainstElectronDeadECALForNano = patTauDiscriminationAgainstElectronDeadECAL.clone(
554  PATTauProducer = 'slimmedTaus',
555  Prediscriminants = noPrediscriminants
556 )
557 _patTauMVAIDsSeqWithAntiEdeadECal = patTauMVAIDsSeq.copy()
558 _patTauMVAIDsSeqWithAntiEdeadECal += patTauDiscriminationAgainstElectronDeadECALForNano
559 _tauIDSourcesWithAntiEdeadECal = cms.PSet(
560  slimmedTausUpdated.tauIDSources.clone(),
561  againstElectronDeadECALForNano = cms.InputTag("patTauDiscriminationAgainstElectronDeadECALForNano")
562 )
563 (~run2_miniAOD_devel).toReplaceWith(patTauMVAIDsSeq,_patTauMVAIDsSeqWithAntiEdeadECal)
564 (~run2_miniAOD_devel).toModify(slimmedTausUpdated,
565  tauIDSources = _tauIDSourcesWithAntiEdeadECal)
566 
567 
568 patTauMVAIDsSeq += slimmedTausUpdated
569 
def replace(string, replacements)
Updated tau collection with MVA-based tau-Ids rerun ####### Used only in some eras.