ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/HbbAnalysis/test/makeTree_noFlav_cfg.py
Revision: 1.1
Committed: Tue Sep 14 08:25:22 2010 UTC (14 years, 7 months ago) by amagnan
Content type: text/x-python
Branch: MAIN
CVS Tags: v01-00-00, beforeMETHacks, v00-05-03, v00-05-02, v00-05-01, HEAD
Log Message:
update config

File Contents

# User Rev Content
1 amagnan 1.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 = False
216     process.eventFlavourFilter.DoZjj = False
217     process.eventFlavourFilter.filter = False
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 = 5
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