test
CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Classes | Functions | Variables
cutBasedPhotonID_tools Namespace Reference

Classes

class  IsolationCutInputs
 
class  WorkingPoint_V1
 
class  WorkingPoint_V2
 

Functions

def configureVIDCutBasedPhoID_V1
 
def configureVIDCutBasedPhoID_V2
 
def configureVIDCutBasedPhoID_V3
 
def configureVIDCutBasedPhoID_V4
 
def configureVIDCutBasedPhoID_V5
 
def psetChHadIsoWithEALinScalingCut
 
def psetMinPtCut
 
def psetNeuHadIsoWithEAExpoScalingCut
 
def psetNeuHadIsoWithEAExpoScalingEBCut
 
def psetNeuHadIsoWithEALinScalingCut
 
def psetNeuHadIsoWithEAQuadScalingCut
 
def psetPhoFull5x5SigmaIEtaIEtaCut
 
def psetPhoFull5x5SigmaIEtaIEtaValueMapCut
 
def psetPhoIsoWithEALinScalingCut
 
def psetPhoSCEtaMultiRangeCut
 
def psetPhoSingleTowerHadOverEmCut
 

Variables

float ebCutOff = 1.479
 

Function Documentation

def cutBasedPhotonID_tools.configureVIDCutBasedPhoID_V1 (   wpEB,
  wpEE,
  isoInputs 
)
This function configures the full cms.PSet for a VID ID and returns it.
The inputs: two objects of the type WorkingPoint_V1, one
containing the cuts for the Barrel (EB) and the other one for the Endcap (EE).
The third argument contains data for isolation calculation.

Definition at line 317 of file cutBasedPhotonID_tools.py.

References psetChHadIsoWithEALinScalingCut(), psetMinPtCut(), psetNeuHadIsoWithEALinScalingCut(), psetPhoFull5x5SigmaIEtaIEtaValueMapCut(), psetPhoIsoWithEALinScalingCut(), psetPhoSCEtaMultiRangeCut(), and psetPhoSingleTowerHadOverEmCut().

318 def configureVIDCutBasedPhoID_V1( wpEB, wpEE, isoInputs ):
319  """
320  This function configures the full cms.PSet for a VID ID and returns it.
321  The inputs: two objects of the type WorkingPoint_V1, one
322  containing the cuts for the Barrel (EB) and the other one for the Endcap (EE).
323  The third argument contains data for isolation calculation.
324  """
325  # print "VID: Configuring cut set %s" % wpEB.idName
326  parameterSet = cms.PSet(
327  #
328  idName = cms.string( wpEB.idName ), # same name stored in the _EB and _EE objects
329  cutFlow = cms.VPSet(
330  psetMinPtCut(), # pt cut
331  psetPhoSCEtaMultiRangeCut(), # eta cut
332  psetPhoSingleTowerHadOverEmCut(wpEB,wpEE), # H/E cut
333  psetPhoFull5x5SigmaIEtaIEtaValueMapCut(wpEB,wpEE), # full 5x5 sigmaIEtaIEta cut
334  psetChHadIsoWithEALinScalingCut(wpEB,wpEE,isoInputs), # charged hadron isolation cut
335  psetNeuHadIsoWithEALinScalingCut(wpEB,wpEE,isoInputs), # neutral hadron isolation cut
336  psetPhoIsoWithEALinScalingCut(wpEB,wpEE,isoInputs) # photon isolation cut
337  )
338  )
339  #
340  return parameterSet
def cutBasedPhotonID_tools.configureVIDCutBasedPhoID_V2 (   wpEB,
  wpEE,
  isoInputs 
)
This function configures the full cms.PSet for a VID ID and returns it.
The inputs: first object is of the type WorkingPoint_V2, second object
is of the type WorkingPoint_V1, containing the cuts for the Barrel (EB) 
and the other one for the Endcap (EE).
The third argument contains data for isolation calculation.

