CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes | Static Private Attributes
jetTools.UpdateJetCollection Class Reference
Inheritance diagram for jetTools.UpdateJetCollection:

Public Member Functions

def __call__ (self, process, labelName=None, postfix=None, btagPrefix=None, jetSource=None, pfCandidates=None, explicitJTA=None, pvSource=None, svSource=None, elSource=None, muSource=None, runIVF=None, tightBTagNTkHits=None, loadStdRecoBTag=None, svClustering=None, fatJets=None, groomedFatJets=None, algo=None, rParam=None, printWarning=None, jetCorrections=None, btagDiscriminators=None, btagInfos=None)
 
def __init__ (self)
 
def getDefaultParameters (self)
 
def toolCode (self, process)
 

Private Attributes

 _comment
 add comments More...
 
 _parameters
 initialization of the base class More...
 

Static Private Attributes

 _defaultParameters
 
 _label
 

Detailed Description

Tool to update a jet collection in your PAT Tuple (primarily intended for MiniAOD for which the default input argument values have been set).

Definition at line 1474 of file jetTools.py.

Constructor & Destructor Documentation

def jetTools.UpdateJetCollection.__init__ (   self)
Initialize elements of the class. Note that the tool needs to be derived from ConfigToolBase to be usable in the configEditor.

Definition at line 1481 of file jetTools.py.

References heavyIonTools.ConfigureHeavyIons._defaultParameters, coreTools.RunOnData._defaultParameters, heavyIonTools.ProductionDefaults._defaultParameters, cmsswVersionTools.PickRelValInputFiles._defaultParameters, coreTools.RemoveMCMatching._defaultParameters, heavyIonTools.SelectionDefaults._defaultParameters, heavyIonTools.DisbaleMonteCarloDeps._defaultParameters, jetTools.AddJetCollection._defaultParameters, jetTools.SwitchJetCollection._defaultParameters, jetTools.UpdateJetCollection._defaultParameters, root::helper::RootFunctionAdapter< F, args >.addParameter(), root::helper::RootFunctionHelper< F, args, Tag >.addParameter(), ParameterMgr.addParameter(), fit::RootMinuit< Function >.addParameter(), DropBoxMetadata::Parameters.addParameter(), PythonParameterSet.addParameter(), l1t::TriggerSystem.addParameter(), LutXml.addParameter(), ConfigToolBase.ConfigToolBase.addParameter(), and edm::ParameterSet.addParameter().

