ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/algomez/GenAnalyzer/genanalyzer_cfg.py
Revision: 1.3
Committed: Wed Jun 19 02:41:24 2013 UTC (11 years, 10 months ago) by algomez
Content type: text/x-python
Branch: MAIN
CVS Tags: HEAD
Changes since 1.2: +20 -19 lines
Log Message:
*** empty log message ***

File Contents

# User Rev Content
1 algomez 1.1 # Import configurations
2     import FWCore.ParameterSet.Config as cms
3     process = cms.Process("Demo")
4    
5     ###############################
6     ####### Parameters ############
7     ###############################
8     from FWCore.ParameterSet.VarParsing import VarParsing
9     options = VarParsing ('standard') ### For a simple set of parameters
10     #options = VarParsing ('analysis') ### For a complete set of parameters
11    
12 algomez 1.2 options.register ('st1',
13 algomez 1.1 0,
14     VarParsing.multiplicity.singleton,
15     VarParsing.varType.int,
16     'Mass for the Stop1')
17    
18 algomez 1.2 options.register ('st2',
19 algomez 1.1 0,
20     VarParsing.multiplicity.singleton,
21     VarParsing.varType.int,
22     'Mass for the Stop2')
23    
24 algomez 1.2 options.register ('use',
25     '',
26     VarParsing.multiplicity.singleton,
27     VarParsing.varType.string,
28     'Stop1 decay in')
29 algomez 1.1 options.parseArguments()
30     print options
31    
32     ###############################
33     ########## Gen Setup ##########
34     ###############################
35    
36     ## Maximal Number of Events
37     process.maxEvents = cms.untracked.PSet( input = cms.untracked.int32(options.maxEvents) )
38     ## Report every ..
39     process.load("FWCore.MessageService.MessageLogger_cfi")
40 algomez 1.3 process.MessageLogger.cerr.FwkReport.reportEvery = cms.untracked.int32(2000)
41 algomez 1.1
42     ## Source
43 algomez 1.2 stop2 = str(options.st2) # Convert it into string only for inputfile names
44     stop1 = str(options.st1)
45 algomez 1.1 process.source = cms.Source("PoolSource",
46     fileNames = cms.untracked.vstring(
47 algomez 1.3 ##### For normal process
48     'file:/eos/uscms/store/user/algomez/Stops/PATTuples/st2_h_bb_st1_'+options.use+'_'+stop2+'_'+stop1+'/st2_h_bb_st1_'+options.use+'_'+stop2+'_'+stop1+'_tlbsm_53x_v2_mc_1.root',
49     'file:/eos/uscms/store/user/algomez/Stops/PATTuples/st2_h_bb_st1_'+options.use+'_'+stop2+'_'+stop1+'/st2_h_bb_st1_'+options.use+'_'+stop2+'_'+stop1+'_tlbsm_53x_v2_mc_2.root',
50     'file:/eos/uscms/store/user/algomez/Stops/PATTuples/st2_h_bb_st1_'+options.use+'_'+stop2+'_'+stop1+'/st2_h_bb_st1_'+options.use+'_'+stop2+'_'+stop1+'_tlbsm_53x_v2_mc_3.root',
51     'file:/eos/uscms/store/user/algomez/Stops/PATTuples/st2_h_bb_st1_'+options.use+'_'+stop2+'_'+stop1+'/st2_h_bb_st1_'+options.use+'_'+stop2+'_'+stop1+'_tlbsm_53x_v2_mc_4.root'
52 algomez 1.1
53     )
54     )
55    
56 algomez 1.3 ## Output Dir
57     output_Dir='/uscms_data/d3/algomez/files/stops/GenPlots/st2_h_bb_st1_'+options.use+'_'+stop2+'_'+stop1+'/'
58    
59 algomez 1.1
60     ###############################
61     ########## Gen Setup ##########
62     ###############################
63    
64     process.load("SimGeneral.HepPDTESSource.pythiapdt_cfi")
65    
66    
67 algomez 1.3 ############################# The following EDAnalyzer are usefull for simple analysis,
68     ############################# but I am not using them for the current GenAnalysis.
69 algomez 1.1 ## Print Tree
70     process.printGenParticle = cms.EDAnalyzer("ParticleListDrawer",
71 algomez 1.3 #src = cms.InputTag("prunedGenParticles"),
72     src = cms.InputTag("genParticles"),
73 algomez 1.1 maxEventsToPrint = cms.untracked.int32(1)
74     )
75    
76    
77     ## Some selections
78     process.genPartonClone = cms.EDFilter("CandViewShallowCloneProducer",
79     src = cms.InputTag("prunedGenParticles"),
80     cut = cms.string("(abs(pdgId) = 1 | abs(pdgId) = 2 | abs(pdgId) = 3 | abs(pdgId)=4) & status=3")
81     )
82    
83    
84     process.genBClone = cms.EDFilter("CandViewShallowCloneProducer",
85     src = cms.InputTag("prunedGenParticles"),
86     cut = cms.string("abs(pdgId) = 5 & status=3")
87     )
88    
89     process.genPartonPlusBClone = cms.EDFilter("CandViewShallowCloneProducer",
90     src = cms.InputTag("prunedGenParticles"),
91     cut = cms.string("(abs(pdgId) = 1 | abs(pdgId) = 2 | abs(pdgId) = 3 | abs(pdgId)=4 | abs(pdgId)=5) & status=3")
92     )
93    
94     ## Simple Histos
95     process.partonHistos= cms.EDAnalyzer("CandViewHistoAnalyzer",
96     src = cms.InputTag("genPartonClone"),
97     histograms = cms.VPSet(
98     cms.PSet(
99     min = cms.untracked.double(0.0),
100     max = cms.untracked.double(300.0),
101     nbins = cms.untracked.int32(30),
102     name = cms.untracked.string("jets_Pt"),
103     description = cms.untracked.string("jets pt [GeV/c^{2}]"),
104     plotquantity = cms.untracked.string("pt")
105     )
106     )
107     )
108    
109     process.bHistos= cms.EDAnalyzer("CandViewHistoAnalyzer",
110     src = cms.InputTag("genBClone"),
111     histograms = cms.VPSet(
112     cms.PSet(
113     min = cms.untracked.double(0.0),
114     max = cms.untracked.double(300.0),
115     nbins = cms.untracked.int32(30),
116     name = cms.untracked.string("b_Pt"),
117     description = cms.untracked.string("b pt [GeV/c^{2}]"),
118     plotquantity = cms.untracked.string("pt")
119     )
120     )
121     )
122    
123     process.partonPlusBHistos= cms.EDAnalyzer("CandViewHistoAnalyzer",
124     src = cms.InputTag("genPartonPlusBClone"),
125     histograms = cms.VPSet(
126     cms.PSet(
127     min = cms.untracked.double(0.0),
128     max = cms.untracked.double(300.0),
129     nbins = cms.untracked.int32(30),
130     name = cms.untracked.string("jets_b_Pt"),
131     description = cms.untracked.string("jets + b pt [GeV/c^{2}]"),
132     plotquantity = cms.untracked.string("pt")
133     )
134     )
135     )
136    
137 algomez 1.3 dummyprocess = -999
138     if options.use=='bj': dummyprocess = 1
139     else: dummyprocess = 0
140 algomez 1.1 ############################
141     ###### My Analyzer ########
142     ############################
143     process.genHistos = cms.EDAnalyzer('GenAnalyzer',
144 algomez 1.3 #src = cms.InputTag("prunedGenParticles"),
145     src = cms.InputTag("genParticles"),
146 algomez 1.2 stop1Mass = cms.double(options.st1),
147 algomez 1.3 stop2Mass = cms.double(options.st2),
148     st1decay = cms.double(dummyprocess)
149 algomez 1.1 )
150    
151     #############################
152     ###### Output module #######
153     #############################
154     process.TFileService = cms.Service("TFileService",
155 algomez 1.2 fileName = cms.string (output_Dir+options.output)
156 algomez 1.1 )
157    
158    
159     #############################
160     ########## Run ##############
161     #############################
162     process.p = cms.Path(process.printGenParticle*process.genHistos)
163     #process.p = cms.Path(process.genPartonClone*process.partonHistos*process.genBClone*process.bHistos*process.genPartonPlusBClone*process.partonPlusBHistos*process.genHistos)
164    
165     #process.outpath = cms.EndPath(process.out)