2 import FWCore.ParameterSet.Config
as cms
13 This is a container class to hold numerical cut values for either
14 the barrel or endcap set of cuts
19 full5x5_sigmaIEtaIEtaCut,
21 absPFChaHadIsoWithEACut_C1,
22 absPFChaHadIsoWithEACut_C2,
23 absPFNeuHadIsoWithEACut_C1,
24 absPFNeuHadIsoWithEACut_C2,
25 absPFPhoIsoWithEACut_C1,
26 absPFPhoIsoWithEACut_C2
40 This is a container class to hold numerical cut values for either
41 the barrel or endcap set of cuts
42 This version of the container is different from the previous one
43 by the fact that it contains three constants instead of two for
44 the neutral hadron isolation cut, for exponantial parameterization
49 full5x5_sigmaIEtaIEtaCut,
52 absPFChaHadIsoWithEACut_C1,
53 absPFChaHadIsoWithEACut_C2,
54 absPFNeuHadIsoWithEACut_C1,
55 absPFNeuHadIsoWithEACut_C2,
56 absPFNeuHadIsoWithEACut_C3,
57 absPFPhoIsoWithEACut_C1,
58 absPFPhoIsoWithEACut_C2
73 A container class that holds the names of the isolation maps in the event record
74 and the names of the files with the effective area constants for pile-up corrections
77 chHadIsolationMapName,
78 chHadIsolationEffAreas,
79 neuHadIsolationMapName,
80 neuHadIsolationEffAreas,
98 cutName = cms.string(
"MinPtCut"),
99 minPt = cms.double(5.0),
100 needsAdditionalProducts = cms.bool(
False),
101 isIgnored = cms.bool(
False)
107 cutName = cms.string(
"PhoSCEtaMultiRangeCut"),
108 useAbsEta = cms.bool(
True),
109 allowedEtaRanges = cms.VPSet(
110 cms.PSet( minEta = cms.double(0.0),
111 maxEta = cms.double(ebCutOff) ),
112 cms.PSet( minEta = cms.double(ebCutOff),
113 maxEta = cms.double(2.5) )
115 needsAdditionalProducts = cms.bool(
False),
116 isIgnored = cms.bool(
False)
122 Arguments: two containers of working point cut values of the type WorkingPoint_*
125 cutName = cms.string(
'PhoSingleTowerHadOverEmCut'),
126 hadronicOverEMCutValueEB = cms.double( wpEB.hOverECut ),
127 hadronicOverEMCutValueEE = cms.double( wpEE.hOverECut ),
128 barrelCutOff = cms.double(ebCutOff),
129 needsAdditionalProducts = cms.bool(
False),
130 isIgnored = cms.bool(
False)
138 Arguments: two containers of working point cut values of the type WorkingPoint_*
141 cutName = cms.string(
'PhoFull5x5SigmaIEtaIEtaValueMapCut'),
142 cutValueEB = cms.double( wpEB.full5x5_sigmaIEtaIEtaCut ),
143 cutValueEE = cms.double( wpEE.full5x5_sigmaIEtaIEtaCut ),
144 full5x5SigmaIEtaIEtaMap = cms.InputTag(
'photonIDValueMapProducer:phoFull5x5SigmaIEtaIEta'),
145 barrelCutOff = cms.double(ebCutOff),
146 needsAdditionalProducts = cms.bool(
True),
147 isIgnored = cms.bool(
False)
154 Arguments: two containers of working point cut values of the type WorkingPoint_*
157 cutName = cms.string(
'PhoFull5x5SigmaIEtaIEtaCut'),
158 cutValueEB = cms.double( wpEB.full5x5_sigmaIEtaIEtaCut ),
159 cutValueEE = cms.double( wpEE.full5x5_sigmaIEtaIEtaCut ),
160 barrelCutOff = cms.double(ebCutOff),
161 needsAdditionalProducts = cms.bool(
False),
162 isIgnored = cms.bool(
False)
169 Arguments: two containers of working point cut values of the type WorkingPoint_*
170 The third argument contains data for isolation calculation.
171 The cut is (for lessThan==True), otherwise replace "<" with ">="
172 X < constTerm + linearPtTerm*pt + quadPtTerm* pt*pt + rho*EA
175 cutName = cms.string(
'PhoGenericRhoPtScaledCut'),
176 cutVariable = cms.string(
"chargedHadronIso"),
177 lessThan = cms.bool(
True),
179 constTermEB = cms.double( wpEB.absPFChaHadIsoWithEACut_C1 ),
180 constTermEE = cms.double( wpEE.absPFChaHadIsoWithEACut_C1 ),
181 linearPtTermEB = cms.double( wpEB.absPFChaHadIsoWithEACut_C2 ),
182 linearPtTermEE = cms.double( wpEE.absPFChaHadIsoWithEACut_C2 ),
183 quadPtTermEB = cms.double( 0. ),
184 quadPtTermEE = cms.double( 0. ),
185 needsAdditionalProducts = cms.bool(
True),
186 isIgnored = cms.bool(
False),
187 rho = cms.InputTag(
"fixedGridRhoFastjetAll"),
188 effAreasConfigFile = cms.FileInPath( isoInputs.chHadIsolationEffAreas )
195 Arguments: two containers of working point cut values of the type WorkingPoint_*
196 The third argument contains data for isolation calculation.
199 cutName = cms.string(
'PhoGenericRhoPtScaledCut'),
200 cutVariable = cms.string(
"neutralHadronIso"),
201 lessThan = cms.bool(
True),
203 constTermEB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C1 ),
204 constTermEE = cms.double( wpEE.absPFNeuHadIsoWithEACut_C1 ),
205 linearPtTermEB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C2 ),
206 linearPtTermEE = cms.double( wpEE.absPFNeuHadIsoWithEACut_C2 ),
207 quadPtTermEB = cms.double( 0. ),
208 quadPtTermEE = cms.double( 0. ),
209 needsAdditionalProducts = cms.bool(
True),
210 isIgnored = cms.bool(
False),
211 rho = cms.InputTag(
"fixedGridRhoFastjetAll"),
212 effAreasConfigFile = cms.FileInPath( isoInputs.neuHadIsolationEffAreas )
219 Arguments: two containers of working point cut values of the type WorkingPoint_*
220 The third argument contains data for isolation calculation.
223 cutName = cms.string(
'PhoAnyPFIsoWithEAAndExpoScalingEBCut'),
225 C1_EB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C1 ),
226 C2_EB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C2 ),
227 C3_EB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C3 ),
229 C1_EE = cms.double( wpEE.absPFNeuHadIsoWithEACut_C1 ),
230 C2_EE = cms.double( wpEE.absPFNeuHadIsoWithEACut_C2 ),
231 anyPFIsoMap = cms.InputTag( isoInputs.neuHadIsolationMapName ),
232 barrelCutOff = cms.double(ebCutOff),
233 useRelativeIso = cms.bool(
False),
234 needsAdditionalProducts = cms.bool(
True),
235 isIgnored = cms.bool(
False),
236 rho = cms.InputTag(
"fixedGridRhoFastjetAll"),
237 effAreasConfigFile = cms.FileInPath( isoInputs.neuHadIsolationEffAreas )
244 Arguments: two containers of working point cut values of the type WorkingPoint_*
245 The third argument contains data for isolation calculation.
248 cutName = cms.string(
'PhoAnyPFIsoWithEAAndExpoScalingCut'),
250 C1_EB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C1 ),
251 C2_EB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C2 ),
252 C3_EB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C3 ),
254 C1_EE = cms.double( wpEE.absPFNeuHadIsoWithEACut_C1 ),
255 C2_EE = cms.double( wpEE.absPFNeuHadIsoWithEACut_C2 ),
256 C3_EE = cms.double( wpEE.absPFNeuHadIsoWithEACut_C3 ),
257 anyPFIsoMap = cms.InputTag( isoInputs.neuHadIsolationMapName ),
258 barrelCutOff = cms.double(ebCutOff),
259 useRelativeIso = cms.bool(
False),
260 needsAdditionalProducts = cms.bool(
True),
261 isIgnored = cms.bool(
False),
262 rho = cms.InputTag(
"fixedGridRhoFastjetAll"),
263 effAreasConfigFile = cms.FileInPath( isoInputs.neuHadIsolationEffAreas )
270 Arguments: two containers of working point cut values of the type WorkingPoint_*
271 The third argument contains data for isolation calculation.
274 cutName = cms.string(
'PhoGenericRhoPtScaledCut'),
275 cutVariable = cms.string(
"neutralHadronIso"),
276 lessThan = cms.bool(
True),
278 constTermEB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C1 ),
279 constTermEE = cms.double( wpEE.absPFNeuHadIsoWithEACut_C1 ),
280 linearPtTermEB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C2 ),
281 linearPtTermEE = cms.double( wpEE.absPFNeuHadIsoWithEACut_C2 ),
282 quadPtTermEB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C3 ),
283 quadPtTermEE = cms.double( wpEE.absPFNeuHadIsoWithEACut_C3 ),
284 needsAdditionalProducts = cms.bool(
True),
285 isIgnored = cms.bool(
False),
286 rho = cms.InputTag(
"fixedGridRhoFastjetAll"),
287 effAreasConfigFile = cms.FileInPath( isoInputs.neuHadIsolationEffAreas )
294 Arguments: two containers of working point cut values of the type WorkingPoint_*
295 The third argument contains data for isolation calculation.
298 cutName = cms.string(
'PhoGenericRhoPtScaledCut'),
299 cutVariable = cms.string(
"photonIso"),
300 lessThan = cms.bool(
True),
302 constTermEB = cms.double( wpEB.absPFPhoIsoWithEACut_C1 ),
303 constTermEE = cms.double( wpEE.absPFPhoIsoWithEACut_C1 ),
304 linearPtTermEB = cms.double( wpEB.absPFPhoIsoWithEACut_C2 ),
305 linearPtTermEE = cms.double( wpEE.absPFPhoIsoWithEACut_C2 ),
306 quadPtTermEB = cms.double( 0. ),
307 quadPtTermEE = cms.double( 0. ),
308 needsAdditionalProducts = cms.bool(
True),
309 isIgnored = cms.bool(
False),
310 rho = cms.InputTag(
"fixedGridRhoFastjetAll"),
311 effAreasConfigFile = cms.FileInPath( isoInputs.phoIsolationEffAreas )
323 This function configures the full cms.PSet for a VID ID and returns it.
324 The inputs: two objects of the type WorkingPoint_V1, one
325 containing the cuts for the Barrel (EB) and the other one for the Endcap (EE).
326 The third argument contains data for isolation calculation.
329 parameterSet = cms.PSet(
331 idName = cms.string( wpEB.idName ),
347 This function configures the full cms.PSet for a VID ID and returns it.
348 The inputs: first object is of the type WorkingPoint_V2, second object
349 is of the type WorkingPoint_V1, containing the cuts for the Barrel (EB)
350 and the other one for the Endcap (EE).
351 The third argument contains data for isolation calculation.
353 The V2 with respect to V1 has one change: the neutral hadron isolation
354 cut has an exponential pt scaling for the barrel.
357 parameterSet = cms.PSet(
359 idName = cms.string( wpEB.idName ),
375 This function configures the full cms.PSet for a VID ID and returns it.
376 The inputs: first object is of the type WorkingPoint_V2, second object
377 is of the type WorkingPoint_V1, containing the cuts for the Barrel (EB)
378 and the other one for the Endcap (EE).
379 The third argument contains data for isolation calculation.
381 The V3 with respect to V2 has one change: the full5x5 sigmaIEtaIEta
382 is taken from the native reco::Photon method and not from a ValueMap
383 produced upstream by some producer module.
386 parameterSet = cms.PSet(
388 idName = cms.string( wpEB.idName ),
404 This function configures the full cms.PSet for a VID ID and returns it.
405 The inputs: first object is of the type WorkingPoint_V2, second object
406 is of the type WorkingPoint_V2 as well, first containing the cuts for the
407 Barrel (EB) and the other one for the Endcap (EE).
408 The third argument contains data for isolation calculation.
410 The V4 with respect to V3 has one change: both barrel and endcap
411 use the exponential scaling for the neutral hadron isolation cut
412 (in V3 it was only done for the barrel)
415 parameterSet = cms.PSet(
417 idName = cms.string( wpEB.idName ),
433 This function configures the full cms.PSet for a VID ID and returns it.
434 The inputs: first object is of the type WorkingPoint_V2, second object
435 is of the type WorkingPoint_V2 as well, first containing the cuts for the
436 Barrel (EB) and the other one for the Endcap (EE).
437 The third argument contains data for isolation calculation.
439 The V5 with respect to V4 has one change: the neutral hadron isolation
440 for both barrel and endcap now uses quadratic polynomial scaling.
443 parameterSet = cms.PSet(
445 idName = cms.string( wpEB.idName ),