1481  def __init__(self):
1482  """
1483  Initialize elements of the class. Note that the tool needs to be derived from ConfigToolBase to be usable in the configEditor.
1484  """
1485  ## initialization of the base class
1486  ConfigToolBase.__init__(self)
1487  ## add all parameters that should be known to the class
1488  self.addParameter(self._defaultParameters,'labelName', '', "Label name of the new patJet collection.", str)
1489  self.addParameter(self._defaultParameters,'postfix','', "Postfix from usePF2PAT.", str)
1490  self.addParameter(self._defaultParameters,'btagPrefix','', "Prefix to be added to b-tag discriminator and TagInfo names", str)
1491  self.addParameter(self._defaultParameters,'jetSource','', "Label of the input collection from which the new patJet collection should be created", cms.InputTag)
1492  self.addParameter(self._defaultParameters,'pfCandidates',cms.InputTag('packedPFCandidates'), "Label of the input collection for candidatecandidatese used in b-tagging", cms.InputTag)
1493  self.addParameter(self._defaultParameters,'explicitJTA', False, "Use explicit jet-track association")
1494  self.addParameter(self._defaultParameters,'pvSource',cms.InputTag('offlineSlimmedPrimaryVertices'), "Label of the input collection for primary vertices used in b-tagging", cms.InputTag)
1495  self.addParameter(self._defaultParameters,'svSource',cms.InputTag('slimmedSecondaryVertices'), "Label of the input collection for IVF vertices used in b-tagging", cms.InputTag)
1496  self.addParameter(self._defaultParameters,'elSource',cms.InputTag('slimmedElectrons'), "Label of the input collection for electrons used in b-tagging", cms.InputTag)
1497  self.addParameter(self._defaultParameters,'muSource',cms.InputTag('slimmedMuons'), "Label of the input collection for muons used in b-tagging", cms.InputTag)
1498  self.addParameter(self._defaultParameters,'runIVF', False, "Re-run IVF secondary vertex reconstruction")
1499  self.addParameter(self._defaultParameters,'tightBTagNTkHits', False, "Enable legacy tight b-tag track selection")
1500  self.addParameter(self._defaultParameters,'loadStdRecoBTag', False, "Load the standard reconstruction b-tagging modules")
1501  self.addParameter(self._defaultParameters,'svClustering', False, "Secondary vertices ghost-associated to jets using jet clustering (mostly intended for subjets)")
1502  self.addParameter(self._defaultParameters,'fatJets', cms.InputTag(''), "Fat jet collection used for secondary vertex clustering", cms.InputTag)
1503  self.addParameter(self._defaultParameters,'groomedFatJets', cms.InputTag(''), "Groomed fat jet collection used for secondary vertex clustering", cms.InputTag)
1504  self.addParameter(self._defaultParameters,'algo', 'AK', "Jet algorithm of the input collection from which the new patJet collection should be created")
1505  self.addParameter(self._defaultParameters,'rParam', 0.4, "Jet size (distance parameter R used in jet clustering)")
1506  self.addParameter(self._defaultParameters,'printWarning', True, "To be use as False in production to reduce log size")
1507  self.addParameter(self._defaultParameters,'jetCorrections',None, "Add all relevant information about jet energy corrections that you want to be added to your new patJet \
1508  collection. The format has to be given in a python tuple of type: (\'AK4Calo\',[\'L2Relative\', \'L3Absolute\'], patMet). Here the first argument corresponds to the payload \
1509  in the CMS Conditions database for the given jet collection; the second argument corresponds to the jet energy correction levels that you want to be embedded into your \
1510  new patJet collection. This should be given as a list of strings. Available values are L1Offset, L1FastJet, L1JPTOffset, L2Relative, L3Absolute, L5Falvour, L7Parton; the \
1511  third argument indicates whether MET(Type1/2) corrections should be applied corresponding to the new patJetCollection. If so a new patMet collection will be added to your PAT \
1512  Tuple in addition to the raw patMet. This new patMet collection will have the MET(Type1/2) corrections applied. The argument can have the following types: \'type-1\' for \
1513  type-1 corrected MET; \'type-2\' for type-1 plus type-2 corrected MET; \'\' or \'none\' if no further MET corrections should be applied to your MET. The arguments \'type-1\' \
1514  and \'type-2\' are not case sensitive.", tuple, acceptNoneValue=True)
1515  self.addParameter(self._defaultParameters,'btagDiscriminators',['None'], "If you are interested in btagging, in most cases just the labels of the btag discriminators that \
1516  you are interested in is all relevant information that you need for a high level analysis. Add here all btag discriminators, that you are interested in as a list of strings. \
1517  If this list is empty no btag discriminator information will be added to your new patJet collection.", allowedValues=(supportedBtagDiscr.keys()+supportedMetaDiscr.keys()),Type=list)
1518  self.addParameter(self._defaultParameters,'btagInfos',['None'], "The btagInfos objects contain all relevant information from which all discriminators of a certain \
1519  type have been calculated. You might be interested in keeping this information for low level tests or to re-calculate some discriminators from hand. Note that this information \
1520  on the one hand can be very space consuming and that it is not necessary to access the pre-calculated btag discriminator information that has been derived from it. Only in very \
1521  special cases the btagInfos might really be needed in your analysis. Add here all btagInfos, that you are interested in as a list of strings. If this list is empty no btagInfos \
1522  will be added to your new patJet collection.", allowedValues=supportedBtagInfos,Type=list)
1523  self.addParameter(self._defaultParameters,'outputModules',['out'],"Add a list of all output modules to which you would like the new jet collection to be added. Usually this is \
1524  just one single output module with name \'out\', which corresponds also the default configuration of the tool. There is cases though where you might want to add this collection \
1525  to more than one output module.")
1526  ## set defaults
1527  self._parameters=copy.deepcopy(self._defaultParameters)
1528  ## add comments
1529  self._comment = "This is a tool to add more patJet collectinos to your PAT Tuple or to re-configure the default collection. You can add and embed additional information like jet\
1530  energy correction factors, btag information and generator match information to the new patJet collection depending on the parameters that you pass on to this function. Consult \
1531  the descriptions of each parameter for more information."
1532 
_parameters
initialization of the base class
Definition: jetTools.py:1527

Member Function Documentation

def jetTools.UpdateJetCollection.__call__ (   self,
  process,
  labelName = None,
  postfix = None,
  btagPrefix = None,
  jetSource = None,
  pfCandidates = None,
  explicitJTA = None,
  pvSource = None,
  svSource = None,
  elSource = None,
  muSource = None,
  runIVF = None,
  tightBTagNTkHits = None,
  loadStdRecoBTag = None,
  svClustering = None,
  fatJets = None,
  groomedFatJets = None,
  algo = None,
  rParam = None,
  printWarning = None,
  jetCorrections = None,
  btagDiscriminators = None,
  btagInfos = None 
)
Function call wrapper. This will check the parameters and call the actual implementation that
can be found in toolCode via the base class function apply.

