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

File Contents

# Content
1 ########################################
2 #### Created 07-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 UserCode.HbbAnalysis.jetConfig_cff import *
11
12 ######################################################################################
13 #### PAT layer 0 cleaning
14 ######################################################################################
15
16 from PhysicsTools.PatAlgos.cleaningLayer0.pfJetCleaner_cfi import *
17
18 allLayer0PFJetsForTauAnalyses = copy.deepcopy(allLayer0PFJets)
19 allLayer0PFJetsForTauAnalyses.jetSource = cms.InputTag("iterativeCone5PFJets")
20 allLayer0PFJetsForTauAnalyses.removeOverlaps.electrons = cms.PSet() # disable default to remove overlap with electrons
21 #allLayer0PFJetsForTauAnalyses.removeOverlaps.electrons.collection = cms.InputTag("allLayer0ElectronsForTauAnalyses")
22 #allLayer0PFJetsForTauAnalyses.removeOverlaps.electrons.deltaR = cms.double(0.3) ##
23 #allLayer0PFJetsForTauAnalyses.removeOverlaps.electrons.cut = cms.string('pt > 10 & (trackIso()+ecalIso())/pt < 0.18')
24 #allLayer0PFJetsForTauAnalyses.removeOverlaps.electrons.flags = cms.vstring('Isolation/Tracker')
25
26 allLayer0PFJetsForTauAnalyses.removeOverlaps.taus = cms.PSet() # disable default to remove overlap with electrons
27 #allLayer0PFJetsForTauAnalyses.removeOverlaps.taus.collection = cms.InputTag("allLayer0PFTausForTauAnalyses")
28 #allLayer0PFJetsForTauAnalyses.removeOverlaps.taus.deltaR = cms.double(0.3) ##
29 #allLayer0PFJetsForTauAnalyses.removeOverlaps.taus.cut = cms.string('')
30 #allLayer0PFJetsForTauAnalyses.removeOverlaps.taus.flags = cms.vstring('Isolation/Tracker')
31
32 ######################################################################################
33 #### Flavour ID
34 ######################################################################################
35
36 jetPartonAssociationForPFForTauAnalyses = copy.deepcopy(jetPartonAssociationForTauAnalyses)
37 jetPartonAssociationForPFForTauAnalyses.jets = cms.InputTag("allLayer0PFJetsForTauAnalyses")
38
39 jetFlavourAssociationForPFForTauAnalyses = copy.deepcopy(jetFlavourAssociationForTauAnalyses)
40 jetFlavourAssociationForPFForTauAnalyses.srcByReference = cms.InputTag("jetPartonAssociationForPFForTauAnalyses")
41
42 #PAT sequence for jet flavour identification
43 patJetFlavourIdForPFForTauAnalyses = cms.Sequence(jetPartons
44 *jetPartonAssociationForPFForTauAnalyses
45 *jetFlavourAssociationForPFForTauAnalyses
46 )
47
48
49 ######################################################################################
50 #### b-tagging
51 ######################################################################################
52
53
54 from UserCode.HbbAnalysis.bTaggingForPFconfig_cff import *
55
56 # Labels of Discriminators to use
57 patBTaggingDiscriminatorLabelsForPF = cms.VInputTag(
58 cms.InputTag("combinedSecondaryVertexBJetTagsForPF","ammSkimPat"),
59 cms.InputTag("combinedSecondaryVertexMVABJetTagsForPF","ammSkimPat"),
60 cms.InputTag("coneIsolationTauJetTagsForPF","ammSkimPat"),
61 cms.InputTag("impactParameterMVABJetTagsForPF","ammSkimPat"),
62 cms.InputTag("jetBProbabilityBJetTagsForPF","ammSkimPat"),
63 cms.InputTag("jetProbabilityBJetTagsForPF","ammSkimPat"),
64 cms.InputTag("simpleSecondaryVertexBJetTagsForPF","ammSkimPat"),
65 cms.InputTag("softElectronBJetTagsForPF","ammSkimPat"),
66 cms.InputTag("softMuonBJetTagsForPF","ammSkimPat"),
67 cms.InputTag("softMuonNoIPBJetTagsForPF","ammSkimPat"),
68 cms.InputTag("trackCountingHighEffBJetTagsForPF","ammSkimPat"),
69 cms.InputTag("trackCountingHighPurBJetTagsForPF","ammSkimPat"),
70 )
71 # Labels of TagInfos to use
72 patBTaggingTagInfoLabelsForPF = cms.VInputTag(
73 cms.InputTag("secondaryVertexTagInfosForPF","ammSkimPat"),
74 cms.InputTag("softElectronTagInfosForPF","ammSkimPat"),
75 cms.InputTag("softMuonTagInfosForPF","ammSkimPat"),
76 cms.InputTag("impactParameterTagInfosForPF","ammSkimPat"),
77 )
78
79 # Need to convert all JetTags to ValueMap<double>
80 patAODBTagsForPFForTauAnalyses = copy.deepcopy(patAODBTagsForTauAnalyses)
81 patAODBTagsForPFForTauAnalyses.collection = cms.InputTag("iterativeCone5PFJets")
82 patAODBTagsForPFForTauAnalyses.associations = patBTaggingDiscriminatorLabelsForPF
83
84 # Need to convert all JetTagInfoss to ValueMap<Ptr<BaseTagInfo>>
85 patAODTagInfosForPFForTauAnalyses = copy.deepcopy(patAODTagInfosForTauAnalyses)
86 patAODTagInfosForPFForTauAnalyses.collection = cms.InputTag("iterativeCone5PFJets")
87 patAODTagInfosForPFForTauAnalyses.associations = patBTaggingTagInfoLabelsForPF
88
89 layer0BTagsForPFForTauAnalyses = copy.deepcopy(layer0BTagsForTauAnalyses)
90 layer0BTagsForPFForTauAnalyses.collection = cms.InputTag("allLayer0PFJetsForTauAnalyses")
91 layer0BTagsForPFForTauAnalyses.backrefs = cms.InputTag("allLayer0PFJetsForTauAnalyses")
92 layer0BTagsForPFForTauAnalyses.commonLabel = cms.InputTag("patAODBTagsForPFForTauAnalyses")
93 layer0BTagsForPFForTauAnalyses.associations = patBTaggingDiscriminatorLabelsForPF
94
95 layer0TagInfosForPFForTauAnalyses = copy.deepcopy(layer0TagInfosForTauAnalyses)
96 layer0TagInfosForPFForTauAnalyses.collection = cms.InputTag("allLayer0PFJetsForTauAnalyses")
97 layer0TagInfosForPFForTauAnalyses.backrefs = cms.InputTag("allLayer0PFJetsForTauAnalyses")
98 layer0TagInfosForPFForTauAnalyses.commonLabel = cms.InputTag("patAODTagInfosForPFForTauAnalyses")
99 layer0TagInfosForPFForTauAnalyses.associations = patBTaggingTagInfoLabelsForPF
100
101 patAODBTaggingForPFForTauAnalyses = cms.Sequence(patAODBTagsForPFForTauAnalyses
102 *patAODTagInfosForPFForTauAnalyses
103 )
104
105 patLayer0BTaggingForPFForTauAnalyses = cms.Sequence(layer0BTagsForPFForTauAnalyses
106 *layer0TagInfosForPFForTauAnalyses
107 )
108
109
110 ######################################################################################
111 #### jet-tracks charge
112 ######################################################################################
113 from PhysicsTools.PatAlgos.recoLayer0.jetTracksCharge_cff import *
114
115 patAODJetTracksAssociatorForPFForTauAnalyses = copy.deepcopy(patAODJetTracksAssociatorForTauAnalyses)
116 patAODJetTracksAssociatorForPFForTauAnalyses.src = cms.InputTag("iterativeCone5PFJets") ## the AOD jets given as input to the PAT jet cleaner
117 patAODJetTracksAssociatorForPFForTauAnalyses.tracks = cms.InputTag("ic5PFJetTracksAssociatorAtVertex") ## any JetTracksAssociation
118
119 ## Re-key from AOD jets to PAT Layer 0 jets
120 layer0JetTracksAssociatorForPFForTauAnalyses = copy.deepcopy(layer0JetTracksAssociatorForTauAnalyses)
121 layer0JetTracksAssociatorForPFForTauAnalyses.collection = cms.InputTag("allLayer0PFJetsForTauAnalyses")
122 layer0JetTracksAssociatorForPFForTauAnalyses.backrefs = cms.InputTag("allLayer0PFJetsForTauAnalyses")
123 layer0JetTracksAssociatorForPFForTauAnalyses.association = cms.InputTag("patAODJetTracksAssociatorForPFForTauAnalyses")
124
125 ## Compute JET Charge
126 layer0JetChargeForPFForTauAnalyses = copy.deepcopy(layer0JetChargeForTauAnalyses)
127 layer0JetChargeForPFForTauAnalyses.src = cms.InputTag("allLayer0PFJetsForTauAnalyses")
128 layer0JetChargeForPFForTauAnalyses.jetTracksAssociation = cms.InputTag("layer0JetTracksAssociatorForPFForTauAnalyses")
129
130 patLayer0JetTracksChargeForPFForTauAnalyses = cms.Sequence(patAODJetTracksAssociatorForPFForTauAnalyses
131 *layer0JetTracksAssociatorForPFForTauAnalyses
132 *layer0JetChargeForPFForTauAnalyses
133 )
134
135
136 ######################################################################################
137 #### jetMET corrections
138 ######################################################################################
139
140 ######################################################################################
141 #### MC matching : genjet and parton
142 ######################################################################################
143
144 jetPartonMatchForPFForTauAnalyses = copy.deepcopy(jetPartonMatchForTauAnalyses)
145 jetPartonMatchForPFForTauAnalyses.src = cms.InputTag("allLayer0PFJetsForTauAnalyses")
146
147 jetGenJetMatchForPFForTauAnalyses = copy.deepcopy(jetGenJetMatchForTauAnalyses)
148 jetGenJetMatchForPFForTauAnalyses.src = cms.InputTag("allLayer0PFJetsForTauAnalyses")
149
150
151 ######################################################################################
152 #### PAT layer 1
153 ######################################################################################
154
155 allLayer1PFJetsForTauAnalyses = copy.deepcopy(allLayer1JetsForTauAnalyses)
156
157 allLayer1PFJetsForTauAnalyses.jetSource = cms.InputTag("allLayer0PFJetsForTauAnalyses")
158
159 allLayer1PFJetsForTauAnalyses.addJetCorrFactors = cms.bool(False)
160
161
162 allLayer1PFJetsForTauAnalyses.addBTagInfo = cms.bool(True)
163 allLayer1PFJetsForTauAnalyses.addDiscriminators = cms.bool(True)
164 allLayer1PFJetsForTauAnalyses.discriminatorModule = cms.InputTag("layer0BTagsForPFForTauAnalyses")
165 allLayer1PFJetsForTauAnalyses.tagInfoModule = cms.InputTag("layer0TagInfosForPFForTauAnalyses")
166 allLayer1PFJetsForTauAnalyses.tagInfoNames = cms.vstring('secondaryVertexTagInfosForPF','softElectronTagInfosForPF','softMuonTagInfosForPF','impactParameterTagInfosForPF')
167
168 allLayer1PFJetsForTauAnalyses.addAssociatedTracks = cms.bool(True)
169 allLayer1PFJetsForTauAnalyses.trackAssociationSource = cms.InputTag("layer0JetTracksAssociatorForPFForTauAnalyses")
170
171 allLayer1PFJetsForTauAnalyses.addJetCharge = cms.bool(True)
172 allLayer1PFJetsForTauAnalyses.jetChargeSource = cms.InputTag("layer0JetChargeForPFForTauAnalyses")
173
174 allLayer1PFJetsForTauAnalyses.addGenPartonMatch = cms.bool(True)
175 allLayer1PFJetsForTauAnalyses.embedGenPartonMatch = cms.bool(True)
176 allLayer1PFJetsForTauAnalyses.genPartonMatch = cms.InputTag("jetPartonMatchForPFForTauAnalyses")
177 allLayer1PFJetsForTauAnalyses.addGenJetMatch = cms.bool(True)
178 allLayer1PFJetsForTauAnalyses.genJetMatch = cms.InputTag("jetGenJetMatchForPFForTauAnalyses")
179
180 allLayer1PFJetsForTauAnalyses.getJetMCFlavour = cms.bool(True)
181 allLayer1PFJetsForTauAnalyses.JetPartonMapSource = cms.InputTag("jetFlavourAssociationForPFForTauAnalyses")
182
183
184
185 ######################################################################################
186 #### Final PAT sequences
187 ######################################################################################
188
189 patBeforeLayer0PFJetsForTauAnalyses = cms.Sequence( bTaggingForPFForTauAnalysis
190 *patAODBTaggingForPFForTauAnalyses
191 )
192
193 patLayer0PFJetsForTauAnalyses = cms.Sequence( patBeforeLayer0PFJetsForTauAnalyses
194 *allLayer0PFJetsForTauAnalyses
195 *patJetFlavourIdForPFForTauAnalyses
196 *patLayer0BTaggingForPFForTauAnalyses
197 *patLayer0JetTracksChargeForPFForTauAnalyses
198 *(jetPartonMatchForPFForTauAnalyses+jetGenJetMatchForPFForTauAnalyses)
199 )
200
201 patLayer1PFJetsForTauAnalyses = cms.Sequence(allLayer1PFJetsForTauAnalyses)