CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Static Public Attributes | Private Attributes | Static Private Attributes
jetTools.SwitchJetCollection Class Reference
Inheritance diagram for jetTools.SwitchJetCollection:

Public Member Functions

def __call__
 
def __init__
 
def getDefaultParameters
 
def toolCode
 
def vit
 make VInputTag from strings More...
 

Static Public Attributes

tuple correctors
 redo the type1MET correction for the new jet collection More...
 
 doType1MET = False
 replace jet energy corrections; catch a couple of exceptions first More...
 
string jetIdLabelNew = jetIdLabel+'JetID'
 remove the jet track association from the std sequence More...
 
tuple switchJetCollection = SwitchJetCollection()
 configure the type1MET correction the following muonMET corrections have the metJESCorAK5CaloJet as input and are automatically correct More...
 

Private Attributes

 _comment
 
 _parameters
 

Static Private Attributes

tuple _defaultParameters = dicttypes.SortedKeysDict()
 
string _label = 'switchJetCollection'
 

Detailed Description

Switch the collection of jets in PAT from the default value to a
new jet collection

Definition at line 455 of file jetTools.py.

Constructor & Destructor Documentation

def jetTools.SwitchJetCollection.__init__ (   self)

Definition at line 462 of file jetTools.py.

References electronTools.AddElectronUserIsolation._defaultParameters, python.editorTools.UserCodeTool._defaultParameters, heavyIonTools.ConfigureHeavyIons._defaultParameters, coreTools.RestrictInputToAOD._defaultParameters, jetTools.RunBTagging._defaultParameters, python.Vispa.Plugins.ConfigEditor.ToolDataAccessor.ImportTool._defaultParameters, heavyIonTools.ProductionDefaults._defaultParameters, python.editorTools.ChangeSource._defaultParameters, coreTools.RunOnData._defaultParameters, coreTools.RemoveMCMatching._defaultParameters, cmsswVersionTools.RunBTagging35X._defaultParameters, heavyIonTools.SelectionDefaults._defaultParameters, heavyIonTools.DisbaleMonteCarloDeps._defaultParameters, jetTools.AddJetCollection._defaultParameters, coreTools.RemoveAllPATObjectsBut._defaultParameters, coreTools.RemoveSpecificPATObjects._defaultParameters, cmsswVersionTools.AddJetCollection35X._defaultParameters, coreTools.RemoveCleaning._defaultParameters, coreTools.AddCleaning._defaultParameters, jetTools.SwitchJetCollection._defaultParameters, cmsswVersionTools.SwitchJetCollection35X._defaultParameters, cmsswVersionTools.PickRelValInputFiles._defaultParameters, python.ConfigToolBase.ConfigToolBase._defaultValue, GenObject.GenObject._defaultValue, root::helper::RootFunctionAdapter< F, args >.addParameter(), root::helper::RootFunctionHelper< F, args, Tag >.addParameter(), ParameterMgr.addParameter(), fit::RootMinuit< Function >.addParameter(), PythonParameterSet.addParameter(), LutXml.addParameter(), python.ConfigToolBase.ConfigToolBase.addParameter(), and edm::ParameterSet.addParameter().

463  def __init__(self):
464  ConfigToolBase.__init__(self)
465  self.addParameter(self._defaultParameters,'jetCollection',self._defaultValue,'Input jet collection', cms.InputTag)
466  self.addParameter(self._defaultParameters,'doJTA',True, "run b tagging sequence for new jet collection and add it to the new pat jet collection")
467  self.addParameter(self._defaultParameters,'doBTagging',True, 'run JetTracksAssociation and JetCharge and add it to the new pat jet collection (will autom. be true if doBTagging is set to true)')
468  self.addParameter(self._defaultParameters,'jetCorrLabel',None, "payload and list of new jet correction labels, such as (\'AK5Calo\',[\'L2Relative\', \'L3Absolute\'])", tuple,acceptNoneValue=True )
469  self.addParameter(self._defaultParameters,'doType1MET',True, "if jetCorrLabel is not 'None', set this to 'True' to redo the Type1 MET correction for the new jet colleection; at the moment it must be 'False' for non CaloJets otherwise the JetMET POG module crashes. ")
470  self.addParameter(self._defaultParameters,'genJetCollection',cms.InputTag("ak5GenJets"), "GenJet collection to match to")
471  self.addParameter(self._defaultParameters,'doJetID',True, "add jetId variables to the added jet collection")
472  self.addParameter(self._defaultParameters,'jetIdLabel',"ak5", " specify the label prefix of the xxxJetID object; in general it is the jet collection tag like ak5, kt4 sc5, aso. For more information have a look to SWGuidePATTools#add_JetCollection")
473  self.addParameter(self._defaultParameters,'postfix',"", "postfix of default sequence")
474  self.addParameter(self._defaultParameters, 'outputModule', "out", "Output module label, empty label indicates no output, default: out")
475 
476  self._parameters=copy.deepcopy(self._defaultParameters)
477  self._comment = ""

