CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Functions
boostedHPSPFTaus_cfi Namespace Reference

Functions

def addBoostedTaus
 

Function Documentation

def boostedHPSPFTaus_cfi.addBoostedTaus (   process)

Definition at line 4 of file boostedHPSPFTaus_cfi.py.

References helpers.cloneProcessingSnippet(), and MassReplace.massSearchReplaceAnyInputTag().

Referenced by miniAOD_tools.miniAOD_customizeCommon().

4 
5 def addBoostedTaus(process):
6  from PhysicsTools.PatAlgos.tools.helpers import cloneProcessingSnippet
7  from PhysicsTools.PatAlgos.tools.helpers import massSearchReplaceAnyInputTag
8 
9  process.load("RecoTauTag.Configuration.boostedHPSPFTaus_cff")
10  patAlgosToolsTask = configtools.getPatAlgosToolsTask(process)
11  patAlgosToolsTask.add(process.boostedHPSPFTausTask)
12 
13  process.load("RecoTauTag.Configuration.RecoPFTauTag_cff")
14  # BDT-based tauIDs removed from standard tau sequence, but still used by boosed taus
15  process.PFTauMVAIdSequence = cms.Sequence(
16  process.hpsPFTauDiscriminationByMVA6rawElectronRejection+
17  process.hpsPFTauDiscriminationByMVA6ElectronRejection+
18  process.hpsPFTauDiscriminationByIsolationMVArun2v1DBoldDMwLTraw+
19  process.hpsPFTauDiscriminationByIsolationMVArun2v1DBoldDMwLT+
20  process.hpsPFTauDiscriminationByIsolationMVArun2v1DBnewDMwLTraw+
21  process.hpsPFTauDiscriminationByIsolationMVArun2v1DBnewDMwLT
22  )
23  process.PATTauSequence = cms.Sequence(
24  process.PFTau+process.PFTauMVAIdSequence+
25  process.makePatTaus+process.selectedPatTaus)
26  process.PATTauSequenceBoosted = cloneProcessingSnippet(process,process.PATTauSequence, "Boosted", addToTask = True)
27  process.recoTauAK4PFJets08RegionBoosted.src = 'boostedTauSeeds'
28  process.recoTauAK4PFJets08RegionBoosted.pfCandSrc = 'particleFlow'
29  process.recoTauAK4PFJets08RegionBoosted.pfCandAssocMapSrc = ('boostedTauSeeds', 'pfCandAssocMapForIsolation')
30  process.ak4PFJetsLegacyHPSPiZerosBoosted.jetSrc = 'boostedTauSeeds'
31  process.ak4PFJetsRecoTauChargedHadronsBoosted.jetSrc = 'boostedTauSeeds'
32  process.ak4PFJetsRecoTauChargedHadronsBoosted.builders[1].dRcone = 0.3
33  process.ak4PFJetsRecoTauChargedHadronsBoosted.builders[1].dRconeLimitedToJetArea = True
34  process.combinatoricRecoTausBoosted.jetSrc = 'boostedTauSeeds'
35  process.combinatoricRecoTausBoosted.builders[0].pfCandSrc = cms.InputTag('particleFlow')
36  ## Note JetArea is not defined for subjets (-> do not switch to True in hpsPFTauDiscriminationByLooseMuonRejection3Boosted, False is default)
37  ## The restiction to jetArea is turned to dRMatch=0.1 (-> use explicitly this modified value)
38  process.hpsPFTauDiscriminationByMuonRejection3Boosted.dRmuonMatch = 0.1
39  massSearchReplaceAnyInputTag(process.PATTauSequenceBoosted,cms.InputTag("ak4PFJets"),cms.InputTag("boostedTauSeeds"))
40  #Add BDT-based tauIDs still used by boosed taus
42  containerID(process.patTausBoosted.tauIDSources, "hpsPFTauDiscriminationByIsolationMVArun2v1DBoldDMwLTBoosted", "rawValues", [
43  ["byIsolationMVArun2DBoldDMwLTraw", "discriminator"]
44  ])
45  containerID(process.patTausBoosted.tauIDSources, "hpsPFTauDiscriminationByIsolationMVArun2v1DBoldDMwLTBoosted", "workingPoints", [
46  ["byVVLooseIsolationMVArun2DBoldDMwLT", "_VVLoose"],
47  ["byVLooseIsolationMVArun2DBoldDMwLT", "_VLoose"],
48  ["byLooseIsolationMVArun2DBoldDMwLT", "_Loose"],
49  ["byMediumIsolationMVArun2DBoldDMwLT", "_Medium"],
50  ["byTightIsolationMVArun2DBoldDMwLT", "_Tight"],
51  ["byVTightIsolationMVArun2DBoldDMwLT", "_VTight"],
52  ["byVVTightIsolationMVArun2DBoldDMwLT", "_VVTight"]
53  ])
54  containerID(process.patTausBoosted.tauIDSources, "hpsPFTauDiscriminationByIsolationMVArun2v1DBnewDMwLTBoosted", "rawValues", [
55  ["byIsolationMVArun2DBnewDMwLTraw", "discriminator"]
56  ])
57  containerID(process.patTausBoosted.tauIDSources, "hpsPFTauDiscriminationByIsolationMVArun2v1DBnewDMwLTBoosted", "workingPoints", [
58  ["byVVLooseIsolationMVArun2DBnewDMwLT", "_VVLoose"],
59  ["byVLooseIsolationMVArun2DBnewDMwLT", "_VLoose"],
60  ["byLooseIsolationMVArun2DBnewDMwLT", "_Loose"],
61  ["byMediumIsolationMVArun2DBnewDMwLT", "_Medium"],
62  ["byTightIsolationMVArun2DBnewDMwLT", "_Tight"],
63  ["byVTightIsolationMVArun2DBnewDMwLT", "_VTight"],
64  ["byVVTightIsolationMVArun2DBnewDMwLT", "_VVTight"]
65  ])
66  containerID(process.patTausBoosted.tauIDSources, "hpsPFTauDiscriminationByMVA6ElectronRejectionBoosted", "rawValues", [
67  ["againstElectronMVA6Raw", "discriminator"],
68  ["againstElectronMVA6category", "category"]
69  ])
70  containerID(process.patTausBoosted.tauIDSources, "hpsPFTauDiscriminationByMVA6ElectronRejectionBoosted", "workingPoints", [
71  ["againstElectronVLooseMVA6", "_VLoose"],
72  ["againstElectronLooseMVA6", "_Loose"],
73  ["againstElectronMediumMVA6", "_Medium"],
74  ["againstElectronTightMVA6", "_Tight"],
75  ["againstElectronVTightMVA6", "_VTight"]
76  ])
77  process.slimmedTausBoosted = process.slimmedTaus.clone(src = "selectedPatTausBoosted")
78  patAlgosToolsTask.add(process.slimmedTausBoosted)
79 
80  return process
def cloneProcessingSnippet
Definition: helpers.py:257
def massSearchReplaceAnyInputTag
Definition: MassReplace.py:79