Definition at line 1539 of file jetTools.py.

References heavyIonTools.ConfigureHeavyIons._defaultParameters, coreTools.RunOnData._defaultParameters, heavyIonTools.ProductionDefaults._defaultParameters, cmsswVersionTools.PickRelValInputFiles._defaultParameters, coreTools.RemoveMCMatching._defaultParameters, heavyIonTools.SelectionDefaults._defaultParameters, heavyIonTools.DisbaleMonteCarloDeps._defaultParameters, jetTools.AddJetCollection._defaultParameters, jetTools.SwitchJetCollection._defaultParameters, jetTools.UpdateJetCollection._defaultParameters, SignedImpactParameter3D.apply(), gen::PhotosInterfaceBase.apply(), SignedTransverseImpactParameter.apply(), MatrixReader.MatrixReader.apply, SignedDecayLength3D.apply(), DummyOOTPileupCorrection.apply(), gen::PhotosppInterface.apply(), FWPSetCellEditor.apply(), gen::PhotosInterface.apply(), SurveyParameters.apply(), FWGUIEventFilter.apply(), DeviationsFromFileSensor2D.apply(), BeamSpotAlignmentParameters.apply(), RigidBodyAlignmentParameters.apply(), ConfigToolBase.ConfigToolBase.apply(), AlignmentParameters.apply(), BowedSurfaceAlignmentParameters.apply(), OOTPileupCorrData.apply(), Vispa.Plugins.ConfigEditor.ToolDataAccessor.ImportTool.apply(), Vispa.Plugins.ConfigEditor.ToolDataAccessor.ApplyTool.apply(), AbsOOTPileupCorrection.apply(), TwoBowedSurfacesAlignmentParameters.apply(), Vispa.Gui.BoxContentDialog.BoxContentDialog.apply(), reco::modules::TrackerTrackHitFilter::Rule.apply(), Vispa.Plugins.ConfigEditor.ToolDialog.ToolDialog.apply(), reco::Add< T >.apply(), reco::Sub< T >.apply(), reco::Mul< T >.apply(), reco::Div< T >.apply(), cmsswVersionTools.PickRelValInputFiles.apply(), reco::And< bool >.apply(), models.RegExp.apply(), reco::Or< bool >.apply(), reco::Less< T >.apply(), reco::LessEqual< T >.apply(), reco::More< T >.apply(), reco::MoreEqual< T >.apply(), reco::Equal< T >.apply(), npstat::ArrayND< Num1, Len1, Dim1 >.apply(), npstat::ArrayND< Numeric, StackLen, StackDim >.apply(), npstat::ArrayND< Numeric >.apply(), Config.ProcessModifier.apply(), PedeReader.setParameter(), QIE8Simulator.setParameter(), AbsElectronicODERHS.setParameter(), SiStripLorentzAngleCalibration.setParameter(), IntegratedCalibrationBase.setParameter(), SiPixelLorentzAngleCalibration.setParameter(), SiStripBackplaneCalibration.setParameter(), fit::RootMinuit< Function >.setParameter(), and ConfigToolBase.ConfigToolBase.setParameter().

