ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/CmsHi/JetAnalysis/test/pfjet_simple.py
Revision: 1.1
Committed: Tue Jul 12 14:12:03 2011 UTC (13 years, 10 months ago) by frankma
Content type: text/x-python
Branch: MAIN
CVS Tags: HiForest_V02_79, HiForest_V02_78, HiForest_V02_77, HiForest_V02_76, HiForest_V02_75, HiForest_V02_74, HiForest_V02_73, HiForest_V02_72, HiForest_V02_71, HiForest_V02_70, HiForest_V02_69, HiForest_V02_68, HiForest_V02_67, HiForest_V02_66, HiForest_V02_65, HiForest_V02_64, HiForest_V02_63, HiForest_V02_62, HiForest_V02_61, HiForest_V02_60, HiForest_V02_59, HiForest_V02_58, HiForest_V02_57, HiForest_V02_56, HiForest_V02_55, HiForest_V02_54, HiForest_V02_53, HiForest_V02_52, HiForest_V02_51, HiForest_V02_50, HiForest_V02_49, HiForest_V02_48, HiForest_V02_47, HiForest_V02_46, HiForest_V02_45, HiForest_V02_44, HiForest_V02_43, HiForest_V02_42, HiForest_V02_41, HiForest_V02_40, HiForest_V02_39, HiForest_V02_38, HiForest_V02_37, HiForest_V02_36, HiForest_V02_35, HiForest_V02_34, HiForest_V02_33, HiForest_V02_32, HiForest_V02_31, HiForest_V02_30, HiForest_V02_27, HiForest_V02_26, QM_2012, HiForest_V02_25, HiForest_V02_24, HiForest_V02_23, HiForest_V02_22, HiForest_V02_21, HiForest_V02_20, HiForest_V02_19, HiForest_V02_18, HiForest_V02_17, HiForest_V02_16, HiForest_V02_15, HiForest_V02_14, HiForest_V02_13, HiForest_V02_12, HiForest_V02_11, HiForest_V02_10, HiForest_V02_09, HiForest_V02_08, HiForest_V02_07, HiForest_V02_06, HiForest_V02_05, HiForest_V02_04, HiForest_V02_03, HiForest_V02_02, HiForest_V02_01, HiForest_V02_00, hi44X_02, hi413_03, hi441_1, hi441_0, hi413_11, hi413_10, hi413_09, hi413_08, hi413_07, hi413_06, hi413_05, hi413_04, hi413_02, hi39X_01, tag_d20110915, cmssw39x_base, cmssw39X_base
Branch point for: branch_44x, cmssw39x_branch
Log Message:
pf and calo jet analysis in 39X

File Contents

