CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups 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 psetPhoHcalOverEcalBcCut
 
def psetPhoIsoWithEALinScalingCut
 
def psetPhoSCEtaMultiRangeCut
 

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 321 of file cutBasedPhotonID_tools.py.

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

322 def configureVIDCutBasedPhoID_V1( wpEB, wpEE, isoInputs ):
323  """
324  This function configures the full cms.PSet for a VID ID and returns it.
325  The inputs: two objects of the type WorkingPoint_V1, one
326  containing the cuts for the Barrel (EB) and the other one for the Endcap (EE).
327  The third argument contains data for isolation calculation.
328  """
329  # print "VID: Configuring cut set %s" % wpEB.idName
330  parameterSet = cms.PSet(
331  #
332  idName = cms.string( wpEB.idName ), # same name stored in the _EB and _EE objects
333  cutFlow = cms.VPSet(
334  psetMinPtCut(), # pt cut
335  psetPhoSCEtaMultiRangeCut(), # eta cut
336  psetPhoHcalOverEcalBcCut(wpEB,wpEE), # H/E cut
337  psetPhoFull5x5SigmaIEtaIEtaValueMapCut(wpEB,wpEE), # full 5x5 sigmaIEtaIEta cut
338  psetChHadIsoWithEALinScalingCut(wpEB,wpEE,isoInputs), # charged hadron isolation cut
339  psetNeuHadIsoWithEALinScalingCut(wpEB,wpEE,isoInputs), # neutral hadron isolation cut
340  psetPhoIsoWithEALinScalingCut(wpEB,wpEE,isoInputs) # photon isolation cut
341  )
342  )
343  #
344  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 345 of file cutBasedPhotonID_tools.py.

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

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

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

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

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

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

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

432 def configureVIDCutBasedPhoID_V5( wpEB, wpEE, isoInputs ):
433  """
434  This function configures the full cms.PSet for a VID ID and returns it.
435  The inputs: first object is of the type WorkingPoint_V2, second object
436  is of the type WorkingPoint_V2 as well, first containing the cuts for the
437  Barrel (EB) and the other one for the Endcap (EE).
438  The third argument contains data for isolation calculation.
439 
440  The V5 with respect to V4 has one change: the neutral hadron isolation
441  for both barrel and endcap now uses quadratic polynomial scaling.
442  """
443  # print "VID: Configuring cut set %s" % wpEB.idName
444  parameterSet = cms.PSet(
445  #
446  idName = cms.string( wpEB.idName ), # same name stored in the _EB and _EE objects
447  cutFlow = cms.VPSet(
448  psetMinPtCut(), # pt cut
449  psetPhoSCEtaMultiRangeCut(), # eta cut
450  psetPhoHcalOverEcalBcCut(wpEB,wpEE), # H/E cut
451  psetPhoFull5x5SigmaIEtaIEtaCut(wpEB,wpEE), # full 5x5 sigmaIEtaIEta cut
452  psetChHadIsoWithEALinScalingCut(wpEB,wpEE,isoInputs), # charged hadron isolation cut
453  psetNeuHadIsoWithEAQuadScalingCut(wpEB,wpEE,isoInputs), # neutral hadron isolation cut
454  psetPhoIsoWithEALinScalingCut(wpEB,wpEE,isoInputs) # photon isolation cut
455  )
456  )
457  #
458  return parameterSet
459 
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.
The cut is (for lessThan==True), otherwise replace "<" with ">="
      X < constTerm + linearPtTerm*pt + quadPtTerm* pt*pt + rho*EA

Definition at line 167 of file cutBasedPhotonID_tools.py.

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