Member Function Documentation

def jetTools.SwitchJetCollection.__call__ (   self,
  process,
  jetCollection = None,
  doJTA = None,
  doBTagging = None,
  jetCorrLabel = None,
  doType1MET = None,
  genJetCollection = None,
  doJetID = None,
  jetIdLabel = None,
  postfix = None,
  outputModule = None 
)

Definition at line 491 of file jetTools.py.

References electronTools.AddElectronUserIsolation._defaultParameters, python.editorTools.UserCodeTool._defaultParameters, heavyIonTools.ConfigureHeavyIons._defaultParameters, coreTools.RestrictInputToAOD._defaultParameters, jetTools.RunBTagging._defaultParameters, python.Vispa.Plugins.ConfigEditor.ToolDataAccessor.ImportTool._defaultParameters, heavyIonTools.ProductionDefaults._defaultParameters, python.editorTools.ChangeSource._defaultParameters, coreTools.RunOnData._defaultParameters, coreTools.RemoveMCMatching._defaultParameters, cmsswVersionTools.RunBTagging35X._defaultParameters, heavyIonTools.SelectionDefaults._defaultParameters, heavyIonTools.DisbaleMonteCarloDeps._defaultParameters, jetTools.AddJetCollection._defaultParameters, coreTools.RemoveAllPATObjectsBut._defaultParameters, coreTools.RemoveSpecificPATObjects._defaultParameters, cmsswVersionTools.AddJetCollection35X._defaultParameters, coreTools.RemoveCleaning._defaultParameters, coreTools.AddCleaning._defaultParameters, jetTools.SwitchJetCollection._defaultParameters, cmsswVersionTools.SwitchJetCollection35X._defaultParameters, cmsswVersionTools.PickRelValInputFiles._defaultParameters, SignedImpactParameter3D.apply(), SignedTransverseImpactParameter.apply(), SignedDecayLength3D.apply(), SurveyParameters.apply(), gen::PhotosInterface.apply(), FWPSetCellEditor.apply(), FWGUIEventFilter.apply(), jetTools.RunBTagging.apply(), DeviationsFromFileSensor2D.apply(), BeamSpotAlignmentParameters.apply(), RigidBodyAlignmentParameters.apply(), python.ConfigToolBase.ConfigToolBase.apply(), AlignmentParameters.apply(), BowedSurfaceAlignmentParameters.apply(), python.Vispa.Plugins.ConfigEditor.ToolDataAccessor.ImportTool.apply(), python.Vispa.Plugins.ConfigEditor.ToolDataAccessor.ApplyTool.apply(), TwoBowedSurfacesAlignmentParameters.apply(), python.Vispa.Gui.BoxContentDialog.BoxContentDialog.apply(), reco::modules::TrackerTrackHitFilter::Rule.apply(), python.Vispa.Plugins.ConfigEditor.ToolDialog.ToolDialog.apply(), reco::Add< T >.apply(), reco::Sub< T >.apply(), reco::Mul< T >.apply(), reco::Div< T >.apply(), reco::And< bool >.apply(), cmsswVersionTools.RunBTagging35X.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(), cmsswVersionTools.PickRelValInputFiles.apply(), PedeReader.setParameter(), fit::RootMinuit< Function >.setParameter(), and python.ConfigToolBase.ConfigToolBase.setParameter().

Referenced by jetTools.SwitchJetCollection.getDefaultParameters().

