test
CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
PFRecoTauDiscriminationByHPSSelection_cfi.py
Go to the documentation of this file.
2 
3 from RecoTauTag.RecoTau.TauDiscriminatorTools import noPrediscriminants
4 from RecoTauTag.RecoTau.PFRecoTauPFJetInputs_cfi import PFRecoTauPFJetInputs
5 
6 decayMode_1Prong0Pi0 = cms.PSet(
7  nCharged = cms.uint32(1),
8  nPiZeros = cms.uint32(0),
9  nTracksMin = cms.uint32(1),
10  nChargedPFCandsMin = cms.uint32(1),
11  # Always passes
12  # If an PF electron is selected as the lead track, the tau can have
13  # negative mass. FIXME - investigate this
14  minMass = cms.double(-1.e3),
15  maxMass = cms.string("1.")
16 )
17 decayMode_1Prong1Pi0 = cms.PSet(
18  nCharged = cms.uint32(1),
19  nPiZeros = cms.uint32(1),
20  nTracksMin = cms.uint32(1),
21  nChargedPFCandsMin = cms.uint32(1),
22  minMass = cms.double(0.3),
23  maxMass = cms.string("max(1.3, min(1.3*sqrt(pt/100.), 4.2))"),
24  assumeStripMass = cms.double(0.1349)
25 )
26 decayMode_1Prong2Pi0 = cms.PSet(
27  nCharged = cms.uint32(1),
28  nPiZeros = cms.uint32(2),
29  nTracksMin = cms.uint32(1),
30  nChargedPFCandsMin = cms.uint32(1),
31  minMass = cms.double(0.4),
32  maxMass = cms.string("max(1.2, min(1.2*sqrt(pt/100.), 4.0))"),
33  minPi0Mass = cms.double(0.05),
34  maxPi0Mass = cms.double(0.2),
35  # Here the strips are assumed to correspond to photons
36  assumeStripMass = cms.double(0.0)
37 )
38 decayMode_2Prong0Pi0 = cms.PSet(
39  nCharged = cms.uint32(2),
40  nPiZeros = cms.uint32(0),
41  nTracksMin = cms.uint32(2),
42  nChargedPFCandsMin = cms.uint32(1),
43  minMass = cms.double(0.),
44  maxMass = cms.string("1.2")
45 )
46 decayMode_2Prong1Pi0 = cms.PSet(
47  nCharged = cms.uint32(2),
48  nPiZeros = cms.uint32(1),
49  nTracksMin = cms.uint32(2),
50  nChargedPFCandsMin = cms.uint32(1),
51  minMass = cms.double(0.),
52  maxMass = cms.string("max(1.2, min(1.2*sqrt(pt/100.), 4.0))")
53 )
54 decayMode_3Prong0Pi0 = cms.PSet(
55  nCharged = cms.uint32(3),
56  nPiZeros = cms.uint32(0),
57  nTracksMin = cms.uint32(2),
58  nChargedPFCandsMin = cms.uint32(1),
59  minMass = cms.double(0.8),
60  maxMass = cms.string("1.5")
61 )
62 
63 hpsSelectionDiscriminator = cms.EDProducer(
64  "PFRecoTauDiscriminationByHPSSelection",
65  PFTauProducer = cms.InputTag('combinatoricRecoTaus'),
66  Prediscriminants = noPrediscriminants,
67  matchingCone = PFRecoTauPFJetInputs.jetConeSize,
68  minTauPt = cms.double(0.0),
69  coneSizeFormula = cms.string("max(min(0.1, 3.0/pt()), 0.05)"),
70  decayModes = cms.VPSet(
71  decayMode_1Prong0Pi0,
72  decayMode_1Prong1Pi0,
73  decayMode_1Prong2Pi0,
74  decayMode_2Prong0Pi0,
75  decayMode_2Prong1Pi0,
76  decayMode_3Prong0Pi0
77  ),
78  requireTauChargedHadronsToBeChargedPFCands = cms.bool(False)
79 )
80 
81 
82