168 def psetChHadIsoWithEALinScalingCut(wpEB, wpEE, isoInputs):
169  """
170  Arguments: two containers of working point cut values of the type WorkingPoint_*
171  The third argument contains data for isolation calculation.
172  The cut is (for lessThan==True), otherwise replace "<" with ">="
173  X < constTerm + linearPtTerm*pt + quadPtTerm* pt*pt + rho*EA
174  """
175  return cms.PSet(
176  cutName = cms.string('PhoGenericRhoPtScaledCut'),
177  cutVariable = cms.string("chargedHadronIso"),
178  lessThan = cms.bool(True),
179  # cut
180  constTermEB = cms.double( wpEB.absPFChaHadIsoWithEACut_C1 ),
181  constTermEE = cms.double( wpEE.absPFChaHadIsoWithEACut_C1 ),
182  linearPtTermEB = cms.double( wpEB.absPFChaHadIsoWithEACut_C2 ),
183  linearPtTermEE = cms.double( wpEE.absPFChaHadIsoWithEACut_C2 ),
184  quadPtTermEB = cms.double( 0. ),
185  quadPtTermEE = cms.double( 0. ),
186  needsAdditionalProducts = cms.bool(True),
187  isIgnored = cms.bool(False),
188  rho = cms.InputTag("fixedGridRhoFastjetAll"),
189  effAreasConfigFile = cms.FileInPath( isoInputs.chHadIsolationEffAreas )
190  )
191 
192 # 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 242 of file cutBasedPhotonID_tools.py.

Referenced by configureVIDCutBasedPhoID_V4().

243 def psetNeuHadIsoWithEAExpoScalingCut(wpEB, wpEE, isoInputs):
244  """
245  Arguments: two containers of working point cut values of the type WorkingPoint_*
246  The third argument contains data for isolation calculation.
247  """
248  return cms.PSet(
249  cutName = cms.string('PhoAnyPFIsoWithEAAndExpoScalingCut'), # Neutral hadrons isolation block
250  # Barrel: cut = c1 + expo(pt*c2+c3)
251  C1_EB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C1 ),
252  C2_EB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C2 ),
253  C3_EB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C3 ),
254  # Endcap: cut = cut = c1 + expo(pt*c2+c3)
255  C1_EE = cms.double( wpEE.absPFNeuHadIsoWithEACut_C1 ),
256  C2_EE = cms.double( wpEE.absPFNeuHadIsoWithEACut_C2 ),
257  C3_EE = cms.double( wpEE.absPFNeuHadIsoWithEACut_C3 ),
258  anyPFIsoMap = cms.InputTag( isoInputs.neuHadIsolationMapName ),
259  barrelCutOff = cms.double(ebCutOff),
260  useRelativeIso = cms.bool(False),
261  needsAdditionalProducts = cms.bool(True),
262  isIgnored = cms.bool(False),
263  rho = cms.InputTag("fixedGridRhoFastjetAll"),
264  effAreasConfigFile = cms.FileInPath( isoInputs.neuHadIsolationEffAreas )
265  )
266 
267 # 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 217 of file cutBasedPhotonID_tools.py.

Referenced by configureVIDCutBasedPhoID_V2(), and configureVIDCutBasedPhoID_V3().

218 def psetNeuHadIsoWithEAExpoScalingEBCut(wpEB, wpEE, isoInputs):
219  """
220  Arguments: two containers of working point cut values of the type WorkingPoint_*
221  The third argument contains data for isolation calculation.
222  """
223  return cms.PSet(
224  cutName = cms.string('PhoAnyPFIsoWithEAAndExpoScalingEBCut'), # Neutral hadrons isolation block
225  # Barrel: cut = c1 + expo(pt*c2+c3)
226  C1_EB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C1 ),
227  C2_EB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C2 ),
228  C3_EB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C3 ),
229  # Endcap: cut = c1 + pt*c2
230  C1_EE = cms.double( wpEE.absPFNeuHadIsoWithEACut_C1 ),
231  C2_EE = cms.double( wpEE.absPFNeuHadIsoWithEACut_C2 ),
232  anyPFIsoMap = cms.InputTag( isoInputs.neuHadIsolationMapName ),
233  barrelCutOff = cms.double(ebCutOff),
234  useRelativeIso = cms.bool(False),
235  needsAdditionalProducts = cms.bool(True),
236  isIgnored = cms.bool(False),
237  rho = cms.InputTag("fixedGridRhoFastjetAll"),
238  effAreasConfigFile = cms.FileInPath( isoInputs.neuHadIsolationEffAreas )
239  )
240 
241 # 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 193 of file cutBasedPhotonID_tools.py.

Referenced by configureVIDCutBasedPhoID_V1().

