ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/HbbAnalysis/python/caloTauConfig_cff.py
Revision: 1.2
Committed: Fri Apr 17 14:26:35 2009 UTC (16 years ago) by amagnan
Content type: text/x-python
Branch: MAIN
CVS Tags: v00-03-00, v00-02-01, v00-02-00, v00-01-00
Changes since 1.1: +21 -24 lines
Log Message:
add Tau histos+debug btag for JPT/PF jets

File Contents

# User Rev Content
1 amagnan 1.1 ########################################
2     #### Created 08-Apr-09
3     #### by A.-M. Magnan
4     #### a.magnan@imperial.ac.uk
5     ########################################
6    
7     import FWCore.ParameterSet.Config as cms
8     import copy
9    
10     from RecoTauTag.Configuration.RecoTauTag_cff import *
11    
12     ######################################################################################
13     #### Reco tau producer
14     ######################################################################################
15    
16     caloRecoTauProducerForTauAnalyses = copy.deepcopy(caloRecoTauProducer)
17    
18     caloRecoTauProducerForTauAnalyses.TrackerIsolConeMetric = cms.string('DR') ## *
19 amagnan 1.2 caloRecoTauProducerForTauAnalyses.TrackerIsolConeSizeFormula = cms.string('0.50') ## **
20     caloRecoTauProducerForTauAnalyses.TrackerIsolConeSize_min = cms.double(0.0)
21     caloRecoTauProducerForTauAnalyses.TrackerIsolConeSize_max = cms.double(0.6)
22 amagnan 1.1 caloRecoTauProducerForTauAnalyses.TrackerSignalConeMetric = cms.string('DR') ## *
23 amagnan 1.2 caloRecoTauProducerForTauAnalyses.TrackerSignalConeSizeFormula = cms.string('0.07') ## **
24     caloRecoTauProducerForTauAnalyses.TrackerSignalConeSize_min = cms.double(0.0)
25     caloRecoTauProducerForTauAnalyses.TrackerSignalConeSize_max = cms.double(0.6)
26 amagnan 1.1
27 amagnan 1.2 caloRecoTauProducerForTauAnalyses.ECALIsolConeMetric = cms.string('DR') ## *
28     caloRecoTauProducerForTauAnalyses.ECALIsolConeSizeFormula = cms.string('0.50') ## **
29     caloRecoTauProducerForTauAnalyses.ECALIsolConeSize_min = cms.double(0.0)
30     caloRecoTauProducerForTauAnalyses.ECALIsolConeSize_max = cms.double(0.6)
31     caloRecoTauProducerForTauAnalyses.ECALSignalConeMetric = cms.string('DR') ## *
32     caloRecoTauProducerForTauAnalyses.ECALSignalConeSizeFormula = cms.string('0.15') ## **
33 amagnan 1.1 caloRecoTauProducerForTauAnalyses.ECALSignalConeSize_min = cms.double(0.0)
34 amagnan 1.2 caloRecoTauProducerForTauAnalyses.ECALSignalConeSize_max = cms.double(0.6)
35    
36 amagnan 1.1 caloRecoTauProducerForTauAnalyses.MatchingConeMetric = cms.string('DR') ## *
37     caloRecoTauProducerForTauAnalyses.MatchingConeSizeFormula = cms.string('0.10') ## **
38 amagnan 1.2 caloRecoTauProducerForTauAnalyses.MatchingConeSize_min = cms.double(0.0)
39     caloRecoTauProducerForTauAnalyses.MatchingConeSize_max = cms.double(0.6)
40 amagnan 1.1
41     caloRecoTauProducerForTauAnalyses.AreaMetric_recoElements_maxabsEta = cms.double(2.5)
42    
43     caloRecoTauProducerForTauAnalyses.JetPtMin = cms.double(0.0)
44     caloRecoTauProducerForTauAnalyses.TrackLeadTrack_maxDZ = cms.double(0.2)
45     caloRecoTauProducerForTauAnalyses.Track_minPt = cms.double(1.0)
46 amagnan 1.2 caloRecoTauProducerForTauAnalyses.LeadTrack_minPt = cms.double(5.0)
47 amagnan 1.1 caloRecoTauProducerForTauAnalyses.IsolationTrack_minPt = cms.double(0.5)
48     caloRecoTauProducerForTauAnalyses.IsolationTrack_minHits = cms.uint32(0)
49    
50     caloRecoTauProducerForTauAnalyses.UseTrackLeadTrackDZconstraint = cms.bool(True)
51 amagnan 1.2 caloRecoTauProducerForTauAnalyses.PVProducer = cms.string('offlinePrimaryVertices')
52 amagnan 1.1 caloRecoTauProducerForTauAnalyses.smearedPVsigmaY = cms.double(0.0015)
53     caloRecoTauProducerForTauAnalyses.smearedPVsigmaX = cms.double(0.0015)
54     caloRecoTauProducerForTauAnalyses.smearedPVsigmaZ = cms.double(0.005)
55 amagnan 1.2
56 amagnan 1.1 caloRecoTauProducerForTauAnalyses.CaloRecoTauTagInfoProducer = cms.InputTag("caloRecoTauTagInfoProducer")
57     # parameters of the considered EcalRecHits
58     caloRecoTauProducerForTauAnalyses.ESRecHitsSource = cms.InputTag("ecalPreshowerRecHit","EcalRecHitsES")
59     caloRecoTauProducerForTauAnalyses.EBRecHitsSource = cms.InputTag("ecalRecHit","EcalRecHitsEB")
60     caloRecoTauProducerForTauAnalyses.EERecHitsSource = cms.InputTag("ecalRecHit","EcalRecHitsEE")
61 amagnan 1.2 caloRecoTauProducerForTauAnalyses.ECALRecHit_minEt = cms.double(0.5)
62 amagnan 1.1
63     caloRecoTauPreDiscriminationForTauAnalyses = copy.deepcopy(caloRecoTauDiscriminationByIsolation)
64     caloRecoTauPreDiscriminationForTauAnalyses.CaloTauProducer = 'caloRecoTauProducerForTauAnalyses'
65    
66    
67     ######################################################################################
68     #### PAT layer 0
69     ######################################################################################
70    
71     from PhysicsTools.PatAlgos.cleaningLayer0.caloTauCleaner_cfi import *
72    
73     allLayer0CaloTausForTauAnalyses = copy.deepcopy(allLayer0CaloTaus)
74     allLayer0CaloTausForTauAnalyses.tauSource = cms.InputTag("caloRecoTauProducerForTauAnalyses")
75     allLayer0CaloTausForTauAnalyses.tauDiscriminatorSource = cms.InputTag("caloRecoTauPreDiscriminationForTauAnalyses")
76    
77     allLayer0CaloTausForTauAnalyses.removeOverlaps = cms.PSet(
78     ## Flag or discard taus that match with clean electrons
79     #electrons = cms.PSet(
80     # collection = cms.InputTag("allLayer0Electrons")
81     # deltaR = cms.double(0.3)
82     #)
83     )
84    
85    
86     ######################################################################################
87     #### tau discriminators
88     ######################################################################################
89    
90     #from PhysicsTools.PatAlgos.recoLayer0.tauDiscriminators_cff import *
91    
92     patCaloRecoTauDiscriminationByIsolationForTauAnalyses = copy.deepcopy(caloRecoTauDiscriminationByIsolation)
93     patCaloRecoTauDiscriminationByIsolationForTauAnalyses.CaloTauProducer = 'allLayer0CaloTausForTauAnalyses'
94     patCaloRecoTauDiscriminationByLeadingTrackFindingForTauAnalyses = copy.deepcopy(caloRecoTauDiscriminationByLeadingTrackFinding)
95     patCaloRecoTauDiscriminationByLeadingTrackFindingForTauAnalyses.CaloTauProducer = 'allLayer0CaloTausForTauAnalyses'
96     patCaloRecoTauDiscriminationByLeadingTrackPtCutForTauAnalyses = copy.deepcopy(caloRecoTauDiscriminationByLeadingTrackPtCut)
97     patCaloRecoTauDiscriminationByLeadingTrackPtCutForTauAnalyses.CaloTauProducer = 'allLayer0CaloTausForTauAnalyses'
98    
99     patCaloTauDiscriminationForTauAnalyses = cms.Sequence(
100     #patCaloRecoTauDiscriminationAgainstElectronForTauAnalyses + # Not on AOD
101     patCaloRecoTauDiscriminationByIsolationForTauAnalyses +
102     patCaloRecoTauDiscriminationByLeadingTrackFindingForTauAnalyses +
103     patCaloRecoTauDiscriminationByLeadingTrackPtCutForTauAnalyses
104     )
105    
106     ######################################################################################
107     #### tau isolation
108     ######################################################################################
109    
110 amagnan 1.2 #not needed: variables filled by CaloTauProducer already ???
111 amagnan 1.1
112    
113     ######################################################################################
114     #### trigger matching
115     ######################################################################################
116    
117     #from PhysicsTools.PatAlgos.triggerLayer0.trigMatchSequences_cff import *
118    
119    
120     ######################################################################################
121     #### MC matching
122     ######################################################################################
123    
124     from PhysicsTools.PatAlgos.mcMatchLayer0.tauMatch_cfi import *
125    
126     caloTauMatchForTauAnalyses = copy.deepcopy(tauMatch)
127     caloTauMatchForTauAnalyses.src = cms.InputTag("allLayer0CaloTausForTauAnalyses")
128     caloTauMatchForTauAnalyses.matched = cms.InputTag("genParticles")
129     caloTauMatchForTauAnalyses.mcPdgId = cms.vint32(15)
130     caloTauMatchForTauAnalyses.checkCharge = cms.bool(True)
131     caloTauMatchForTauAnalyses.mcStatus = cms.vint32(2) # PYTHIA status code (1 = stable, 2 = shower, 3 = hard scattering)
132     # NOTE that Taus can only be status 3 or 2, never 1!
133     caloTauMatchForTauAnalyses.maxDeltaR = cms.double(0.3)
134     caloTauMatchForTauAnalyses.maxDPtRel = cms.double(3.0)
135     caloTauMatchForTauAnalyses.resolveAmbiguities = cms.bool(True)
136     caloTauMatchForTauAnalyses.resolveByMatchQuality = cms.bool(False)
137    
138     caloTauGenJetMatchForTauAnalyses = copy.deepcopy(tauGenJetMatch)
139     caloTauGenJetMatchForTauAnalyses.src = cms.InputTag("allLayer0CaloTausForTauAnalyses")
140     caloTauGenJetMatchForTauAnalyses.matched = cms.InputTag("tauGenJets")
141     caloTauGenJetMatchForTauAnalyses.maxDeltaR = cms.double(0.1)
142     caloTauGenJetMatchForTauAnalyses.maxDPtRel = cms.double(3.0)
143     caloTauGenJetMatchForTauAnalyses.resolveAmbiguities = cms.bool(True)
144     caloTauGenJetMatchForTauAnalyses.resolveByMatchQuality = cms.bool(False)
145    
146    
147     ######################################################################################
148     #### PAT layer 1
149     ######################################################################################
150    
151     from PhysicsTools.PatAlgos.producersLayer1.tauProducer_cfi import *
152    
153     allLayer1CaloTausForTauAnalyses = copy.deepcopy(allLayer1Taus)
154     allLayer1CaloTausForTauAnalyses.tauSource = cms.InputTag("allLayer0CaloTausForTauAnalyses")
155    
156     allLayer1CaloTausForTauAnalyses.embedLeadTrack = cms.bool(True)
157     allLayer1CaloTausForTauAnalyses.embedSignalTracks = cms.bool(True)
158     allLayer1CaloTausForTauAnalyses.embedIsolationTracks = cms.bool(True)
159    
160     allLayer1CaloTausForTauAnalyses.isolation = cms.PSet()
161     allLayer1CaloTausForTauAnalyses.isoDeposits = cms.PSet()
162    
163     allLayer1CaloTausForTauAnalyses.addTauID = cms.bool(True)
164     allLayer1CaloTausForTauAnalyses.tauIDSources = cms.PSet(
165     byIsolation = cms.InputTag("patCaloRecoTauDiscriminationByIsolationForTauAnalyses"),
166     leadingTrackFinding = cms.InputTag("patCaloRecoTauDiscriminationByLeadingTrackFindingForTauAnalyses"),
167     leadingTrackPtCut = cms.InputTag("patCaloRecoTauDiscriminationByLeadingTrackPtCutForTauAnalyses"),
168     )
169    
170     allLayer1CaloTausForTauAnalyses.addTrigMatch = cms.bool(False)
171     #trigPrimMatch = cms.VInputTag(cms.InputTag("tauTrigMatchHLT1Tau"))
172    
173     allLayer1CaloTausForTauAnalyses.addGenMatch = cms.bool(True)
174     allLayer1CaloTausForTauAnalyses.embedGenMatch = cms.bool(True)
175     allLayer1CaloTausForTauAnalyses.genParticleMatch = cms.InputTag("caloTauMatchForTauAnalyses")
176    
177     allLayer1CaloTausForTauAnalyses.addGenJetMatch = cms.bool(True)
178     allLayer1CaloTausForTauAnalyses.embedGenJetMatch = cms.bool(True)
179    
180     allLayer1CaloTausForTauAnalyses.genJetMatch = cms.InputTag("caloTauGenJetMatchForTauAnalyses")
181    
182    
183     ######################################################################################
184     #### Final PAT sequences
185     ######################################################################################
186    
187     patBeforeLayer0AODCaloTauDiscrimination = cms.Sequence( caloRecoTauProducerForTauAnalyses
188     *caloRecoTauPreDiscriminationForTauAnalyses
189     )
190    
191     patLayer0CaloTausForTauAnalyses = cms.Sequence( patBeforeLayer0AODCaloTauDiscrimination
192     *allLayer0CaloTausForTauAnalyses
193     *patCaloTauDiscriminationForTauAnalyses
194     *(caloTauMatchForTauAnalyses+caloTauGenJetMatchForTauAnalyses)
195     )
196     patLayer1CaloTausForTauAnalyses = cms.Sequence( allLayer1CaloTausForTauAnalyses )