1 |
import FWCore.ParameterSet.Config as cms
|
2 |
import copy
|
3 |
|
4 |
process = cms.Process('TreeMaker')
|
5 |
|
6 |
# import of standard configurations for RECOnstruction
|
7 |
# of electrons, muons and tau-jets with non-standard isolation cones
|
8 |
process.load('Configuration/StandardSequences/Services_cff')
|
9 |
process.load('FWCore/MessageService/MessageLogger_cfi')
|
10 |
process.MessageLogger.cerr.FwkReport.reportEvery = 1000
|
11 |
|
12 |
process.options = cms.untracked.PSet(
|
13 |
wantSummary = cms.untracked.bool(True),
|
14 |
#SkipEvent = cms.untracked.vstring('ProductNotFound')
|
15 |
)
|
16 |
|
17 |
|
18 |
process.maxEvents = cms.untracked.PSet(
|
19 |
input = cms.untracked.int32(1000)
|
20 |
)
|
21 |
|
22 |
process.source = cms.Source(
|
23 |
"PoolSource",
|
24 |
#firstEvent = cms.untracked.uint32(510),
|
25 |
#firstRun = cms.untracked.uint32(1),
|
26 |
fileNames = cms.untracked.vstring(
|
27 |
'/store/mc/Spring10/TTbar/GEN-SIM-RECO/MC_3XY_V25_S09_preproduction-v2/0118/0423586A-093B-DF11-8A65-00237DA10D14.root',
|
28 |
#'rfio:/castor/cern.ch/user/a/amagnan/bbZ0jAlpgen_FA50FF69-31E4-DE11-9B83-0015174F09DC.root',
|
29 |
#'rfio:/castor/cern.ch/cms/store/mc/Summer09/MinBias/GEN-SIM-RECO/STARTUP3X_V8P_900GeV_Jan29ReReco-v1/0017/FEFA0F4E-470D-DF11-91D4-00E0817917D5.root',
|
30 |
#'file:/tmp/amagnan/VqqJets-FAE86D18-B22B-DF11-A6E5-0030487CDA4C.root',
|
31 |
)
|
32 |
)
|
33 |
|
34 |
#remove "monster events": at least 25% of good tracks
|
35 |
process.noscraping = cms.EDFilter("FilterOutScraping",
|
36 |
applyfilter = cms.untracked.bool(True),
|
37 |
debugOn = cms.untracked.bool(False),
|
38 |
numtrack = cms.untracked.uint32(10),
|
39 |
thresh = cms.untracked.double(0.25)
|
40 |
)
|
41 |
|
42 |
process.oneGoodVertexFilter = cms.EDFilter(
|
43 |
"VertexSelector",
|
44 |
src = cms.InputTag("offlinePrimaryVertices"),
|
45 |
cut = cms.string("!isFake && ndof > 4 && abs(z) <= 24 && position.Rho <= 2"),
|
46 |
filter = cms.bool(True)
|
47 |
)
|
48 |
|
49 |
# PAT Layer 0+1
|
50 |
process.load("PhysicsTools.PatAlgos.patSequences_cff")
|
51 |
|
52 |
## Load additional RECO config
|
53 |
process.load("Configuration.StandardSequences.Geometry_cff")
|
54 |
process.load("Configuration.StandardSequences.FrontierConditions_GlobalTag_cff")
|
55 |
#process.GlobalTag.globaltag = cms.string('START3X_V24::All')
|
56 |
#process.GlobalTag.globaltag = cms.string('MC_3XY_V26::All')
|
57 |
process.GlobalTag.globaltag = cms.string('START3X_V26B::All')
|
58 |
|
59 |
process.load("Configuration.StandardSequences.MagneticField_cff")
|
60 |
|
61 |
#remove MC matching to run on data
|
62 |
#from PhysicsTools.PatAlgos.tools.coreTools import *
|
63 |
#removeMCMatching(process, 'All')
|
64 |
|
65 |
## produce genjets without nu's
|
66 |
process.load("RecoJets.Configuration.GenJetParticles_cff")
|
67 |
process.genParticlesForJets.ignoreParticleIDs = cms.vuint32(
|
68 |
1000022, 2000012, 2000014,
|
69 |
2000016, 1000039, 5000039,
|
70 |
4000012, 9900012, 9900014,
|
71 |
9900016, 39, 12, 14, 16
|
72 |
)
|
73 |
|
74 |
process.load("RecoJets.JetProducers.ak5GenJets_cfi")
|
75 |
process.ak5GenJetsNoNuBSM = process.ak5GenJets
|
76 |
|
77 |
process.pgenjets = cms.Sequence( process.genParticlesForJets
|
78 |
*process.ak5GenJetsNoNuBSM
|
79 |
)
|
80 |
|
81 |
|
82 |
## 36X
|
83 |
## Apply correct JEC
|
84 |
process.load('JetMETCorrections.Configuration.DefaultJEC_cff')
|
85 |
##produce JPT jets and JPTjets jetID
|
86 |
process.load("RecoJets.Configuration.RecoJPTJets_cff")
|
87 |
|
88 |
## 35X produce JPT jets and JPTjets jetID
|
89 |
#process.load("JetMETCorrections.Configuration.ZSPJetCorrections332_cff")
|
90 |
#process.load("JetMETCorrections.Configuration.JetPlusTrackCorrections_cff")
|
91 |
#process.load("RecoEgamma.ElectronIdentification.electronIdSequence_cff")
|
92 |
|
93 |
##eid
|
94 |
process.load("UserCode.HbbAnalysis.categoryBasedElectronIdentificationV02_cfi")
|
95 |
from UserCode.HbbAnalysis.categoryBasedElectronIdentificationV02_cfi import *
|
96 |
process.JPTeidTight = process.eidVeryLoose.clone()
|
97 |
|
98 |
## 35X
|
99 |
#process.JetPlusTrackZSPCorrectorAntiKt5.UseElectrons = True
|
100 |
## 36X
|
101 |
process.JetPlusTrackZSPCorJetAntiKt5.UseElectrons = True
|
102 |
|
103 |
## 35X
|
104 |
#process.load("RecoJets.JetProducers.ak5JetID_cfi")
|
105 |
#process.ak5JPTJetID = copy.deepcopy(process.ak5JetID)
|
106 |
#process.ak5JPTJetID.src = cms.InputTag('JetPlusTrackZSPCorJetAntiKt5')
|
107 |
#process.pJptJets = cms.Sequence( process.eIDCategoryBasedSequence*
|
108 |
# process.JPTeidTight*
|
109 |
# process.ZSPJetCorrectionsAntiKt5
|
110 |
# *process.JetPlusTrackCorrectionsAntiKt5
|
111 |
# *process.ak5JPTJetID
|
112 |
# )
|
113 |
|
114 |
## 36X
|
115 |
process.pJptJets = cms.Sequence( process.eIDCategoryBasedSequence*
|
116 |
process.JPTeidTight*
|
117 |
process.recoJPTJets
|
118 |
)
|
119 |
|
120 |
|
121 |
## Apply correct JEC, plus add JPT and PF jets
|
122 |
from PhysicsTools.PatAlgos.tools.jetTools import *
|
123 |
#process.load("JetMETCorrections.Configuration.L2L3Corrections_Summer09_7TeV_cff")
|
124 |
#switchJECSet( process, "Summer09_7TeV")
|
125 |
|
126 |
switchJetCollection(process,
|
127 |
#cms.InputTag('antikt5CaloJets'),
|
128 |
cms.InputTag('ak5CaloJets'),
|
129 |
doJTA=True,
|
130 |
doBTagging=True,
|
131 |
jetCorrLabel=('AK5','Calo'),
|
132 |
doType1MET=True,
|
133 |
genJetCollection=cms.InputTag("ak5GenJetsNoNuBSM"),
|
134 |
doJetID = True,
|
135 |
jetIdLabel = "ak5"
|
136 |
)
|
137 |
|
138 |
addJetCollection(process,
|
139 |
#cms.InputTag('antikt5PFJets'),
|
140 |
cms.InputTag('ak5PFJets'),
|
141 |
'AK5','PF',
|
142 |
doJTA=True,
|
143 |
doBTagging=True,
|
144 |
jetCorrLabel=('AK5','PF'),
|
145 |
doType1MET=False,
|
146 |
doL1Cleaning = False,
|
147 |
doL1Counters=False,
|
148 |
genJetCollection=cms.InputTag("ak5GenJetsNoNuBSM"),
|
149 |
doJetID = False,
|
150 |
jetIdLabel = None
|
151 |
)
|
152 |
|
153 |
addJetCollection( process,
|
154 |
cms.InputTag('JetPlusTrackZSPCorJetAntiKt5'),
|
155 |
'AK5','JPT',
|
156 |
doJTA = True,
|
157 |
doBTagging = True,
|
158 |
jetCorrLabel = ('AK5','JPT'),
|
159 |
doType1MET = False,
|
160 |
doL1Cleaning = False,
|
161 |
doL1Counters = False,
|
162 |
genJetCollection = cms.InputTag("ak5GenJetsNoNuBSM"),
|
163 |
doJetID = True,
|
164 |
jetIdLabel = "ak5"
|
165 |
)
|
166 |
|
167 |
|
168 |
#add calo taus ?
|
169 |
|
170 |
|
171 |
|
172 |
#replace electron ids
|
173 |
process.patElectrons.electronIDSources = cms.PSet(
|
174 |
eidTight = cms.InputTag("eidTight"),
|
175 |
eidLoose = cms.InputTag("eidLoose"),
|
176 |
eidRobustTight = cms.InputTag("eidMedium"),
|
177 |
eidRobustHighEnergy = cms.InputTag("eidSuperTight"),
|
178 |
eidRobustLoose = cms.InputTag("eidVeryLoose")
|
179 |
)
|
180 |
|
181 |
|
182 |
##add PF and tcMET
|
183 |
|
184 |
# Load the PF MET module
|
185 |
process.load("PhysicsTools.PFCandProducer.pfMET_cfi")
|
186 |
#produce tcMET
|
187 |
# load muon corrections for !MET module and associated !ValueMap producer
|
188 |
process.load("JetMETCorrections.Type1MET.MuonMETValueMapProducer_cff")
|
189 |
process.load("JetMETCorrections.Type1MET.MetMuonCorrections_cff")
|
190 |
|
191 |
# load track-corrected MET module and associated !ValueMap producer
|
192 |
process.load("JetMETCorrections.Type1MET.MuonTCMETValueMapProducer_cff")
|
193 |
process.load("RecoMET.METProducers.TCMET_cfi")
|
194 |
|
195 |
# run sequence of muon+track MET corrections
|
196 |
process.ptcmet = cms.Sequence(
|
197 |
process.muonMETValueMapProducer
|
198 |
*process.corMetGlobalMuons
|
199 |
*process.muonTCMETValueMapProducer
|
200 |
*process.tcMet
|
201 |
)
|
202 |
|
203 |
|
204 |
# load the coreTools of PAT
|
205 |
from PhysicsTools.PatAlgos.tools.metTools import *
|
206 |
addTcMET(process, 'TC')
|
207 |
addPfMET(process, 'PF')
|
208 |
|
209 |
process.load("UserCode/HbbAnalysis/TreeSelection_cff")
|
210 |
|
211 |
process.load("UserCode/HbbAnalysis/EventFlavourFilter_cff")
|
212 |
from UserCode.HbbAnalysis.EventFlavourFilter_cff import *
|
213 |
process.eventFlavourFilter.DEBUG = 0
|
214 |
process.eventFlavourFilter.DoZbb = False
|
215 |
process.eventFlavourFilter.DoZcc = True
|
216 |
process.eventFlavourFilter.DoZjj = False
|
217 |
process.eventFlavourFilter.filter = True
|
218 |
|
219 |
process.load("UserCode/HbbAnalysis/HbbTreeMaker_cff")
|
220 |
from UserCode.HbbAnalysis.HbbTreeMaker_cff import *
|
221 |
process.treeMaker.DEBUG = 0
|
222 |
process.treeMaker.DOGEN = False
|
223 |
process.treeMaker.JetFlavour = 4
|
224 |
#disable caloTaus
|
225 |
process.treeMaker.CaloTaus = cms.InputTag("","")
|
226 |
|
227 |
process.treeCaloJets.src = cms.InputTag("patJets")
|
228 |
|
229 |
process.TFileService = cms.Service("TFileService",
|
230 |
fileName = cms.string("AnaTree.root"),
|
231 |
closeFileFast = cms.untracked.bool(True)
|
232 |
)
|
233 |
|
234 |
#dumpevent
|
235 |
process.dump = cms.EDAnalyzer("EventContentAnalyzer")
|
236 |
|
237 |
|
238 |
##replace jet source name
|
239 |
#process.ZSPJetCorJetAntiKt5.src = "antikt5CaloJets"
|
240 |
##process.L2L3CorJetAK5Calo.src = "antikt5CaloJets"
|
241 |
##process.L2L3CorJetAK5PF.src = "antikt5PFJets"
|
242 |
#process.ak5JetID.src = "antikt5CaloJets"
|
243 |
##process.metJESCorAK5CaloJet.inputUncorJetsLabel = "antikt5CaloJets"
|
244 |
##process.patJetCorrFactors.jetSource = "antikt5CaloJets"
|
245 |
##process.ak5JetExtender.jets = "antikt5CaloJets"
|
246 |
##process.ak5JetTracksAssociatorAtCaloFace.jets = "antikt5CaloJets"
|
247 |
##process.ak5JetTracksAssociatorAtVertex.jets = "antikt5CaloJets"
|
248 |
|
249 |
#process.load('PerfTools.Callgrind.callgrindSwitch_cff')
|
250 |
process.pReco = cms.Sequence(
|
251 |
process.pgenjets
|
252 |
*process.ptcmet
|
253 |
*process.pJptJets
|
254 |
*process.pfMET
|
255 |
*process.recoJetId
|
256 |
*process.patDefaultSequence
|
257 |
)
|
258 |
|
259 |
|
260 |
process.preSel = cms.Path(
|
261 |
#process.dump*
|
262 |
process.noscraping
|
263 |
*process.oneGoodVertexFilter
|
264 |
*process.pReco
|
265 |
*process.eventFlavourFilter
|
266 |
*process.treeMuons
|
267 |
*process.treeElectrons
|
268 |
#*process.treeCaloTaus
|
269 |
*process.treePFTaus
|
270 |
*process.treeCaloJets
|
271 |
*process.treeJPTJets
|
272 |
*process.treePFJets
|
273 |
*process.treeMaker
|
274 |
)
|
275 |
|
276 |
|
277 |
|
278 |
|