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

# User Rev Content
1 amagnan 1.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)