1539  def __call__(self,process,labelName=None,postfix=None,btagPrefix=None,jetSource=None,pfCandidates=None,explicitJTA=None,pvSource=None,svSource=None,elSource=None,muSource=None,runIVF=None,tightBTagNTkHits=None,loadStdRecoBTag=None,svClustering=None,fatJets=None,groomedFatJets=None,algo=None,rParam=None,printWarning=None,jetCorrections=None,btagDiscriminators=None,btagInfos=None):
1540  """
1541  Function call wrapper. This will check the parameters and call the actual implementation that
1542  can be found in toolCode via the base class function apply.
1543  """
1544  if labelName is None:
1545  labelName=self._defaultParameters['labelName'].value
1546  self.setParameter('labelName', labelName)
1547  if postfix is None:
1548  postfix=self._defaultParameters['postfix'].value
1549  self.setParameter('postfix', postfix)
1550  if btagPrefix is None:
1551  btagPrefix=self._defaultParameters['btagPrefix'].value
1552  self.setParameter('btagPrefix', btagPrefix)
1553  if jetSource is None:
1554  jetSource=self._defaultParameters['jetSource'].value
1555  self.setParameter('jetSource', jetSource)
1556  if pfCandidates is None:
1557  pfCandidates=self._defaultParameters['pfCandidates'].value
1558  self.setParameter('pfCandidates', pfCandidates)
1559  if explicitJTA is None:
1560  explicitJTA=self._defaultParameters['explicitJTA'].value
1561  self.setParameter('explicitJTA', explicitJTA)
1562  if pvSource is None:
1563  pvSource=self._defaultParameters['pvSource'].value
1564  self.setParameter('pvSource', pvSource)
1565  if svSource is None:
1566  svSource=self._defaultParameters['svSource'].value
1567  self.setParameter('svSource', svSource)
1568  if elSource is None:
1569  elSource=self._defaultParameters['elSource'].value
1570  self.setParameter('elSource', elSource)
1571  if muSource is None:
1572  muSource=self._defaultParameters['muSource'].value
1573  self.setParameter('muSource', muSource)
1574  if runIVF is None:
1575  runIVF=self._defaultParameters['runIVF'].value
1576  self.setParameter('runIVF', runIVF)
1577  if tightBTagNTkHits is None:
1578  tightBTagNTkHits=self._defaultParameters['tightBTagNTkHits'].value
1579  self.setParameter('tightBTagNTkHits', tightBTagNTkHits)
1580  if loadStdRecoBTag is None:
1581  loadStdRecoBTag=self._defaultParameters['loadStdRecoBTag'].value
1582  self.setParameter('loadStdRecoBTag', loadStdRecoBTag)
1583  if svClustering is None:
1584  svClustering=self._defaultParameters['svClustering'].value
1585  self.setParameter('svClustering', svClustering)
1586  if fatJets is None:
1587  fatJets=self._defaultParameters['fatJets'].value
1588  self.setParameter('fatJets', fatJets)
1589  if groomedFatJets is None:
1590  groomedFatJets=self._defaultParameters['groomedFatJets'].value
1591  self.setParameter('groomedFatJets', groomedFatJets)
1592  if algo is None:
1593  algo=self._defaultParameters['algo'].value
1594  self.setParameter('algo', algo)
1595  if rParam is None:
1596  rParam=self._defaultParameters['rParam'].value
1597  self.setParameter('rParam', rParam)
1598  if printWarning is None:
1599  printWarning=self._defaultParameters['printWarning'].value
1600  self.setParameter('printWarning', printWarning)
1601  if jetCorrections is None:
1602  jetCorrections=self._defaultParameters['jetCorrections'].value
1603  self.setParameter('jetCorrections', jetCorrections)
1604  if btagDiscriminators is None:
1605  btagDiscriminators=self._defaultParameters['btagDiscriminators'].value
1606  self.setParameter('btagDiscriminators', btagDiscriminators)
1607  if btagInfos is None:
1608  btagInfos=self._defaultParameters['btagInfos'].value
1609  self.setParameter('btagInfos', btagInfos)
1610  self.apply(process)
1611 
def __call__(self, process, labelName=None, postfix=None, btagPrefix=None, jetSource=None, pfCandidates=None, explicitJTA=None, pvSource=None, svSource=None, elSource=None, muSource=None, runIVF=None, tightBTagNTkHits=None, loadStdRecoBTag=None, svClustering=None, fatJets=None, groomedFatJets=None, algo=None, rParam=None, printWarning=None, jetCorrections=None, btagDiscriminators=None, btagInfos=None)
Definition: jetTools.py:1539
def jetTools.UpdateJetCollection.getDefaultParameters (   self)
def jetTools.UpdateJetCollection.toolCode (   self,
  process 
)
Tool code implementation

Definition at line 1612 of file jetTools.py.

References editorTools.UserCodeTool._parameters, heavyIonTools.ConfigureHeavyIons._parameters, coreTools.RunOnData._parameters, Vispa.Plugins.ConfigEditor.ConfigDataAccessor.ConfigFolder._parameters, Vispa.Plugins.ConfigEditor.ToolDataAccessor.ImportTool._parameters, heavyIonTools.ProductionDefaults._parameters, ConfigToolBase.ConfigToolBase._parameters, editorTools.ChangeSource._parameters, TAbsFitConstraint._parameters, TAbsFitParticle._parameters, cmsswVersionTools.PickRelValInputFiles._parameters, coreTools.RemoveMCMatching._parameters, heavyIonTools.SelectionDefaults._parameters, heavyIonTools.DisbaleMonteCarloDeps._parameters, jetTools.AddJetCollection._parameters, jetTools.SwitchJetCollection._parameters, jetTools.UpdateJetCollection._parameters, helpers.addToProcessAndTask(), jetTools.checkJetCorrectionsFormat(), helpers.getPatAlgosToolsTask(), list(), jetTools.setupBTagging(), jetTools.setupJetCorrections(), split, jetTools.unsupportedJetAlgorithm(), and pileupCalc.upper.

