ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/HbbAnalysis/python/pfTauConfig_cff.py
(Generate patch)

Comparing UserCode/HbbAnalysis/python/pfTauConfig_cff.py (file contents):
Revision 1.1 by amagnan, Wed Apr 15 12:03:00 2009 UTC vs.
Revision 1.4 by amagnan, Tue Feb 9 14:52:24 2010 UTC

# Line 9 | Line 9 | import copy
9  
10   from RecoTauTag.Configuration.RecoPFTauTag_cff import *
11  
12 ######################################################################################
13 ####    Reco tau producer
14 ######################################################################################
15
16 pfRecoTauProducerForTauAnalyses = copy.deepcopy(pfRecoTauProducer)
17
18 ### leading track/charged/neutral pion finding ###
19 pfRecoTauProducerForTauAnalyses.LeadTrack_minPt = cms.double(5.0)
20 pfRecoTauProducerForTauAnalyses.PFCand_minPt = cms.double(0.5)
21 pfRecoTauProducerForTauAnalyses.LeadPFCand_minPt = cms.double(5.0)
22 pfRecoTauProducerForTauAnalyses.LeadChargedHadrCand_minPt = cms.double(5.0)
23 pfRecoTauProducerForTauAnalyses.ChargedHadrCand_minPt = 1.0
24 pfRecoTauProducerForTauAnalyses.ChargedHadrCand_IsolAnnulus_minNhits = 8
25 pfRecoTauProducerForTauAnalyses.ChargedHadrCandLeadChargedHadrCand_tksmaxDZ = cms.double(0.2)
26 pfRecoTauProducerForTauAnalyses.UseChargedHadrCandLeadChargedHadrCand_tksDZconstraint = cms.bool(True)
27 pfRecoTauProducerForTauAnalyses.GammaCand_minPt = 1.5
28 pfRecoTauProducerForTauAnalyses.NeutrHadrCand_minPt = cms.double(1.0)
29 pfRecoTauProducerForTauAnalyses.TrackLeadTrack_maxDZ = cms.double(0.2)
30 pfRecoTauProducerForTauAnalyses.UseTrackLeadTrackDZconstraint = cms.bool(True)
31 pfRecoTauProducerForTauAnalyses.smearedPVsigmaY = cms.double(0.0015)
32 pfRecoTauProducerForTauAnalyses.smearedPVsigmaX = cms.double(0.0015)
33 pfRecoTauProducerForTauAnalyses.smearedPVsigmaZ = cms.double(0.005)
34 ### Match ###
35 pfRecoTauProducerForTauAnalyses.MatchingConeMetric = "DR"
36 pfRecoTauProducerForTauAnalyses.MatchingConeSizeFormula = "0.1"
37 pfRecoTauProducerForTauAnalyses.MatchingConeSize_max = 0.1
38 pfRecoTauProducerForTauAnalyses.MatchingConeSize_min = 0.0
39 ### Trk Sig ###
40 pfRecoTauProducerForTauAnalyses.TrackerSignalConeMetric = "DR"
41 pfRecoTauProducerForTauAnalyses.TrackerSignalConeSizeFormula = "5.0/ET"
42 pfRecoTauProducerForTauAnalyses.TrackerSignalConeSize_min = 0.07
43 pfRecoTauProducerForTauAnalyses.TrackerSignalConeSize_max = 0.15
44 ### Trk Iso ###
45 pfRecoTauProducerForTauAnalyses.TrackerIsolConeMetric = "DR"
46 pfRecoTauProducerForTauAnalyses.TrackerIsolConeSizeFormula = "0.5"
47 pfRecoTauProducerForTauAnalyses.TrackerIsolConeSize_max = "1.0"
48 pfRecoTauProducerForTauAnalyses.TrackerIsolConeSize_min = "0.0"
49 pfRecoTauProducerForTauAnalyses.Track_minPt = cms.double(1.0)
50 pfRecoTauProducerForTauAnalyses.Track_IsolAnnulus_minNhits = 8
51 ### Ecal Sig ###
52 pfRecoTauProducerForTauAnalyses.ECALSignalConeMetric = "DR"
53 pfRecoTauProducerForTauAnalyses.ECALSignalConeSizeFormula = "0.15"
54 pfRecoTauProducerForTauAnalyses.ECALSignalConeSize_max = "0.15"
55 pfRecoTauProducerForTauAnalyses.ECALSignalConeSize_min = "0.0"
56 ### Ecal Iso ###
57 pfRecoTauProducerForTauAnalyses.ECALIsolConeMetric = "DR"  
58 pfRecoTauProducerForTauAnalyses.ECALIsolConeSizeFormula = "0.50"
59 pfRecoTauProducerForTauAnalyses.ECALIsolConeSize_max = "1.0"
60 pfRecoTauProducerForTauAnalyses.ECALIsolConeSize_min = "0.0"
61 ### FixedArea ###
62 pfRecoTauProducerForTauAnalyses.AreaMetric_recoElements_maxabsEta = cms.double(2.5)
63 ### Electron rejection ###
64 pfRecoTauProducerForTauAnalyses.ElectronPreIDProducer = cms.InputTag("elecpreid")
65 pfRecoTauProducerForTauAnalyses.EcalStripSumE_deltaPhiOverQ_minValue = cms.double(-0.1)
66 pfRecoTauProducerForTauAnalyses.EcalStripSumE_deltaPhiOverQ_maxValue = cms.double(0.5)
67 pfRecoTauProducerForTauAnalyses.EcalStripSumE_minClusEnergy = cms.double(0.1)
68 pfRecoTauProducerForTauAnalyses.EcalStripSumE_deltaEta = cms.double(0.03)
69 pfRecoTauProducerForTauAnalyses.ElecPreIDLeadTkMatch_maxDR = cms.double(0.01)
70
71 pfRecoTauProducerForTauAnalyses.DataType = cms.string("AOD")
72
73 pfRecoTauPreDiscriminationForTauAnalyses = copy.deepcopy(pfRecoTauDiscriminationByIsolation)
74 pfRecoTauPreDiscriminationForTauAnalyses.PFTauProducer = 'pfRecoTauProducerForTauAnalyses'
75
76 ######################################################################################
77 ####    PAT layer 0
78 ######################################################################################
79
80 from PhysicsTools.PatAlgos.cleaningLayer0.pfTauCleaner_cfi import *
81
82 allLayer0PFTausForTauAnalyses = copy.deepcopy(allLayer0Taus)
83 allLayer0PFTausForTauAnalyses.tauSource = cms.InputTag("pfRecoTauProducerForTauAnalyses") #pfRecoTauProducerHighEfficiency
84 allLayer0PFTausForTauAnalyses.tauDiscriminatorSource = cms.InputTag("pfRecoTauPreDiscriminationForTauAnalyses") #...HighEfficiency
85
86 allLayer0PFTausForTauAnalyses.removeOverlaps = cms.PSet(
87    ## Flag or discard taus that match with clean electrons
88    #electrons = cms.PSet(    
89    #    collection = cms.InputTag("allLayer0Electrons")
90    #    deltaR     = cms.double(0.3)
91    #)
92    )
93
94
95 ######################################################################################
96 ####    tau discriminators
97 ######################################################################################
98
99 #from PhysicsTools.PatAlgos.recoLayer0.tauDiscriminators_cff import *
100
101 #copy the PFTauDiscriminator producer;
102 #instead of the AOD reco::PFTau collection, set the reco::PFTaus collection produced by PAT layer 0 cleaning
103 #as reference for PFTauDiscriminator objects
104 patPFRecoTauDiscriminationByIsolationForTauAnalyses = copy.deepcopy(pfRecoTauDiscriminationByIsolation)
105 patPFRecoTauDiscriminationByIsolationForTauAnalyses.PFTauProducer = cms.InputTag('allLayer0PFTausForTauAnalyses')
106
107 patPFRecoTauDiscriminationByLeadingTrackFindingForTauAnalyses = copy.deepcopy(pfRecoTauDiscriminationByLeadingTrackFinding)
108 patPFRecoTauDiscriminationByLeadingTrackFindingForTauAnalyses.PFTauProducer = cms.InputTag('allLayer0PFTausForTauAnalyses')
109
110 patPFRecoTauDiscriminationByLeadingTrackPtCutForTauAnalyses = copy.deepcopy(pfRecoTauDiscriminationByLeadingTrackPtCut)
111 patPFRecoTauDiscriminationByLeadingTrackPtCutForTauAnalyses.PFTauProducer = cms.InputTag('allLayer0PFTausForTauAnalyses')
112
113 patPFRecoTauDiscriminationByTrackIsolationForTauAnalyses = copy.deepcopy(pfRecoTauDiscriminationByTrackIsolation)
114 patPFRecoTauDiscriminationByTrackIsolationForTauAnalyses.PFTauProducer = cms.InputTag('allLayer0PFTausForTauAnalyses')
115
116 patPFRecoTauDiscriminationByECALIsolationForTauAnalyses = copy.deepcopy(pfRecoTauDiscriminationByECALIsolation)
117 patPFRecoTauDiscriminationByECALIsolationForTauAnalyses.PFTauProducer = cms.InputTag('allLayer0PFTausForTauAnalyses')
118
119 patPFRecoTauDiscriminationAgainstElectronForTauAnalyses = copy.deepcopy(pfRecoTauDiscriminationAgainstElectron)
120 patPFRecoTauDiscriminationAgainstElectronForTauAnalyses.PFTauProducer = cms.InputTag('allLayer0PFTausForTauAnalyses')
121
122 patPFRecoTauDiscriminationAgainstMuonForTauAnalyses = copy.deepcopy(pfRecoTauDiscriminationAgainstMuon)
123 patPFRecoTauDiscriminationAgainstMuonForTauAnalyses.PFTauProducer = cms.InputTag('allLayer0PFTausForTauAnalyses')
124
125 patPFTauDiscriminationForTauAnalyses = cms.Sequence(
126    patPFRecoTauDiscriminationByIsolationForTauAnalyses
127    +patPFRecoTauDiscriminationByLeadingTrackFindingForTauAnalyses
128    +patPFRecoTauDiscriminationByLeadingTrackPtCutForTauAnalyses
129    +patPFRecoTauDiscriminationByTrackIsolationForTauAnalyses
130    +patPFRecoTauDiscriminationByECALIsolationForTauAnalyses
131    +patPFRecoTauDiscriminationAgainstElectronForTauAnalyses
132    +patPFRecoTauDiscriminationAgainstMuonForTauAnalyses
133    )
134
135
136 ######################################################################################
137 ####    tau isolation
138 ######################################################################################
139
140
141
142 ######################################################################################
143 ####    trigger matching
144 ######################################################################################
145
146
147
148 ######################################################################################
149 ####    MC matching
150 ######################################################################################
151
152 from PhysicsTools.PatAlgos.mcMatchLayer0.tauMatch_cfi import *
153
154 pfTauMatchForTauAnalyses = copy.deepcopy(tauMatch)
155 pfTauMatchForTauAnalyses.src = cms.InputTag("allLayer0PFTausForTauAnalyses")
156 pfTauMatchForTauAnalyses.matched = cms.InputTag("genParticles")
157 pfTauMatchForTauAnalyses.mcPdgId     = cms.vint32(15)
158 pfTauMatchForTauAnalyses.checkCharge = cms.bool(True)
159 pfTauMatchForTauAnalyses.mcStatus = cms.vint32(2) # PYTHIA status code (1 = stable, 2 = shower, 3 = hard scattering)
160                                                     # NOTE that Taus can only be status 3 or 2, never 1!
161 pfTauMatchForTauAnalyses.maxDeltaR = cms.double(0.3)
162 pfTauMatchForTauAnalyses.maxDPtRel = cms.double(3.0)
163 pfTauMatchForTauAnalyses.resolveAmbiguities = cms.bool(True)
164 pfTauMatchForTauAnalyses.resolveByMatchQuality = cms.bool(False)
165
166 pfTauGenJetMatchForTauAnalyses = copy.deepcopy(tauGenJetMatch)
167 pfTauGenJetMatchForTauAnalyses.src      = cms.InputTag("allLayer0PFTausForTauAnalyses")
168 pfTauGenJetMatchForTauAnalyses.matched  = cms.InputTag("tauGenJets")
169 pfTauGenJetMatchForTauAnalyses.maxDeltaR = cms.double(0.1)
170 pfTauGenJetMatchForTauAnalyses.maxDPtRel = cms.double(3.0)
171 pfTauGenJetMatchForTauAnalyses.resolveAmbiguities = cms.bool(True)
172 pfTauGenJetMatchForTauAnalyses.resolveByMatchQuality = cms.bool(False)
173
174
175 ######################################################################################
176 ####    PAT layer 1
177 ######################################################################################
178
179 from PhysicsTools.PatAlgos.producersLayer1.tauProducer_cfi import *
180
181
182 allLayer1PFTausForTauAnalyses = copy.deepcopy(allLayer1Taus)
183 allLayer1PFTausForTauAnalyses.tauSource = cms.InputTag("allLayer0PFTausForTauAnalyses")
184
185 allLayer1PFTausForTauAnalyses.embedLeadTrack       = cms.bool(True)
186 allLayer1PFTausForTauAnalyses.embedSignalTracks    = cms.bool(True)
187 allLayer1PFTausForTauAnalyses.embedIsolationTracks = cms.bool(True)
188
189 allLayer1PFTausForTauAnalyses.isolation = cms.PSet()
190 allLayer1PFTausForTauAnalyses.isoDeposits = cms.PSet()
191
192 allLayer1PFTausForTauAnalyses.addTauID = cms.bool(True)
193 allLayer1PFTausForTauAnalyses.tauIDSources = cms.PSet(
194    leadingTrackFinding = cms.InputTag("patPFRecoTauDiscriminationByLeadingTrackFindingForTauAnalyses"),
195    leadingTrackPtCut = cms.InputTag("patPFRecoTauDiscriminationByLeadingTrackPtCutForTauAnalyses"),
196    trackIsolation = cms.InputTag("patPFRecoTauDiscriminationByTrackIsolationForTauAnalyses"),
197    ecalIsolation = cms.InputTag("patPFRecoTauDiscriminationByECALIsolationForTauAnalyses"),
198    byIsolation = cms.InputTag("patPFRecoTauDiscriminationByIsolationForTauAnalyses"),
199    againstElectron = cms.InputTag("patPFRecoTauDiscriminationAgainstElectronForTauAnalyses"),
200    againstMuon = cms.InputTag("patPFRecoTauDiscriminationAgainstMuonForTauAnalyses")    
201    )
202
203 allLayer1PFTausForTauAnalyses.addTrigMatch = cms.bool(False)
204 #trigPrimMatch = cms.VInputTag(cms.InputTag("tauTrigMatchHLT1Tau"))
205
206 allLayer1PFTausForTauAnalyses.addGenMatch = cms.bool(True)
207 allLayer1PFTausForTauAnalyses.embedGenMatch = cms.bool(True)
208 allLayer1PFTausForTauAnalyses.genParticleMatch = cms.InputTag("pfTauMatchForTauAnalyses")
209
210 allLayer1PFTausForTauAnalyses.addGenJetMatch = cms.bool(True)
211 allLayer1PFTausForTauAnalyses.embedGenJetMatch = cms.bool(True)
212    
213 allLayer1PFTausForTauAnalyses.genJetMatch = cms.InputTag("pfTauGenJetMatchForTauAnalyses")
214
215
216 ######################################################################################
217 ####    Final PAT sequences
218 ######################################################################################
219
220 patBeforeLayer0AODPFTauDiscrimination = cms.Sequence( pfRecoTauProducerForTauAnalyses
221                                                      *pfRecoTauPreDiscriminationForTauAnalyses )
222
223 patLayer0PFTausForTauAnalyses = cms.Sequence( patBeforeLayer0AODPFTauDiscrimination
224                                              *allLayer0PFTausForTauAnalyses
225                                              *patPFTauDiscriminationForTauAnalyses
226                                              *(pfTauMatchForTauAnalyses + pfTauGenJetMatchForTauAnalyses)
227                                              )
228 patLayer1PFTausForTauAnalyses = cms.Sequence( allLayer1PFTausForTauAnalyses )

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines