test
CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Functions | Variables
PFRecoTauDiscriminationForChargedHiggs_cfi Namespace Reference

Functions

def addDiscriminator
 
def addDiscriminatorSequence
 
def addPFTauDiscriminationSequenceForChargedHiggs
 

Variables

tuple hplusTrackQualityCuts = PFTauQualityCuts.clone()
 

Function Documentation

def PFRecoTauDiscriminationForChargedHiggs_cfi.addDiscriminator (   process,
  tau,
  name,
  module 
)

Definition at line 22 of file PFRecoTauDiscriminationForChargedHiggs_cfi.py.

Referenced by addDiscriminatorSequence().

22 
23 def addDiscriminator(process, tau, name, module):
24  producerPostfix = ""
25  if tau != "hpsTancTaus":
26  producerPostfix = "Producer"
27  module.PFTauProducer = cms.InputTag(tau+producerPostfix)
28  process.__setattr__(tau+name, module)
29  return module
def PFRecoTauDiscriminationForChargedHiggs_cfi.addDiscriminatorSequence (   process,
  tau 
)

Definition at line 30 of file PFRecoTauDiscriminationForChargedHiggs_cfi.py.

References addDiscriminator().

Referenced by addPFTauDiscriminationSequenceForChargedHiggs().

30 
31 def addDiscriminatorSequence(process, tau):
32  leadingTrackFinding = tau+"DiscriminationByLeadingTrackFinding"
33  if tau == "hpsPFTau":
34  leadingTrackFinding = tau+"DiscriminationByDecayModeFinding"
35 
36  lst = []
37 
38  lst.append(addDiscriminator(process, tau, "DiscriminationForChargedHiggsByLeadingTrackPtCut",
39  pfRecoTauDiscriminationByLeadingTrackPtCut.clone(
40  MinPtLeadingObject = cms.double(20.0),
41  qualityCuts = hplusTrackQualityCuts
42  )))
43 
44  lst.append(addDiscriminator(process, tau, "DiscriminationByCharge",
45  pfRecoTauDiscriminationByCharge.clone()))
46 
47  # index -1 points to the last element in the list
48  lst.append(addDiscriminator(process, tau, "DiscriminationForChargedHiggsByECALIsolation",
49  pfRecoTauDiscriminationByECALIsolation.clone()))
50  lst[-1].Prediscriminants.leadTrack.Producer = cms.InputTag(leadingTrackFinding)
51 
52  lst.append(addDiscriminator(process, tau, "DiscriminationForChargedHiggsAgainstElectron",
53  pfRecoTauDiscriminationAgainstElectron.clone()))
54  lst[-1].Prediscriminants.leadTrack.Producer = cms.InputTag(leadingTrackFinding)
55 
56  lst.append(addDiscriminator(process, tau, "DiscriminationForChargedHiggsAgainstMuon",
57  pfRecoTauDiscriminationAgainstMuon.clone()))
58  lst[-1].Prediscriminants.leadTrack.Producer = cms.InputTag(leadingTrackFinding)
59 
60  lst.append(addDiscriminator(process, tau, "DiscriminationByTauPolarization",
61  pfRecoTauDiscriminationByTauPolarization.clone()))
62  lst[-1].Prediscriminants.leadTrack.Producer = cms.InputTag(leadingTrackFinding)
63 
64  lst.append(addDiscriminator(process, tau, "DiscriminationByDeltaE",
65  pfRecoTauDiscriminationByDeltaE.clone()))
66  lst[-1].Prediscriminants.leadTrack.Producer = cms.InputTag(leadingTrackFinding)
67 
68  lst.append(addDiscriminator(process, tau, "DiscriminationByInvMass",
69  pfRecoTauDiscriminationByInvMass.clone()))
70  lst[-1].Prediscriminants.leadTrack.Producer = cms.InputTag(leadingTrackFinding)
71 
72  lst.append(addDiscriminator(process, tau, "DiscriminationByFlightPathSignificance",
73  pfRecoTauDiscriminationByFlightPathSignificance.clone()))
74  lst[-1].Prediscriminants.leadTrack.Producer = cms.InputTag(leadingTrackFinding)
75 
76  lst.append(addDiscriminator(process, tau, "DiscriminationBy1Prong",
77  pfRecoTauDiscriminationByNProngs.clone(
78  nProngs = cms.uint32(1)
79  )))
80  lst[-1].Prediscriminants.leadTrack.Producer = cms.InputTag(leadingTrackFinding)
81 
82  lst.append(addDiscriminator(process, tau, "DiscriminationBy3Prongs",
83  pfRecoTauDiscriminationByNProngs.clone(
84  nProngs = cms.uint32(3)
85  )))
86  lst[-1].Prediscriminants.leadTrack.Producer = cms.InputTag(leadingTrackFinding)
87 
88  lst.append(addDiscriminator(process, tau, "DiscriminationForChargedHiggsBy3ProngCombined",
89  pfRecoTauDiscriminationByNProngs.clone(
90  nProngs = cms.uint32(3),
91  Prediscriminants = cms.PSet(
92  BooleanOperator = cms.string("and"),
93  leadTrack = cms.PSet(
94  Producer = cms.InputTag(leadingTrackFinding),
95  cut = cms.double(0.5)
96  ),
97  deltaE = cms.PSet(
98  Producer = cms.InputTag(tau+'DiscriminationByDeltaE'),
99  cut = cms.double(0.5)
100  ),
101  invMass = cms.PSet(
102  Producer = cms.InputTag(tau+'DiscriminationByInvMass'),
103  cut = cms.double(0.5)
104  ),
105  flightPathSig = cms.PSet(
106  Producer = cms.InputTag(tau+'DiscriminationByFlightPathSignificance'),
107  cut = cms.double(0.5)
108  )
109  )
110  )))
111  lst[-1].Prediscriminants.leadTrack.Producer = cms.InputTag(leadingTrackFinding)
112 
113  lst.append(addDiscriminator(process, tau, "DiscriminationForChargedHiggsBy1or3Prongs",
114  pfRecoTauDiscriminationByLeadingTrackFinding.clone(
115  Prediscriminants = cms.PSet(
116  BooleanOperator = cms.string("or"),
117  oneProng = cms.PSet(
118  Producer = cms.InputTag(tau+'DiscriminationBy1Prong'),
119  cut = cms.double(0.5)
120  ),
121  threeProng = cms.PSet(
122  Producer = cms.InputTag(tau+'DiscriminationForChargedHiggsBy3ProngCombined'),
123  cut = cms.double(0.5)
124  )
125  )
126  )))
127  lst.append(addDiscriminator(process, tau, "DiscriminationForChargedHiggs",
128  pfRecoTauDiscriminationByTrackIsolation.clone(
129  Prediscriminants = cms.PSet(
130  BooleanOperator = cms.string("and"),
131  leadingTrack = cms.PSet(
132  Producer = cms.InputTag(tau+'DiscriminationForChargedHiggsByLeadingTrackPtCut'),
133  cut = cms.double(0.5)
134  ),
135  charge = cms.PSet(
136  Producer = cms.InputTag(tau+'DiscriminationByCharge'),
137  cut = cms.double(0.5)
138  ),
139  ecalIsolation = cms.PSet(
140  Producer = cms.InputTag(tau+'DiscriminationForChargedHiggsByECALIsolation'),
141  cut = cms.double(0.5)
142  ),
143  electronVeto = cms.PSet(
144  Producer = cms.InputTag(tau+'DiscriminationForChargedHiggsAgainstElectron'),
145  cut = cms.double(0.5)
146  ),
147  polarization = cms.PSet(
148  Producer = cms.InputTag(tau+'DiscriminationByTauPolarization'),
149  cut = cms.double(0.5)
150  ),
151  prongs = cms.PSet(
152  Producer = cms.InputTag(tau+'DiscriminationForChargedHiggsBy1or3Prongs'),
153  cut = cms.double(0.5)
154  )
155  )
156  )))
157 
158  sequence = cms.Sequence()
159  for m in lst:
160  sequence *= m
161 
162  process.__setattr__(tau+"HplusDiscriminationSequence", sequence)
163  return sequence
def PFRecoTauDiscriminationForChargedHiggs_cfi.addPFTauDiscriminationSequenceForChargedHiggs (   process,
  tauAlgos = ["shrinkingConePFTau"] 
)

Definition at line 164 of file PFRecoTauDiscriminationForChargedHiggs_cfi.py.

References addDiscriminatorSequence().

165 def addPFTauDiscriminationSequenceForChargedHiggs(process, tauAlgos=["shrinkingConePFTau"]):
166  process.PFTauDiscriminationSequenceForChargedHiggs = cms.Sequence()
167  for algo in tauAlgos:
168  process.PFTauDiscriminationSequenceForChargedHiggs *= addDiscriminatorSequence(process, algo)
169 
170  return process.PFTauDiscriminationSequenceForChargedHiggs

Variable Documentation

tuple PFRecoTauDiscriminationForChargedHiggs_cfi.hplusTrackQualityCuts = PFTauQualityCuts.clone()

Definition at line 5 of file PFRecoTauDiscriminationForChargedHiggs_cfi.py.