1612  def toolCode(self, process):
1613  """
1614  Tool code implementation
1615  """
1616  ## initialize parameters
1617  labelName=self._parameters['labelName'].value
1618  postfix=self._parameters['postfix'].value
1619  btagPrefix=self._parameters['btagPrefix'].value
1620  jetSource=self._parameters['jetSource'].value
1621  pfCandidates=self._parameters['pfCandidates'].value
1622  explicitJTA=self._parameters['explicitJTA'].value
1623  pvSource=self._parameters['pvSource'].value
1624  svSource=self._parameters['svSource'].value
1625  elSource=self._parameters['elSource'].value
1626  muSource=self._parameters['muSource'].value
1627  runIVF=self._parameters['runIVF'].value
1628  tightBTagNTkHits=self._parameters['tightBTagNTkHits'].value
1629  loadStdRecoBTag=self._parameters['loadStdRecoBTag'].value
1630  svClustering=self._parameters['svClustering'].value
1631  fatJets=self._parameters['fatJets'].value
1632  groomedFatJets=self._parameters['groomedFatJets'].value
1633  algo=self._parameters['algo'].value
1634  rParam=self._parameters['rParam'].value
1635  printWarning=self._parameters['printWarning'].value
1636  jetCorrections=self._parameters['jetCorrections'].value
1637  btagDiscriminators=list(self._parameters['btagDiscriminators'].value)
1638  btagInfos=list(self._parameters['btagInfos'].value)
1639 
1640  ## a list of all producer modules, which are already known to process
1641  knownModules = process.producerNames().split()
1642  ## determine whether btagging information is required or not
1643  if btagDiscriminators.count('None')>0:
1644  btagDiscriminators.remove('None')
1645  if btagInfos.count('None')>0:
1646  btagInfos.remove('None')
1647  bTagging=(len(btagDiscriminators)>0 or len(btagInfos)>0)
1648 
1649  ## construct postfix label for auxiliary modules; this postfix
1650  ## label will start with a capitalized first letter following
1651  ## the CMS naming conventions and for improved readablility
1652  _labelName=labelName[:1].upper()+labelName[1:]
1653 
1654  ## supported algo types are ak, ca, and kt
1655  _algo=''
1656  for x in ["ak", "ca", "kt"]:
1657  if x in algo.lower():
1658  _algo=supportedJetAlgos[x]
1659  break
1660  if _algo=='':
1662 
1663  task = getPatAlgosToolsTask(process)
1664 
1665  ## add new updatedPatJets to process (keep instance for later further modifications)
1666  from PhysicsTools.PatAlgos.producersLayer1.jetUpdater_cfi import updatedPatJets
1667  if 'updatedPatJets'+_labelName+postfix in knownModules :
1668  _newPatJets=getattr(process, 'updatedPatJets'+_labelName+postfix)
1669  _newPatJets.jetSource=jetSource
1670  else :
1671  addToProcessAndTask('updatedPatJets'+_labelName+postfix,
1672  updatedPatJets.clone(jetSource=jetSource,
1673  printWarning=printWarning), process, task)
1674  _newPatJets=getattr(process, 'updatedPatJets'+_labelName+postfix)
1675  knownModules.append('updatedPatJets'+_labelName+postfix)
1676  ## add new selectedUpdatedPatJets to process
1677  from PhysicsTools.PatAlgos.selectionLayer1.jetSelector_cfi import selectedPatJets
1678  if 'selectedUpdatedPatJets'+_labelName+postfix in knownModules :
1679  _newSelectedPatJets=getattr(process, 'selectedUpdatedPatJets'+_labelName+postfix)
1680  _newSelectedPatJets.src='updatedPatJets'+_labelName+postfix
1681  else :
1682  addToProcessAndTask('selectedUpdatedPatJets'+_labelName+postfix,
1683  selectedPatJets.clone(src='updatedPatJets'+_labelName+postfix),
1684  process, task)
1685  knownModules.append('selectedUpdatedPatJets'+_labelName+postfix)
1686 
1687  ## run btagging if required by user
1688  if (bTagging):
1689  if printWarning:
1690  sys.stderr.write("**************************************************************\n")
1691  sys.stderr.write("b tagging needs to be run on uncorrected jets. Hence, the JECs\n")
1692  sys.stderr.write("will first be undone for 'updatedPatJets%s' and then applied to\n" % (_labelName+postfix) )
1693  sys.stderr.write("'updatedPatJetsTransientCorrected%s'.\n" % (_labelName+postfix) )
1694  sys.stderr.write("**************************************************************\n")
1695  _jetSource = cms.InputTag('updatedPatJets'+_labelName+postfix)
1696  ## insert new jet collection with jet corrections applied and btag info added
1697  self(
1698  process,
1699  labelName = ('TransientCorrected'+_labelName),
1700  jetSource = _jetSource,
1701  pfCandidates=pfCandidates,
1702  explicitJTA=explicitJTA,
1703  pvSource=pvSource,
1704  svSource=svSource,
1705  elSource=elSource,
1706  muSource=muSource,
1707  runIVF=runIVF,
1708  tightBTagNTkHits=tightBTagNTkHits,
1709  loadStdRecoBTag=loadStdRecoBTag,
1710  svClustering=svClustering,
1711  fatJets=fatJets,
1712  groomedFatJets=groomedFatJets,
1713  algo=algo,
1714  rParam=rParam,
1715  jetCorrections = jetCorrections,
1716  btagPrefix = btagPrefix,
1717  postfix = postfix
1718  )
1719  ## setup btagging
1720  _patJets=getattr(process, 'updatedPatJetsTransientCorrected'+_labelName+postfix)
1721  setupBTagging(process, _jetSource, pfCandidates, explicitJTA, pvSource, svSource, elSource, muSource, runIVF, tightBTagNTkHits, loadStdRecoBTag, svClustering, fatJets, groomedFatJets,
1722  _algo, rParam, btagDiscriminators, btagInfos, _patJets, _labelName, btagPrefix, postfix)
1723  ## update final selected jets
1724  _newSelectedPatJets=getattr(process, 'selectedUpdatedPatJets'+_labelName+postfix)
1725  _newSelectedPatJets.src='updatedPatJetsTransientCorrected'+_labelName+postfix
1726  ## remove automatically added but redundant 'TransientCorrected' selected jets
1727  delattr(process, 'selectedUpdatedPatJetsTransientCorrected'+_labelName+postfix)
1728  else:
1729  _newPatJets.addBTagInfo = False
1730  _newPatJets.addTagInfos = False
1731 
1732  ## add jet correction factors if required by user
1733  if (jetCorrections != None or bTagging):
1734  ## check the jet corrections format
1735  checkJetCorrectionsFormat(jetCorrections)
1736  ## reset MET corrrection
1737  if jetCorrections[2].lower() != 'none' and jetCorrections[2] != '':
1738  sys.stderr.write("-------------------------------------------------------------------\n")
1739  sys.stderr.write(" Warning: MET correction was set to " + jetCorrections[2] + " but\n")
1740  sys.stderr.write(" will be ignored. Please set it to \"None\" to avoid\n")
1741  sys.stderr.write(" getting this warning.\n")
1742  sys.stderr.write("-------------------------------------------------------------------\n")
1743  jetCorrectionsList = list(jetCorrections)
1744  jetCorrectionsList[2] = 'None'
1745  jetCorrections = tuple(jetCorrectionsList)
1746  ## if running b tagging, need to use uncorrected jets
1747  if (bTagging):
1748  jetCorrections = ('AK4PFchs', cms.vstring([]), 'None')
1749  ## setup jet energy corrections
1750  setupJetCorrections(process, knownModules, jetCorrections, jetSource, pvSource, _newPatJets, _labelName, postfix)
1751  else:
1752  ## switch jetCorrFactors off
1753  _newPatJets.addJetCorrFactors=False
1754 
1755 updateJetCollection=UpdateJetCollection()
1756 
1757 
def addToProcessAndTask(label, module, process, task)
Definition: helpers.py:28
def setupJetCorrections(process, knownModules, jetCorrections, jetSource, pvSource, patJets, labelName, postfix)
Definition: jetTools.py:25
_parameters
initialization of the base class
Definition: jetTools.py:1527
def toolCode(self, process)
Definition: jetTools.py:1612
def setupBTagging(process, jetSource, pfCandidates, explicitJTA, pvSource, svSource, elSource, muSource, runIVF, tightBTagNTkHits, loadStdRecoBTag, svClustering, fatJets, groomedFatJets, algo, rParam, btagDiscriminators, btagInfos, patJets, labelName, btagPrefix, postfix)
Definition: jetTools.py:236
def checkJetCorrectionsFormat(jetCorrections)
Definition: jetTools.py:17
def getPatAlgosToolsTask(process)
Definition: helpers.py:13
double split
Definition: MVATrainer.cc:139
def unsupportedJetAlgorithm(obj)
Definition: jetTools.py:1870
How EventSelector::AcceptEvent() decides whether to accept an event for output otherwise it is excluding the probing of A single or multiple positive and the trigger will pass if any such matching triggers are PASS or EXCEPTION[A criterion thatmatches no triggers at all is detected and causes a throw.] A single negative with an expectation of appropriate bit checking in the decision and the trigger will pass if any such matching triggers are FAIL or EXCEPTION A wildcarded negative criterion that matches more than one trigger in the trigger list("!*","!HLTx*"if it matches 2 triggers or more) will accept the event if all the matching triggers are FAIL.It will reject the event if any of the triggers are PASS or EXCEPTION(this matches the behavior of"!*"before the partial wildcard feature was incorporated).Triggers which are in the READY state are completely ignored.(READY should never be returned since the trigger paths have been run

Member Data Documentation

jetTools.UpdateJetCollection._comment
private

add comments

Definition at line 1529 of file jetTools.py.

jetTools.UpdateJetCollection._defaultParameters
staticprivate

Definition at line 1479 of file jetTools.py.

Referenced by HiCoreTools.RestrictInputToAOD.__call__(), trackTools.MakeAODTrackCandidates.__call__(), runJetUncertainties.RunJetUncertainties.__call__(), metTools.AddMETCollection.__call__(), editorTools.ChangeSource.__call__(), HiCoreTools.RemoveMCMatching.__call__(), trigTools.SwitchOnTrigger.__call__(), trackTools.MakePATTrackCandidates.__call__(), runMETCorrectionsAndUncertainties.RunMETCorrectionsAndUncertainties.__call__(), HiCoreTools.RemoveAllPATObjectsBut.__call__(), HiCoreTools.RemoveSpecificPATObjects.__call__(), trigTools.SwitchOnTriggerStandAlone.__call__(), trackTools.MakeTrackCandidates.__call__(), tauTools.AddTauCollection.__call__(), trigTools.SwitchOnTriggerMatching.__call__(), HiCoreTools.RemoveCleaning.__call__(), HiCoreTools.AddCleaning.__call__(), trigTools.SwitchOnTriggerMatchingStandAlone.__call__(), trigTools.SwitchOnTriggerMatchEmbedding.__call__(), jetTools.UpdateJetCollection.__call__(), jetTools.AddJetID.__call__(), jetTools.SetTagInfos.__call__(), editorTools.UserCodeTool.__init__(), metTools.AddMETCollection.__init__(), trackTools.MakeAODTrackCandidates.__init__(), HiCoreTools.RestrictInputToAOD.__init__(), runJetUncertainties.RunJetUncertainties.__init__(), runMETCorrectionsAndUncertainties.RunMETCorrectionsAndUncertainties.__init__(), Vispa.Plugins.ConfigEditor.ToolDataAccessor.ImportTool.__init__(), editorTools.ChangeSource.__init__(), HiCoreTools.RemoveMCMatching.__init__(), trackTools.MakePATTrackCandidates.__init__(), trigTools.SwitchOnTrigger.__init__(), HiCoreTools.RemoveAllPATObjectsBut.__init__(), HiCoreTools.RemoveSpecificPATObjects.__init__(), trigTools.SwitchOnTriggerStandAlone.__init__(), trackTools.MakeTrackCandidates.__init__(), tauTools.AddTauCollection.__init__(), trigTools.SwitchOnTriggerMatching.__init__(), HiCoreTools.RemoveCleaning.__init__(), HiCoreTools.AddCleaning.__init__(), trigTools.SwitchOnTriggerMatchingStandAlone.__init__(), trigTools.SwitchOnTriggerMatchEmbedding.__init__(), jetTools.UpdateJetCollection.__init__(), jetTools.AddJetID.__init__(), jetTools.SetTagInfos.__init__(), ConfigToolBase.ConfigToolBase.dumpPython(), ConfigToolBase.ConfigToolBase.getAllowedValues(), HiCoreTools.RestrictInputToAOD.getDefaultParameters(), trackTools.MakeAODTrackCandidates.getDefaultParameters(), metTools.AddMETCollection.getDefaultParameters(), editorTools.ChangeSource.getDefaultParameters(), HiCoreTools.RemoveMCMatching.getDefaultParameters(), trackTools.MakePATTrackCandidates.getDefaultParameters(), trigTools.SwitchOnTrigger.getDefaultParameters(), runMETCorrectionsAndUncertainties.RunMETCorrectionsAndUncertainties.getDefaultParameters(), HiCoreTools.RemoveAllPATObjectsBut.getDefaultParameters(), HiCoreTools.RemoveSpecificPATObjects.getDefaultParameters(), trigTools.SwitchOnTriggerStandAlone.getDefaultParameters(), trackTools.MakeTrackCandidates.getDefaultParameters(), tauTools.AddTauCollection.getDefaultParameters(), trigTools.SwitchOnTriggerMatching.getDefaultParameters(), HiCoreTools.RemoveCleaning.getDefaultParameters(), HiCoreTools.AddCleaning.getDefaultParameters(), trigTools.SwitchOnTriggerMatchingStandAlone.getDefaultParameters(), trigTools.SwitchOnTriggerMatchEmbedding.getDefaultParameters(), jetTools.UpdateJetCollection.getDefaultParameters(), jetTools.AddJetID.getDefaultParameters(), jetTools.SetTagInfos.getDefaultParameters(), runMETCorrectionsAndUncertainties.RunMETCorrectionsAndUncertainties.initializeInputTag(), ConfigToolBase.ConfigToolBase.reset(), and ConfigToolBase.ConfigToolBase.setParameter().

jetTools.UpdateJetCollection._label
staticprivate
jetTools.UpdateJetCollection._parameters
private

initialization of the base class

add all parameters that should be known to the class set defaults

Definition at line 1527 of file jetTools.py.

Referenced by runMETCorrectionsAndUncertainties.RunMETCorrectionsAndUncertainties.__call__(), runMETCorrectionsAndUncertainties.RunMETCorrectionsAndUncertainties.ak4JetReclustering(), runMETCorrectionsAndUncertainties.RunMETCorrectionsAndUncertainties.createMVAMETModule(), runMETCorrectionsAndUncertainties.RunMETCorrectionsAndUncertainties.createSmearedJetModule(), runMETCorrectionsAndUncertainties.RunMETCorrectionsAndUncertainties.extractMET(), runMETCorrectionsAndUncertainties.RunMETCorrectionsAndUncertainties.getCorrectedMET(), runMETCorrectionsAndUncertainties.RunMETCorrectionsAndUncertainties.getUnclusteredVariationsForMVAMET(), runMETCorrectionsAndUncertainties.RunMETCorrectionsAndUncertainties.getVariations(), runMETCorrectionsAndUncertainties.RunMETCorrectionsAndUncertainties.jetCleaning(), runMETCorrectionsAndUncertainties.RunMETCorrectionsAndUncertainties.jetConfiguration(), runMETCorrectionsAndUncertainties.RunMETCorrectionsAndUncertainties.miniAODConfiguration(), runMETCorrectionsAndUncertainties.RunMETCorrectionsAndUncertainties.miniAODConfigurationPost(), runMETCorrectionsAndUncertainties.RunMETCorrectionsAndUncertainties.recomputeRawMetFromPfcs(), HiCoreTools.RestrictInputToAOD.toolCode(), trackTools.MakeAODTrackCandidates.toolCode(), metTools.AddMETCollection.toolCode(), runJetUncertainties.RunJetUncertainties.toolCode(), HiCoreTools.RemoveMCMatching.toolCode(), trigTools.SwitchOnTrigger.toolCode(), trackTools.MakePATTrackCandidates.toolCode(), HiCoreTools.RemoveAllPATObjectsBut.toolCode(), HiCoreTools.RemoveSpecificPATObjects.toolCode(), trigTools.SwitchOnTriggerStandAlone.toolCode(), runMETCorrectionsAndUncertainties.RunMETCorrectionsAndUncertainties.toolCode(), trackTools.MakeTrackCandidates.toolCode(), tauTools.AddTauCollection.toolCode(), HiCoreTools.RemoveCleaning.toolCode(), trigTools.SwitchOnTriggerMatching.toolCode(), HiCoreTools.AddCleaning.toolCode(), trigTools.SwitchOnTriggerMatchingStandAlone.toolCode(), trigTools.SwitchOnTriggerMatchEmbedding.toolCode(), jetTools.UpdateJetCollection.toolCode(), jetTools.AddJetID.toolCode(), jetTools.SetTagInfos.toolCode(), and runMETCorrectionsAndUncertainties.RunMETCorrectionsAndUncertainties.updateJECs().