The V2 with respect to V1 has one change: the neutral hadron isolation
cut has an exponential pt scaling for the barrel.

Definition at line 341 of file cutBasedPhotonID_tools.py.

References psetChHadIsoWithEALinScalingCut(), psetMinPtCut(), psetNeuHadIsoWithEAExpoScalingEBCut(), psetPhoFull5x5SigmaIEtaIEtaValueMapCut(), psetPhoIsoWithEALinScalingCut(), psetPhoSCEtaMultiRangeCut(), and psetPhoSingleTowerHadOverEmCut().

342 def configureVIDCutBasedPhoID_V2( wpEB, wpEE, isoInputs ):
343  """
344  This function configures the full cms.PSet for a VID ID and returns it.
345  The inputs: first object is of the type WorkingPoint_V2, second object
346  is of the type WorkingPoint_V1, containing the cuts for the Barrel (EB)
347  and the other one for the Endcap (EE).
348  The third argument contains data for isolation calculation.
349 
350  The V2 with respect to V1 has one change: the neutral hadron isolation
351  cut has an exponential pt scaling for the barrel.
352  """
353  # print "VID: Configuring cut set %s" % wpEB.idName
354  parameterSet = cms.PSet(
355  #
356  idName = cms.string( wpEB.idName ), # same name stored in the _EB and _EE objects
357  cutFlow = cms.VPSet(
358  psetMinPtCut(), # pt cut
359  psetPhoSCEtaMultiRangeCut(), # eta cut
360  psetPhoSingleTowerHadOverEmCut(wpEB,wpEE), # H/E cut
361  psetPhoFull5x5SigmaIEtaIEtaValueMapCut(wpEB,wpEE), # full 5x5 sigmaIEtaIEta cut
362  psetChHadIsoWithEALinScalingCut(wpEB,wpEE,isoInputs), # charged hadron isolation cut
363  psetNeuHadIsoWithEAExpoScalingEBCut(wpEB,wpEE,isoInputs), # neutral hadron isolation cut
364  psetPhoIsoWithEALinScalingCut(wpEB,wpEE,isoInputs) # photon isolation cut
365  )
366  )
367  #
368  return parameterSet
def cutBasedPhotonID_tools.configureVIDCutBasedPhoID_V3 (   wpEB,
  wpEE,
  isoInputs 
)
This function configures the full cms.PSet for a VID ID and returns it.
The inputs: first object is of the type WorkingPoint_V2, second object
is of the type WorkingPoint_V1, containing the cuts for the Barrel (EB) 
and the other one for the Endcap (EE).
The third argument contains data for isolation calculation.

The V3 with respect to V2 has one change: the full5x5 sigmaIEtaIEta
is taken from the native reco::Photon method and not from a ValueMap
produced upstream by some producer module.

Definition at line 369 of file cutBasedPhotonID_tools.py.

References psetChHadIsoWithEALinScalingCut(), psetMinPtCut(), psetNeuHadIsoWithEAExpoScalingEBCut(), psetPhoFull5x5SigmaIEtaIEtaCut(), psetPhoIsoWithEALinScalingCut(), psetPhoSCEtaMultiRangeCut(), and psetPhoSingleTowerHadOverEmCut().