492  outputModule = None):
493 
494  if jetCollection is None:
495  jetCollection=self._defaultParameters['jetCollection'].value
496  if doJTA is None:
497  doJTA=self._defaultParameters['doJTA'].value
498  if doBTagging is None:
499  doBTagging=self._defaultParameters['doBTagging'].value
500  if jetCorrLabel is None:
501  jetCorrLabel=self._defaultParameters['jetCorrLabel'].value
502  if doType1MET is None:
503  doType1MET=self._defaultParameters['doType1MET'].value
504  if genJetCollection is None:
505  genJetCollection=self._defaultParameters['genJetCollection'].value
506  if doJetID is None:
507  doJetID=self._defaultParameters['doJetID'].value
508  if jetIdLabel is None:
509  jetIdLabel=self._defaultParameters['jetIdLabel'].value
510  if outputModule is None:
511  outputModule=self._defaultParameters['outputModule'].value
512  if postfix is None:
513  postfix=self._defaultParameters['postfix'].value
514 
515  self.setParameter('jetCollection',jetCollection)
516  self.setParameter('doJTA',doJTA)
517  self.setParameter('doBTagging',doBTagging)
518  self.setParameter('jetCorrLabel',jetCorrLabel)
519  self.setParameter('doType1MET',doType1MET)
520  self.setParameter('genJetCollection',genJetCollection)
521  self.setParameter('doJetID',doJetID)
522  self.setParameter('jetIdLabel',jetIdLabel)
523  self.setParameter('outputModule',outputModule)
524  self.setParameter('postfix',postfix)
525 
526  self.apply(process)
def jetTools.SwitchJetCollection.getDefaultParameters (   self)

Definition at line 478 of file jetTools.py.

References jetTools.SwitchJetCollection.__call__(), electronTools.AddElectronUserIsolation._defaultParameters, python.editorTools.UserCodeTool._defaultParameters, heavyIonTools.ConfigureHeavyIons._defaultParameters, coreTools.RestrictInputToAOD._defaultParameters, jetTools.RunBTagging._defaultParameters, python.Vispa.Plugins.ConfigEditor.ToolDataAccessor.ImportTool._defaultParameters, heavyIonTools.ProductionDefaults._defaultParameters, python.editorTools.ChangeSource._defaultParameters, coreTools.RunOnData._defaultParameters, coreTools.RemoveMCMatching._defaultParameters, cmsswVersionTools.RunBTagging35X._defaultParameters, heavyIonTools.SelectionDefaults._defaultParameters, heavyIonTools.DisbaleMonteCarloDeps._defaultParameters, jetTools.AddJetCollection._defaultParameters, coreTools.RemoveAllPATObjectsBut._defaultParameters, coreTools.RemoveSpecificPATObjects._defaultParameters, cmsswVersionTools.AddJetCollection35X._defaultParameters, coreTools.RemoveCleaning._defaultParameters, coreTools.AddCleaning._defaultParameters, jetTools.SwitchJetCollection._defaultParameters, cmsswVersionTools.SwitchJetCollection35X._defaultParameters, and cmsswVersionTools.PickRelValInputFiles._defaultParameters.

Referenced by trigTools.SwitchOnTrigger.toolCode(), trigTools.SwitchOnTriggerStandAlone.toolCode(), trigTools.SwitchOnTriggerMatching.toolCode(), and trigTools.SwitchOnTriggerMatchingStandAlone.toolCode().

479  def getDefaultParameters(self):
480  return self._defaultParameters
def jetTools.SwitchJetCollection.toolCode (   self,
  process 
)

Definition at line 527 of file jetTools.py.

References python.editorTools.UserCodeTool._parameters, electronTools.AddElectronUserIsolation._parameters, heavyIonTools.ConfigureHeavyIons._parameters, coreTools.RestrictInputToAOD._parameters, python.Vispa.Plugins.ConfigEditor.ConfigDataAccessor.ConfigFolder._parameters, jetTools.RunBTagging._parameters, python.Vispa.Plugins.ConfigEditor.ToolDataAccessor.ImportTool._parameters, heavyIonTools.ProductionDefaults._parameters, python.ConfigToolBase.ConfigToolBase._parameters, python.editorTools.ChangeSource._parameters, TAbsFitConstraint._parameters, TAbsFitParticle._parameters, coreTools.RunOnData._parameters, coreTools.RemoveMCMatching._parameters, cmsswVersionTools.RunBTagging35X._parameters, heavyIonTools.SelectionDefaults._parameters, heavyIonTools.DisbaleMonteCarloDeps._parameters, jetTools.AddJetCollection._parameters, coreTools.RemoveAllPATObjectsBut._parameters, coreTools.RemoveSpecificPATObjects._parameters, cmsswVersionTools.AddJetCollection35X._parameters, coreTools.RemoveCleaning._parameters, coreTools.AddCleaning._parameters, jetTools.SwitchJetCollection._parameters, cmsswVersionTools.SwitchJetCollection35X._parameters, cmsswVersionTools.PickRelValInputFiles._parameters, and helpers.applyPostfix().