194 def psetNeuHadIsoWithEALinScalingCut( wpEB, wpEE, isoInputs):
195  """
196  Arguments: two containers of working point cut values of the type WorkingPoint_*
197  The third argument contains data for isolation calculation.
198  """
199  return cms.PSet(
200  cutName = cms.string('PhoGenericRhoPtScaledCut'),
201  cutVariable = cms.string("neutralHadronIso"),
202  lessThan = cms.bool(True),
203  # cut
204  constTermEB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C1 ),
205  constTermEE = cms.double( wpEE.absPFNeuHadIsoWithEACut_C1 ),
206  linearPtTermEB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C2 ),
207  linearPtTermEE = cms.double( wpEE.absPFNeuHadIsoWithEACut_C2 ),
208  quadPtTermEB = cms.double( 0. ),
209  quadPtTermEE = cms.double( 0. ),
210  needsAdditionalProducts = cms.bool(True),
211  isIgnored = cms.bool(False),
212  rho = cms.InputTag("fixedGridRhoFastjetAll"),
213  effAreasConfigFile = cms.FileInPath( isoInputs.neuHadIsolationEffAreas )
214  )
215 
216 # 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 268 of file cutBasedPhotonID_tools.py.

Referenced by configureVIDCutBasedPhoID_V5().

269 def psetNeuHadIsoWithEAQuadScalingCut(wpEB, wpEE, isoInputs):
270  """
271  Arguments: two containers of working point cut values of the type WorkingPoint_*
272  The third argument contains data for isolation calculation.
273  """
274  return cms.PSet(
275  cutName = cms.string('PhoGenericRhoPtScaledCut'),
276  cutVariable = cms.string("neutralHadronIso"),
277  lessThan = cms.bool(True),
278  # cut
279  constTermEB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C1 ),
280  constTermEE = cms.double( wpEE.absPFNeuHadIsoWithEACut_C1 ),
281  linearPtTermEB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C2 ),
282  linearPtTermEE = cms.double( wpEE.absPFNeuHadIsoWithEACut_C2 ),
283  quadPtTermEB = cms.double( wpEB.absPFNeuHadIsoWithEACut_C3 ),
284  quadPtTermEE = cms.double( wpEE.absPFNeuHadIsoWithEACut_C3 ),
285  needsAdditionalProducts = cms.bool(True),
286  isIgnored = cms.bool(False),
287  rho = cms.InputTag("fixedGridRhoFastjetAll"),
288  effAreasConfigFile = cms.FileInPath( isoInputs.neuHadIsolationEffAreas )
289  )
290 
291 # 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  barrelCutOff = cms.double(ebCutOff),
162  needsAdditionalProducts = cms.bool(False),
163  isIgnored = cms.bool(False)
164  )
165 
166 # 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.psetPhoHcalOverEcalBcCut (   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 psetPhoHcalOverEcalBcCut( 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('PhotonHcalOverEcalBcCut'),
127  hcalOverEcalCutValueEB = cms.double( wpEB.hOverECut ),
128  hcalOverEcalCutValueEE = 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.
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 292 of file cutBasedPhotonID_tools.py.

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

293 def psetPhoIsoWithEALinScalingCut(wpEB, wpEE, isoInputs):
294  """
295  Arguments: two containers of working point cut values of the type WorkingPoint_*
296  The third argument contains data for isolation calculation.
297  """
298  return cms.PSet(
299  cutName = cms.string('PhoGenericRhoPtScaledCut'),
300  cutVariable = cms.string("photonIso"),
301  lessThan = cms.bool(True),
302  # cut
303  constTermEB = cms.double( wpEB.absPFPhoIsoWithEACut_C1 ),
304  constTermEE = cms.double( wpEE.absPFPhoIsoWithEACut_C1 ),
305  linearPtTermEB = cms.double( wpEB.absPFPhoIsoWithEACut_C2 ),
306  linearPtTermEE = cms.double( wpEE.absPFPhoIsoWithEACut_C2 ),
307  quadPtTermEB = cms.double( 0. ),
308  quadPtTermEE = cms.double( 0. ),
309  needsAdditionalProducts = cms.bool(True),
310  isIgnored = cms.bool(False),
311  rho = cms.InputTag("fixedGridRhoFastjetAll"),
312  effAreasConfigFile = cms.FileInPath( isoInputs.phoIsolationEffAreas )
313  )
314 
315 
316 
317 # ==============================================================
318 # Define the complete cut sets
319 # ==============================================================
320 
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 H/E

Variable Documentation

float cutBasedPhotonID_tools.ebCutOff = 1.479

Definition at line 5 of file cutBasedPhotonID_tools.py.