370 def configureVIDCutBasedPhoID_V3( wpEB, wpEE, isoInputs ):
371  """
372  This function configures the full cms.PSet for a VID ID and returns it.
373  The inputs: first object is of the type WorkingPoint_V2, second object
374  is of the type WorkingPoint_V1, containing the cuts for the Barrel (EB)
375  and the other one for the Endcap (EE).
376  The third argument contains data for isolation calculation.
377 
378  The V3 with respect to V2 has one change: the full5x5 sigmaIEtaIEta
379  is taken from the native reco::Photon method and not from a ValueMap
380  produced upstream by some producer module.
381  """
382  # print "VID: Configuring cut set %s" % wpEB.idName
383  parameterSet = cms.PSet(
384  #
385  idName = cms.string( wpEB.idName ), # same name stored in the _EB and _EE objects
386  cutFlow = cms.VPSet(
387  psetMinPtCut(), # pt cut
388  psetPhoSCEtaMultiRangeCut(), # eta cut
389  psetPhoSingleTowerHadOverEmCut(wpEB,wpEE), # H/E cut
390  psetPhoFull5x5SigmaIEtaIEtaCut(wpEB,wpEE), # full 5x5 sigmaIEtaIEta cut
391  psetChHadIsoWithEALinScalingCut(wpEB,wpEE,isoInputs), # charged hadron isolation cut
392  psetNeuHadIsoWithEAExpoScalingEBCut(wpEB,wpEE,isoInputs), # neutral hadron isolation cut
393  psetPhoIsoWithEALinScalingCut(wpEB,wpEE,isoInputs) # photon isolation cut
394  )
395  )
396  #
397  return parameterSet
def cutBasedPhotonID_tools.configureVIDCutBasedPhoID_V4 (   wpEB,
  wpEE,
  isoInputs 
)
This function configures the full cms.PSet for a VID ID and returns it.
The inputs: first object is of the type WorkingPoint_V2, second object
is of the type WorkingPoint_V2 as well, first containing the cuts for the 
Barrel (EB) and the other one for the Endcap (EE).
The third argument contains data for isolation calculation.

The V4 with respect to V3 has one change: both barrel and endcap
use the exponential scaling for the neutral hadron isolation cut
(in V3 it was only done for the barrel)

Definition at line 398 of file cutBasedPhotonID_tools.py.

References psetChHadIsoWithEALinScalingCut(), psetMinPtCut(), psetNeuHadIsoWithEAExpoScalingCut(), psetPhoFull5x5SigmaIEtaIEtaCut(), psetPhoIsoWithEALinScalingCut(), psetPhoSCEtaMultiRangeCut(), and psetPhoSingleTowerHadOverEmCut().

399 def configureVIDCutBasedPhoID_V4( wpEB, wpEE, isoInputs ):
400  """
401  This function configures the full cms.PSet for a VID ID and returns it.
402  The inputs: first object is of the type WorkingPoint_V2, second object
403  is of the type WorkingPoint_V2 as well, first containing the cuts for the
404  Barrel (EB) and the other one for the Endcap (EE).
405  The third argument contains data for isolation calculation.
406 
407  The V4 with respect to V3 has one change: both barrel and endcap
408  use the exponential scaling for the neutral hadron isolation cut
409  (in V3 it was only done for the barrel)
410  """
411  # print "VID: Configuring cut set %s" % wpEB.idName
412  parameterSet = cms.PSet(
413  #
414  idName = cms.string( wpEB.idName ), # same name stored in the _EB and _EE objects
415  cutFlow = cms.VPSet(
416  psetMinPtCut(), # pt cut
417  psetPhoSCEtaMultiRangeCut(), # eta cut
418  psetPhoSingleTowerHadOverEmCut(wpEB,wpEE), # H/E cut
419  psetPhoFull5x5SigmaIEtaIEtaCut(wpEB,wpEE), # full 5x5 sigmaIEtaIEta cut
420  psetChHadIsoWithEALinScalingCut(wpEB,wpEE,isoInputs), # charged hadron isolation cut
421  psetNeuHadIsoWithEAExpoScalingCut(wpEB,wpEE,isoInputs), # neutral hadron isolation cut
422  psetPhoIsoWithEALinScalingCut(wpEB,wpEE,isoInputs) # photon isolation cut
423  )
424  )
425  #
426  return parameterSet
def cutBasedPhotonID_tools.configureVIDCutBasedPhoID_V5 (   wpEB,
  wpEE,
  isoInputs 
)
This function configures the full cms.PSet for a VID ID and returns it.
The inputs: first object is of the type WorkingPoint_V2, second object
is of the type WorkingPoint_V2 as well, first containing the cuts for the 
Barrel (EB) and the other one for the Endcap (EE).
The third argument contains data for isolation calculation.

The V5 with respect to V4 has one change: the neutral hadron isolation
for both barrel and endcap now uses quadratic polynomial scaling.

Definition at line 427 of file cutBasedPhotonID_tools.py.

References psetChHadIsoWithEALinScalingCut(), psetMinPtCut(), psetNeuHadIsoWithEAQuadScalingCut(), psetPhoFull5x5SigmaIEtaIEtaCut(), psetPhoIsoWithEALinScalingCut(), psetPhoSCEtaMultiRangeCut(), and psetPhoSingleTowerHadOverEmCut().

428 def configureVIDCutBasedPhoID_V5( wpEB, wpEE, isoInputs ):
429  """
430  This function configures the full cms.PSet for a VID ID and returns it.
431  The inputs: first object is of the type WorkingPoint_V2, second object
432  is of the type WorkingPoint_V2 as well, first containing the cuts for the
433  Barrel (EB) and the other one for the Endcap (EE).
434  The third argument contains data for isolation calculation.
435 
436  The V5 with respect to V4 has one change: the neutral hadron isolation
437  for both barrel and endcap now uses quadratic polynomial scaling.
438  """
439  # print "VID: Configuring cut set %s" % wpEB.idName
440  parameterSet = cms.PSet(
441  #
442  idName = cms.string( wpEB.idName ), # same name stored in the _EB and _EE objects
443  cutFlow = cms.VPSet(
444  psetMinPtCut(), # pt cut
445  psetPhoSCEtaMultiRangeCut(), # eta cut
446  psetPhoSingleTowerHadOverEmCut(wpEB,wpEE), # H/E cut
447  psetPhoFull5x5SigmaIEtaIEtaCut(wpEB,wpEE), # full 5x5 sigmaIEtaIEta cut
448  psetChHadIsoWithEALinScalingCut(wpEB,wpEE,isoInputs), # charged hadron isolation cut
449  psetNeuHadIsoWithEAQuadScalingCut(wpEB,wpEE,isoInputs), # neutral hadron isolation cut
450  psetPhoIsoWithEALinScalingCut(wpEB,wpEE,isoInputs) # photon isolation cut
451  )
452  )
453  #
454  return parameterSet
455 
def cutBasedPhotonID_tools.psetChHadIsoWithEALinScalingCut (   wpEB,
  wpEE,
  isoInputs 
)
Arguments: two containers of working point cut values of the type WorkingPoint_*
The third argument contains data for isolation calculation.

Definition at line 168 of file cutBasedPhotonID_tools.py.

Referenced by configureVIDCutBasedPhoID_V1(), configureVIDCutBasedPhoID_V2(), configureVIDCutBasedPhoID_V3(), configureVIDCutBasedPhoID_V4(), and configureVIDCutBasedPhoID_V5().

169 def psetChHadIsoWithEALinScalingCut(wpEB, wpEE, isoInputs):
170  """
171  Arguments: two containers of working point cut values of the type WorkingPoint_*
172  The third argument contains data for isolation calculation.
173  """
174  return cms.PSet(
175  cutName = cms.string('PhoAnyPFIsoWithEACut'),
176  # Both barrel and endcap: cut = c1 + pt*c2
177  C1_EB = cms.double( wpEB.absPFChaHadIsoWithEACut_C1 ),
178  C2_EB = cms.double( wpEB.absPFChaHadIsoWithEACut_C2 ),
179  C1_EE = cms.double( wpEE.absPFChaHadIsoWithEACut_C1 ),
180  C2_EE = cms.double( wpEE.absPFChaHadIsoWithEACut_C2 ),
181  anyPFIsoMap = cms.InputTag( isoInputs.chHadIsolationMapName ),
182  barrelCutOff = cms.double(ebCutOff),
183  useRelativeIso = cms.bool(False),
184  needsAdditionalProducts = cms.bool(True),
185  isIgnored = cms.bool(False),
186  rho = cms.InputTag("fixedGridRhoFastjetAll"),
187  effAreasConfigFile = cms.FileInPath( isoInputs.chHadIsolationEffAreas )
188  )
189 
190 # Configure the cut on the neutral hadron isolation that uses
# the linear pt scaling for barrel and endcap
def cutBasedPhotonID_tools.psetMinPtCut ( )