528  def toolCode(self, process):
529  jetCollection=self._parameters['jetCollection'].value
530  doJTA=self._parameters['doJTA'].value
531  doBTagging=self._parameters['doBTagging'].value
532  jetCorrLabel=self._parameters['jetCorrLabel'].value
533  doType1MET =self._parameters['doType1MET'].value
534  genJetCollection=self._parameters['genJetCollection'].value
535  doJetID=self._parameters['doJetID'].value
536  jetIdLabel=self._parameters['jetIdLabel'].value
537  outputModule=self._parameters['outputModule'].value
538  postfix=self._parameters['postfix'].value
539 
540  ## save label of old input jet collection
541  oldLabel = applyPostfix(process, "patJets", postfix).jetSource;
542 
543  ## replace input jet collection for generator matches if the
544  ## genJetCollection is no empty
545  if (process.patJets.addGenPartonMatch):
546  applyPostfix(process, "patJetPartonMatch", postfix).src = jetCollection
547  if (process.patJets.addGenJetMatch):
548  applyPostfix(process, "patJetGenJetMatch", postfix).src = jetCollection
549  applyPostfix(process, "patJetGenJetMatch", postfix).matched = genJetCollection
550  if (process.patJets.getJetMCFlavour):
551  applyPostfix(process, "patJetPartonAssociation", postfix).jets = jetCollection
552 
## replace input jet collection for pat jet production
def applyPostfix
Helpers to perform some technically boring tasks like looking for all modules with a given parameter ...
Definition: helpers.py:6
def jetTools.SwitchJetCollection.vit (   args)

make VInputTag from strings

Definition at line 556 of file jetTools.py.

References helpers.applyPostfix(), helpers.removeIfInSequence(), and linker.replace().

557  def vit(*args) : return cms.VInputTag( *[ cms.InputTag(x) for x in args ] )
def vit
make VInputTag from strings
Definition: jetTools.py:556

Member Data Documentation

jetTools.SwitchJetCollection._comment
private

Definition at line 476 of file jetTools.py.

tuple jetTools.SwitchJetCollection._defaultParameters = dicttypes.SortedKeysDict()
staticprivate

Definition at line 461 of file jetTools.py.

Referenced by photonTools.AddPhotonUserIsolation.__call__(), muonTools.AddMuonUserIsolation.__call__(), metTools.AddTcMET.__call__(), HiCoreTools.RestrictInputToAOD.__call__(), trackTools.MakeAODTrackCandidates.__call__(), metTools.AddPfMET.__call__(), HiCoreTools.RemoveMCMatching.__call__(), trackTools.MakePATTrackCandidates.__call__(), trigTools.SwitchOnTrigger.__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__(), jetTools.SwitchJetCollection.__call__(), trigTools.SwitchOnTriggerMatchEmbedding.__call__(), jetTools.AddJetID.__call__(), trigTools.RemoveCleaningFromTriggerMatching.__call__(), jetTools.SetTagInfos.__call__(), photonTools.AddPhotonUserIsolation.__init__(), muonTools.AddMuonUserIsolation.__init__(), metTools.AddTcMET.__init__(), trackTools.MakeAODTrackCandidates.__init__(), HiCoreTools.RestrictInputToAOD.__init__(), metTools.AddPfMET.__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__(), jetTools.SwitchJetCollection.__init__(), trigTools.SwitchOnTriggerMatchEmbedding.__init__(), jetTools.AddJetID.__init__(), trigTools.RemoveCleaningFromTriggerMatching.__init__(), jetTools.SetTagInfos.__init__(), python.ConfigToolBase.ConfigToolBase.getAllowedValues(), photonTools.AddPhotonUserIsolation.getDefaultParameters(), muonTools.AddMuonUserIsolation.getDefaultParameters(), metTools.AddTcMET.getDefaultParameters(), HiCoreTools.RestrictInputToAOD.getDefaultParameters(), trackTools.MakeAODTrackCandidates.getDefaultParameters(), metTools.AddPfMET.getDefaultParameters(), HiCoreTools.RemoveMCMatching.getDefaultParameters(), trackTools.MakePATTrackCandidates.getDefaultParameters(), trigTools.SwitchOnTrigger.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(), jetTools.SwitchJetCollection.getDefaultParameters(), trigTools.SwitchOnTriggerMatchEmbedding.getDefaultParameters(), jetTools.AddJetID.getDefaultParameters(), trigTools.RemoveCleaningFromTriggerMatching.getDefaultParameters(), jetTools.SetTagInfos.getDefaultParameters(), python.ConfigToolBase.ConfigToolBase.reset(), and python.ConfigToolBase.ConfigToolBase.setParameter().