# Content
1 import FWCore.ParameterSet.Config as cms
2
3 process = cms.Process('JetAna')
4
5 process.options = cms.untracked.PSet(
6 wantSummary = cms.untracked.bool(True)
7 )
8
9 # Input source
10 process.source = cms.Source("PoolSource",
11 fileNames = cms.untracked.vstring(
12 'file:/d101/frankma/data/HIAllPhysics/ZS-v2/A2AD1439-F242-E011-A425-003048F00412.root'
13 ))
14
15 process.maxEvents = cms.untracked.PSet(
16 input = cms.untracked.int32(10))
17
18 #load some general stuff
19 process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff')
20 process.load('Configuration.StandardSequences.Services_cff')
21 process.load('Configuration.StandardSequences.GeometryExtended_cff')
22 process.load('Configuration.StandardSequences.MagneticField_38T_cff')
23 process.load('FWCore.MessageService.MessageLogger_cfi')
24 #process.MessageLogger.cerr.FwkReport.reportEvery = 100
25 process.GlobalTag.globaltag = 'GR_R_39X_V6B::All'
26
27 # load centrality
28 from CmsHi.Analysis2010.CommonFunctions_cff import *
29 overrideCentrality(process)
30 process.HeavyIonGlobalParameters = cms.PSet(
31 centralityVariable = cms.string("HFhits"),
32 nonDefaultGlauberModel = cms.string(""),
33 centralitySrc = cms.InputTag("hiCentrality")
34 )
35
36 # tree output
37 process.TFileService = cms.Service("TFileService",
38 fileName=cms.string("JetAnaTrees.root"))
39
40 # PF Reco
41 # --- Track and muon reconstruction ---
42 # pixel triplet tracking (HI Tracking)
43 process.load("RecoLocalTracker.Configuration.RecoLocalTracker_cff")
44 process.load("RecoHI.Configuration.Reconstruction_HI_cff")
45 process.load("RecoLocalCalo.Configuration.hcalLocalReco_cff") # Needed to produce "HcalSeverityLevelComputerRcd" used by CaloTowersCreator/towerMakerPF
46 process.rechits = cms.Sequence(process.siPixelRecHits * process.siStripMatchedRecHits)
47 process.hiTrackReco = cms.Sequence(process.rechits * process.heavyIonTracking)
48
49 process.load("RecoHI.Configuration.Reconstruction_hiPF_cff")
50 process.load("RecoHI.HiJetAlgos.ParticleTowerProducer_cff")
51 process.trackerDrivenElectronSeeds.TkColList = cms.VInputTag("hiGoodTightTracks")
52 process.PFTowers = process.particleTowerProducer.clone() # PF using a grid of pseudo-towers to emulate Russian-style subtraction
53 process.HiParticleFlowRecoNoJets = cms.Sequence(
54 process.particleFlowCluster *
55 process.trackerDrivenElectronSeeds *
56 process.particleFlowReco *
57 process.PFTowers
58 )
59
60 #good track selection
61 process.load("edwenger.HiTrkEffAnalyzer.TrackSelections_cff")
62 process.hiextraTrackReco = cms.Sequence( process.hiPostGlobalPrimTracks * process.hiGoodTightTracksSelection )
63
64 # Define Jet Algo parameters
65 process.load('RecoHI.HiJetAlgos.HiRecoJets_cff')
66 process.load('RecoHI.HiJetAlgos.HiRecoPFJets_cff')
67
68 process.iterativeConePu5CaloJets.doPVCorrection = cms.bool(True)
69 process.iterativeConePu5CaloJets.srcPVs = 'hiSelectedVertex'
70 process.iterativeConePu5CaloJets.puPtMin = cms.double(10.0)
71
72 process.ak3PFJets = process.ak5PFJets.clone()
73 process.ak3PFJets.rParam = cms.double(0.3)
74 process.ak3PFJets.puPtMin = cms.double(15.0)
75 process.akPu3PFJets = process.ak3PFJets.clone()
76 process.akPu3PFJets.src = 'PFTowers'
77 process.akPu3PFJets.jetType = 'BasicJet'
78 process.akPu3PFJets.doPUOffsetCorr = cms.bool(True)
79 process.akPu3PFJets.sumRecHits = cms.bool(False)
80
81 # Define Jet energy correction
82 process.jec = cms.ESSource("PoolDBESSource",
83 DBParameters = cms.PSet(messageLevel = cms.untracked.int32(0)),
84 timetype = cms.string('runnumber'),
85 toGet = cms.VPSet(
86 cms.PSet(record = cms.string("JetCorrectionsRecord"),
87 tag = cms.string("JetCorrectorParametersCollection_HI_hiGoodTightTracks_D6T_399_IC5Calo"),
88 label = cms.untracked.string("IC5Calo")),
89 cms.PSet(record = cms.string("JetCorrectionsRecord"),
90 tag = cms.string("JetCorrectorParametersCollection_HI_PFTowers_hiGoodTightTracks_D6T_399_AK3PF"),
91 label = cms.untracked.string("AK3PF")),
92 cms.PSet(record = cms.string("JetCorrectionsRecord"),
93 tag = cms.string("JetCorrectorParametersCollection_HI_PFTowers_hiGoodTightTracks_D6T_399_AK4PF"),
94 label = cms.untracked.string("AK4PF")),
95 cms.PSet(record = cms.string("JetCorrectionsRecord"),
96 tag = cms.string("JetCorrectorParametersCollection_HI_PFTowers_hiGoodTightTracks_D6T_399_AK5PF"),
97 label = cms.untracked.string("AK5PF")
98 ),
99 ),
100 connect = cms.string("sqlite_file:JEC_HI_PFTowers_hiGoodTightTracks_D6T_399.db"),
101 )
102 process.es_prefer_jec = cms.ESPrefer('PoolDBESSource','jec')
103
104 # Define Pat
105 process.load('PhysicsTools.PatAlgos.patHeavyIonSequences_cff')
106 process.patJets.jetSource = cms.InputTag("iterativeConePu5CaloJets")
107 process.patJets.addBTagInfo = False
108 process.patJets.addTagInfos = False
109 process.patJets.addDiscriminators = False
110 process.patJets.addAssociatedTracks = False
111 process.patJets.addJetCharge = False
112 process.patJets.addJetID = False
113 process.patJets.getJetMCFlavour = False
114 process.patJets.addGenPartonMatch = False
115 process.patJets.addGenJetMatch = False
116 process.patJets.embedGenJetMatch = False
117 process.patJets.embedGenPartonMatch = False
118
119 process.icPu5corr = process.patJetCorrFactors.clone(
120 src = cms.InputTag("iterativeConePu5CaloJets"),
121 levels = cms.vstring('L2Relative','L3Absolute'),
122 payload = cms.string('IC5Calo')
123 )
124 process.icPu5patJets = process.patJets.clone(
125 jetSource = cms.InputTag("iterativeConePu5CaloJets"),
126 jetCorrFactorsSource = cms.VInputTag(cms.InputTag("icPu5corr")))
127
128 process.icPu5patSequence = cms.Sequence(process.iterativeConePu5CaloJets*process.icPu5corr*process.icPu5patJets)
129
130 process.akPu3PFcorr = process.patJetCorrFactors.clone(
131 src = cms.InputTag("akPu3PFJets"),
132 levels = cms.vstring('L2Relative','L3Absolute'),
133 payload = cms.string('AK3PF')
134 )
135 process.akPu3PFpatJets = process.patJets.clone(
136 jetSource = cms.InputTag("akPu3PFJets"),
137 jetCorrFactorsSource = cms.VInputTag(cms.InputTag("akPu3PFcorr")))
138 process.akPu3PFpatSequence = cms.Sequence(process.akPu3PFJets*process.akPu3PFcorr*process.akPu3PFpatJets)
139
140 # Define the analyzer modules
141 process.load("HLTrigger.HLTanalyzers.HI_HLTAnalyser_cff")
142 process.hltanalysis.RunParameters.Debug = False
143 process.hltanalysis.RunParameters.UseTFileService = True
144 process.hltanalysis.RunParameters.Monte = (False)
145 process.hltanalysis.RunParameters.DoMC = (False)
146 process.hltanalysis.RunParameters.DoJets = True
147 process.hltanalysis.RunParameters.DoPhotons = True
148 process.hltanalysis.RunParameters.DoSuperClusters = True
149 process.hltanalysis.recjets = "iterativeConePu5CaloJets"
150 process.hltanalysis.BarrelPhoton = "correctedIslandBarrelSuperClusters"
151 process.hltanalysis.EndcapPhoton = "correctedIslandEndcapSuperClusters"
152 process.hltanalysis.l1GtReadoutRecord = cms.InputTag("gtDigis")
153
154 process.load("MNguyen.InclusiveJetAnalyzer.inclusiveJetAnalyzer_cff")
155 process.inclusiveJetAnalyzer.isMC = cms.untracked.bool(False)
156 process.icPu5JetAnalyzer = process.inclusiveJetAnalyzer.clone()
157
158 # =============== Final Paths =====================
159 process.reco_extra = cms.Path( process.hiTrackReco * process.hiextraTrackReco * process.HiParticleFlowRecoNoJets
160 * process.icPu5patSequence * process.akPu3PFpatSequence )
161 process.ana_step = cms.Path( process.centralityBin * process.hltanalysis * process.icPu5JetAnalyzer)
162 process.schedule = cms.Schedule(process.reco_extra,process.ana_step)