Definition at line 96 of file cutBasedPhotonID_tools.py.

Referenced by configureVIDCutBasedPhoID_V1(), configureVIDCutBasedPhoID_V2(), configureVIDCutBasedPhoID_V3(), configureVIDCutBasedPhoID_V4(), and configureVIDCutBasedPhoID_V5().

96 
97 def psetMinPtCut():
98  return cms.PSet(
99  cutName = cms.string("MinPtCut"),
100  minPt = cms.double(5.0),
101  needsAdditionalProducts = cms.bool(False),
102  isIgnored = cms.bool(False)
103  )
104 
# Take all particles in the eta ranges 0-ebCutOff and ebCutOff-2.5
def cutBasedPhotonID_tools.psetNeuHadIsoWithEAExpoScalingCut (   wpEB,
  wpEE,
  isoInputs 
)
Arguments: two containers of working point cut values of the type WorkingPoint_*
The third argument contains data for isolation calculation.

Definition at line 239 of file cutBasedPhotonID_tools.py.

Referenced by configureVIDCutBasedPhoID_V4().

240 def psetNeuHadIsoWithEAExpoScalingCut(wpEB, wpEE, isoInputs):
241  """
242  Arguments: two containers of working point cut values of the type WorkingPoint_*
243  The third argument contains data for isolation calculation.
244  """
245  return cms.PSet(
246  cutName = cms.string('PhoAnyPFIsoWithEAAndExpoScalingCut'), # Neutral hadrons isolation block
247  # Barrel: cut = c1 + expo(pt*c2+c3)
248  C1_EB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C1 ),
249  C2_EB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C2 ),
250  C3_EB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C3 ),
251  # Endcap: cut = cut = c1 + expo(pt*c2+c3)
252  C1_EE = cms.double( wpEE.absPFNeuHadIsoWithEACut_C1 ),
253  C2_EE = cms.double( wpEE.absPFNeuHadIsoWithEACut_C2 ),
254  C3_EE = cms.double( wpEE.absPFNeuHadIsoWithEACut_C3 ),
255  anyPFIsoMap = cms.InputTag( isoInputs.neuHadIsolationMapName ),
256  barrelCutOff = cms.double(ebCutOff),
257  useRelativeIso = cms.bool(False),
258  needsAdditionalProducts = cms.bool(True),
259  isIgnored = cms.bool(False),
260  rho = cms.InputTag("fixedGridRhoFastjetAll"),
261  effAreasConfigFile = cms.FileInPath( isoInputs.neuHadIsolationEffAreas )
262  )
263 
264 # Configure the cut on the neutral hadron isolation that uses
# the quadratic polynomial pt scaling for both barrel and endcap
def cutBasedPhotonID_tools.psetNeuHadIsoWithEAExpoScalingEBCut (   wpEB,
  wpEE,
  isoInputs 
)
Arguments: two containers of working point cut values of the type WorkingPoint_*
The third argument contains data for isolation calculation.

Definition at line 214 of file cutBasedPhotonID_tools.py.

Referenced by configureVIDCutBasedPhoID_V2(), and configureVIDCutBasedPhoID_V3().