string jetTools.SwitchJetCollection._label = 'switchJetCollection'
staticprivate

Definition at line 460 of file jetTools.py.

Referenced by trigTools.SwitchOnTrigger.toolCode(), trigTools.SwitchOnTriggerStandAlone.toolCode(), trigTools.SwitchOnTriggerMatching.toolCode(), trigTools.SwitchOnTriggerMatchingStandAlone.toolCode(), trigTools.SwitchOnTriggerMatchEmbedding.toolCode(), and trigTools.RemoveCleaningFromTriggerMatching.toolCode().

jetTools.SwitchJetCollection._parameters
private

Definition at line 475 of file jetTools.py.

Referenced by photonTools.AddPhotonUserIsolation.toolCode(), metTools.AddTcMET.toolCode(), muonTools.AddMuonUserIsolation.toolCode(), HiCoreTools.RestrictInputToAOD.toolCode(), trackTools.MakeAODTrackCandidates.toolCode(), metTools.AddPfMET.toolCode(), HiCoreTools.RemoveMCMatching.toolCode(), trackTools.MakePATTrackCandidates.toolCode(), trigTools.SwitchOnTrigger.toolCode(), HiCoreTools.RemoveAllPATObjectsBut.toolCode(), HiCoreTools.RemoveSpecificPATObjects.toolCode(), trigTools.SwitchOnTriggerStandAlone.toolCode(), trackTools.MakeTrackCandidates.toolCode(), tauTools.AddTauCollection.toolCode(), HiCoreTools.RemoveCleaning.toolCode(), trigTools.SwitchOnTriggerMatching.toolCode(), HiCoreTools.AddCleaning.toolCode(), trigTools.SwitchOnTriggerMatchingStandAlone.toolCode(), jetTools.SwitchJetCollection.toolCode(), trigTools.SwitchOnTriggerMatchEmbedding.toolCode(), jetTools.AddJetID.toolCode(), trigTools.RemoveCleaningFromTriggerMatching.toolCode(), and jetTools.SetTagInfos.toolCode().

tuple jetTools.SwitchJetCollection.correctors
static
Initial value:
1 = cms.vstring('%sL2Relative' % (jetCollection.getModuleLabel().replace("Jets", "")),
2  '%sL3Absolute' % (jetCollection.getModuleLabel().replace("Jets", ""))
3  )

redo the type1MET correction for the new jet collection

in case there is no jet correction service in the paths add it as L2L3 if possible, as combined from L2 and L3 otherwise

Definition at line 645 of file jetTools.py.

jetTools.SwitchJetCollection.doType1MET = False
static

replace jet energy corrections; catch a couple of exceptions first

check for the correct format switch JEC parameters to the new jet collection switch type1MET corrections off for PFJets or JPTJets

Definition at line 636 of file jetTools.py.

string jetTools.SwitchJetCollection.jetIdLabelNew = jetIdLabel+'JetID'
static

remove the jet track association from the std sequence

switch embedding of track association and jet charge estimate to 'False' replace b tagging sequence; add postfix label 'AOD' as crab will crash when confronted with empy labels add b tagging sequence before running the allLayer1Jets modules replace corresponding tags for pat jet production remove b tagging from the std sequence switch embedding of b tagging for pat jet production to 'False' adjust output

Definition at line 606 of file jetTools.py.

tuple jetTools.SwitchJetCollection.switchJetCollection = SwitchJetCollection()
static

configure the type1MET correction the following muonMET corrections have the metJESCorAK5CaloJet as input and are automatically correct

remove the jetCorrFactors from the std sequence switch embedding of jetCorrFactors off for pat jet production adjust output when switching to PFJets in this case we can omit caloTowers and should keep pfCandidates

Definition at line 670 of file jetTools.py.