ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/HbbAnalysis/python/caloTauConfig_cff.py
Revision: 1.1
Committed: Wed Apr 15 12:02:59 2009 UTC (16 years ago) by amagnan
Content type: text/x-python
Branch: MAIN
Log Message:
add python configuration files

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