215 def psetNeuHadIsoWithEAExpoScalingEBCut(wpEB, wpEE, isoInputs):
216  """
217  Arguments: two containers of working point cut values of the type WorkingPoint_*
218  The third argument contains data for isolation calculation.
219  """
220  return cms.PSet(
221  cutName = cms.string('PhoAnyPFIsoWithEAAndExpoScalingEBCut'), # Neutral hadrons isolation block
222  # Barrel: cut = c1 + expo(pt*c2+c3)
223  C1_EB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C1 ),
224  C2_EB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C2 ),
225  C3_EB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C3 ),
226  # Endcap: cut = c1 + pt*c2
227  C1_EE = cms.double( wpEE.absPFNeuHadIsoWithEACut_C1 ),
228  C2_EE = cms.double( wpEE.absPFNeuHadIsoWithEACut_C2 ),
229  anyPFIsoMap = cms.InputTag( isoInputs.neuHadIsolationMapName ),
230  barrelCutOff = cms.double(ebCutOff),
231  useRelativeIso = cms.bool(False),
232  needsAdditionalProducts = cms.bool(True),
233  isIgnored = cms.bool(False),
234  rho = cms.InputTag("fixedGridRhoFastjetAll"),
235  effAreasConfigFile = cms.FileInPath( isoInputs.neuHadIsolationEffAreas )
236  )
237 
238 # Configure the cut on the neutral hadron isolation that uses
# the exponential pt scaling for both barrel and endcap
def cutBasedPhotonID_tools.psetNeuHadIsoWithEALinScalingCut (   wpEB,
  wpEE,
  isoInputs 
)
Arguments: two containers of working point cut values of the type WorkingPoint_*
The third argument contains data for isolation calculation.

Definition at line 191 of file cutBasedPhotonID_tools.py.

Referenced by configureVIDCutBasedPhoID_V1().

192 def psetNeuHadIsoWithEALinScalingCut( wpEB, wpEE, isoInputs):
193  """
194  Arguments: two containers of working point cut values of the type WorkingPoint_*
195  The third argument contains data for isolation calculation.
196  """
197  return cms.PSet(
198  cutName = cms.string('PhoAnyPFIsoWithEACut'), # Neutral hadrons isolation block
199  # Both barrel and endcap: cut = c1 + pt*c2
200  C1_EB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C1 ),
201  C2_EB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C2 ),
202  C1_EE = cms.double( wpEE.absPFNeuHadIsoWithEACut_C1 ),
203  C2_EE = cms.double( wpEE.absPFNeuHadIsoWithEACut_C2 ),
204  anyPFIsoMap = cms.InputTag( isoInputs.neuHadIsolationMapName ),
205  barrelCutOff = cms.double(ebCutOff),
206  useRelativeIso = cms.bool(False),
207  needsAdditionalProducts = cms.bool(True),
208  isIgnored = cms.bool(False),
209  rho = cms.InputTag("fixedGridRhoFastjetAll"),
210  effAreasConfigFile = cms.FileInPath( isoInputs.neuHadIsolationEffAreas )
211  )
212 
213 # Configure the cut on the neutral hadron isolation that uses
# the exponential pt scaling for barrel and the linear pt scaling for endcap
def cutBasedPhotonID_tools.psetNeuHadIsoWithEAQuadScalingCut (   wpEB,
  wpEE,
  isoInputs 
)
Arguments: two containers of working point cut values of the type WorkingPoint_*
The third argument contains data for isolation calculation.

Definition at line 265 of file cutBasedPhotonID_tools.py.

Referenced by configureVIDCutBasedPhoID_V5().

266 def psetNeuHadIsoWithEAQuadScalingCut(wpEB, wpEE, isoInputs):
267  """
268  Arguments: two containers of working point cut values of the type WorkingPoint_*
269  The third argument contains data for isolation calculation.
270  """
271  return cms.PSet(
272  cutName = cms.string('PhoAnyPFIsoWithEAAndQuadScalingCut'), # Neutral hadrons isolation block
273  # Barrel: cut = c1 + pt*c2 + pt*pt*c3
274  C1_EB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C1 ),
275  C2_EB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C2 ),
276  C3_EB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C3 ),
277  # Endcap: cut = cut = c1 + pt*c2 + pt*pt*c3
278  C1_EE = cms.double( wpEE.absPFNeuHadIsoWithEACut_C1 ),
279  C2_EE = cms.double( wpEE.absPFNeuHadIsoWithEACut_C2 ),
280  C3_EE = cms.double( wpEE.absPFNeuHadIsoWithEACut_C3 ),
281  anyPFIsoMap = cms.InputTag( isoInputs.neuHadIsolationMapName ),
282  barrelCutOff = cms.double(ebCutOff),
283  useRelativeIso = cms.bool(False),
284  needsAdditionalProducts = cms.bool(True),
285  isIgnored = cms.bool(False),
286  rho = cms.InputTag("fixedGridRhoFastjetAll"),
287  effAreasConfigFile = cms.FileInPath( isoInputs.neuHadIsolationEffAreas )
288  )
289 
290 # Configure the cut on the photon isolation that uses
# the linear pt scaling for barrel and endcap
def cutBasedPhotonID_tools.psetPhoFull5x5SigmaIEtaIEtaCut (   wpEB,
  wpEE 
)
Arguments: two containers of working point cut values of the type WorkingPoint_*

Definition at line 152 of file cutBasedPhotonID_tools.py.

Referenced by configureVIDCutBasedPhoID_V3(), configureVIDCutBasedPhoID_V4(), and configureVIDCutBasedPhoID_V5().

153 def psetPhoFull5x5SigmaIEtaIEtaCut(wpEB, wpEE):
154  """
155  Arguments: two containers of working point cut values of the type WorkingPoint_*
156  """
157  return cms.PSet(
158  cutName = cms.string('PhoFull5x5SigmaIEtaIEtaCut'),
159  cutValueEB = cms.double( wpEB.full5x5_sigmaIEtaIEtaCut ),
160  cutValueEE = cms.double( wpEE.full5x5_sigmaIEtaIEtaCut ),
161  full5x5SigmaIEtaIEtaMap = cms.InputTag('photonIDValueMapProducer:phoFull5x5SigmaIEtaIEta'),
162  barrelCutOff = cms.double(ebCutOff),
163  needsAdditionalProducts = cms.bool(False),
164  isIgnored = cms.bool(False)
165  )
166 
167 # Configure the cut on the charged hadron isolation that uses
# the linear pt scaling for barrel and endcap
def cutBasedPhotonID_tools.psetPhoFull5x5SigmaIEtaIEtaValueMapCut (   wpEB,
  wpEE 
)
Arguments: two containers of working point cut values of the type WorkingPoint_*

Definition at line 136 of file cutBasedPhotonID_tools.py.

Referenced by configureVIDCutBasedPhoID_V1(), and configureVIDCutBasedPhoID_V2().

138  """
139  Arguments: two containers of working point cut values of the type WorkingPoint_*
140  """
141  return cms.PSet(
142  cutName = cms.string('PhoFull5x5SigmaIEtaIEtaValueMapCut'),
143  cutValueEB = cms.double( wpEB.full5x5_sigmaIEtaIEtaCut ),
144  cutValueEE = cms.double( wpEE.full5x5_sigmaIEtaIEtaCut ),
145  full5x5SigmaIEtaIEtaMap = cms.InputTag('photonIDValueMapProducer:phoFull5x5SigmaIEtaIEta'),
146  barrelCutOff = cms.double(ebCutOff),
147  needsAdditionalProducts = cms.bool(True),
148  isIgnored = cms.bool(False)
149  )
150 
151 # Configure the cut on full5x5 sigmaIEtaIEta that uses the native Photon field
# with this variable (works for releases past 7.2.0).
def cutBasedPhotonID_tools.psetPhoIsoWithEALinScalingCut (   wpEB,
  wpEE,
  isoInputs 
)
Arguments: two containers of working point cut values of the type WorkingPoint_*
The third argument contains data for isolation calculation.

Definition at line 291 of file cutBasedPhotonID_tools.py.

Referenced by configureVIDCutBasedPhoID_V1(), configureVIDCutBasedPhoID_V2(), configureVIDCutBasedPhoID_V3(), configureVIDCutBasedPhoID_V4(), and configureVIDCutBasedPhoID_V5().

292 def psetPhoIsoWithEALinScalingCut(wpEB, wpEE, isoInputs):
293  """
294  Arguments: two containers of working point cut values of the type WorkingPoint_*
295  The third argument contains data for isolation calculation.
296  """
297  return cms.PSet(
298  cutName = cms.string('PhoAnyPFIsoWithEACut'), # Photons isolation block
299  # Both barrel and endcap: cut = c1 + pt*c2
300  C1_EB = cms.double( wpEB.absPFPhoIsoWithEACut_C1 ),
301  C2_EB = cms.double( wpEB.absPFPhoIsoWithEACut_C2 ),
302  C1_EE = cms.double( wpEE.absPFPhoIsoWithEACut_C1 ),
303  C2_EE = cms.double( wpEE.absPFPhoIsoWithEACut_C2 ),
304  anyPFIsoMap = cms.InputTag( isoInputs.phoIsolationMapName ),
305  barrelCutOff = cms.double(ebCutOff),
306  useRelativeIso = cms.bool(False),
307  needsAdditionalProducts = cms.bool(True),
308  isIgnored = cms.bool(False),
309  rho = cms.InputTag("fixedGridRhoFastjetAll"),
310  effAreasConfigFile = cms.FileInPath( isoInputs.phoIsolationEffAreas )
311  )
312 
313 # ==============================================================
314 # Define the complete cut sets
315 # ==============================================================
316 
def cutBasedPhotonID_tools.psetPhoSCEtaMultiRangeCut ( )

Definition at line 105 of file cutBasedPhotonID_tools.py.

Referenced by configureVIDCutBasedPhoID_V1(), configureVIDCutBasedPhoID_V2(), configureVIDCutBasedPhoID_V3(), configureVIDCutBasedPhoID_V4(), and configureVIDCutBasedPhoID_V5().

107  return cms.PSet(
108  cutName = cms.string("PhoSCEtaMultiRangeCut"),
109  useAbsEta = cms.bool(True),
110  allowedEtaRanges = cms.VPSet(
111  cms.PSet( minEta = cms.double(0.0),
112  maxEta = cms.double(ebCutOff) ),
113  cms.PSet( minEta = cms.double(ebCutOff),
114  maxEta = cms.double(2.5) )
115  ),
116  needsAdditionalProducts = cms.bool(False),
117  isIgnored = cms.bool(False)
118  )
119 
# Configure the cut on the single tower H/E
def cutBasedPhotonID_tools.psetPhoSingleTowerHadOverEmCut (   wpEB,
  wpEE 
)
Arguments: two containers of working point cut values of the type WorkingPoint_*

Definition at line 120 of file cutBasedPhotonID_tools.py.

Referenced by configureVIDCutBasedPhoID_V1(), configureVIDCutBasedPhoID_V2(), configureVIDCutBasedPhoID_V3(), configureVIDCutBasedPhoID_V4(), and configureVIDCutBasedPhoID_V5().

121 def psetPhoSingleTowerHadOverEmCut( wpEB, wpEE):
122  """
123  Arguments: two containers of working point cut values of the type WorkingPoint_*
124  """
125  return cms.PSet(
126  cutName = cms.string('PhoSingleTowerHadOverEmCut'),
127  hadronicOverEMCutValueEB = cms.double( wpEB.hOverECut ),
128  hadronicOverEMCutValueEE = cms.double( wpEE.hOverECut ),
129  barrelCutOff = cms.double(ebCutOff),
130  needsAdditionalProducts = cms.bool(False),
131  isIgnored = cms.bool(False)
132  )
133 
134 # Configure the cut on full5x5 sigmaIEtaIEta that uses a ValueMap,
135 # relying on an upstream producer that creates it. This was necessary
# for photons up to 7.2.0.

Variable Documentation

float cutBasedPhotonID_tools.ebCutOff = 1.479

Definition at line 5 of file cutBasedPhotonID_tools.py.