ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MuJetAnalysis/AnalysisTools/FitNtuple/python/FitNtuple_cfg.py
Revision: 1.11
Committed: Wed Dec 15 20:55:09 2010 UTC (14 years, 4 months ago) by pivarski
Content type: text/x-python
Branch: MAIN
CVS Tags: JP-2010-12-15-b, JP-2010-12-15-a
Changes since 1.10: +1 -1 lines
Log Message:
added signal ntuples

File Contents

# User Rev Content
1 pivarski 1.1 import FWCore.ParameterSet.Config as cms
2     import os
3    
4     realData = False
5     getQscale = False
6     getAlternating = False
7    
8     WHICH = int(os.getenv("PROCESS"))
9    
10 pivarski 1.8 # if WHICH not in (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111): raise Exception
11 pivarski 1.4
12 pivarski 1.1 if WHICH == 0:
13     getQscale = True
14     sample = "ppMuX_CMSSW382_v6"
15     elif WHICH in (1, 2, 3, 4):
16     getQscale = True
17     sample = "InclusiveMu5_Pt30_CMSSW382_v6"
18     elif WHICH in (5, 6, 7, 8):
19     getQscale = True
20     sample = "InclusiveMu5_Pt50_CMSSW382_v6"
21     elif WHICH in (9, 10):
22     getQscale = True
23     sample = "InclusiveMu5_Pt150_CMSSW382_v6"
24     elif WHICH == 11:
25     getQscale = True
26     sample = "InclusiveMu5_Pt250_CMSSW382_v6"
27     elif WHICH == 12:
28     getQscale = True
29     sample = "InclusiveMu5_Pt350_CMSSW382_v6"
30    
31 pivarski 1.4 elif WHICH in (13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26): sample = "DrellYanPythia8_CMSSW382_v6"
32 pivarski 1.1
33     elif WHICH == 27: sample = "JPsiToMuMu_CMSSW382_v6"
34     elif WHICH == 28: sample = "Psi2SToJpsiPiPi_CMSSW382_v6"
35     elif WHICH == 29: sample = "Psi2SToMuMu_CMSSW382_v6"
36    
37     elif WHICH in (30, 31, 32, 33, 34, 35, 36, 37, 38, 39):
38     getAlternating = True
39     sample = "PairGun100_mass50_alternating_CMSSW382_v6"
40     elif WHICH in (40, 41):
41     getAlternating = True
42     sample = "PairGun100_alternating_CMSSW382_v6"
43     elif WHICH in (42, 43):
44     getAlternating = True
45     sample = "PairGun100_pileup_alternating_CMSSW382_v6"
46     elif WHICH in (44, 45):
47     getAlternating = True
48     sample = "PairGun100_pileup5_alternating_CMSSW382_v6"
49     elif WHICH in (46, 47):
50     getAlternating = True
51     sample = "PairGun100_dispvert100_alternating_CMSSW382_v6"
52     elif WHICH in (48, 49):
53     getAlternating = True
54     sample = "PairPairGun100_pileup_alternating_CMSSW382_v6"
55    
56     elif WHICH in (50, 51, 52): sample = "NMSSMHiggs_h100_a2_pileup_CMSSW382_v6"
57     elif WHICH in (53, 54, 55): sample = "EXTRAU1_DMAA_pileup_CMSSW382_v6"
58     elif WHICH in (56, 57, 58): sample = "EXTRAU1_DMMIXED_pileup_CMSSW382_v6"
59     elif WHICH in (59, 60, 61): sample = "EXTRAU1_electrons_pileup_CMSSW382_v6"
60     elif WHICH in (62, 63, 64): sample = "EXTRAU1_pions_pileup_CMSSW382_v6"
61    
62     elif WHICH == 65: sample = "WZ_CMSSW382_v6"
63     elif WHICH == 66: sample = "ZZ_CMSSW382_v6"
64     elif WHICH == 67: sample = "WW_CMSSW382_v6"
65    
66     elif WHICH in (68, 69, 70, 71, 72, 73, 74, 75): sample = "inclBB2mu_CMSSW384_v6"
67     elif WHICH in (76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87): sample = "inclBB4mu_CMSSW384_v6"
68    
69     elif WHICH == 88: sample = "inclBB4mu_Pt50_CMSSW384_v6"
70     elif WHICH == 89: sample = "inclBB4mu_Pt150_CMSSW384_v6"
71     elif WHICH == 90: sample = "inclBB4mu_Pt250_CMSSW384_v6"
72     elif WHICH == 91: sample = "inclBB4mu_Pt350_CMSSW384_v6"
73    
74     elif WHICH in (92, 93, 94, 95, 96, 97, 98, 99, 100, 101):
75     sample = "DataSep17_CMSSW382_v6"
76     realData = True
77     elif WHICH in (102, 103, 104, 105, 106, 107, 108, 109, 110, 111):
78     sample = "Data2010BPromptAll_CMSSW384_v6"
79     realData = True
80    
81     else: raise Exception
82    
83     process = cms.Process("FITNTUPLE")
84     process.load("AnalysisDataFormats.MuJetAnalysis.filelists.%s_cff" % sample)
85     lenFileNames = len(process.source.fileNames)
86    
87     if WHICH == 1: process.source.fileNames = process.source.fileNames[lenFileNames*0/4:lenFileNames*1/4]
88     if WHICH == 2: process.source.fileNames = process.source.fileNames[lenFileNames*1/4:lenFileNames*2/4]
89     if WHICH == 3: process.source.fileNames = process.source.fileNames[lenFileNames*2/4:lenFileNames*3/4]
90     if WHICH == 4: process.source.fileNames = process.source.fileNames[lenFileNames*3/4:lenFileNames*4/4]
91    
92     if WHICH == 5: process.source.fileNames = process.source.fileNames[lenFileNames*0/4:lenFileNames*1/4]
93     if WHICH == 6: process.source.fileNames = process.source.fileNames[lenFileNames*1/4:lenFileNames*2/4]
94     if WHICH == 7: process.source.fileNames = process.source.fileNames[lenFileNames*2/4:lenFileNames*3/4]
95     if WHICH == 8: process.source.fileNames = process.source.fileNames[lenFileNames*3/4:lenFileNames*4/4]
96    
97     if WHICH == 9: process.source.fileNames = process.source.fileNames[lenFileNames*0/2:lenFileNames*1/2]
98     if WHICH == 10: process.source.fileNames = process.source.fileNames[lenFileNames*1/2:lenFileNames*2/2]
99    
100 pivarski 1.4 if WHICH == 13: process.source.fileNames = process.source.fileNames[lenFileNames*0/14:lenFileNames*1/14]
101     if WHICH == 14: process.source.fileNames = process.source.fileNames[lenFileNames*1/14:lenFileNames*2/14]
102     if WHICH == 15: process.source.fileNames = process.source.fileNames[lenFileNames*2/14:lenFileNames*3/14]
103     if WHICH == 16: process.source.fileNames = process.source.fileNames[lenFileNames*3/14:lenFileNames*4/14]
104     if WHICH == 17: process.source.fileNames = process.source.fileNames[lenFileNames*4/14:lenFileNames*5/14]
105     if WHICH == 18: process.source.fileNames = process.source.fileNames[lenFileNames*5/14:lenFileNames*6/14]
106     if WHICH == 19: process.source.fileNames = process.source.fileNames[lenFileNames*6/14:lenFileNames*7/14]
107     if WHICH == 20: process.source.fileNames = process.source.fileNames[lenFileNames*7/14:lenFileNames*8/14]
108     if WHICH == 21: process.source.fileNames = process.source.fileNames[lenFileNames*8/14:lenFileNames*9/14]
109     if WHICH == 22: process.source.fileNames = process.source.fileNames[lenFileNames*9/14:lenFileNames*10/14]
110     if WHICH == 23: process.source.fileNames = process.source.fileNames[lenFileNames*10/14:lenFileNames*11/14]
111     if WHICH == 24: process.source.fileNames = process.source.fileNames[lenFileNames*11/14:lenFileNames*12/14]
112     if WHICH == 25: process.source.fileNames = process.source.fileNames[lenFileNames*12/14:lenFileNames*13/14]
113     if WHICH == 26: process.source.fileNames = process.source.fileNames[lenFileNames*13/14:lenFileNames*14/14]
114 pivarski 1.1
115     if WHICH == 30: process.source.fileNames = process.source.fileNames[lenFileNames*0/10:lenFileNames*1/10]
116     if WHICH == 31: process.source.fileNames = process.source.fileNames[lenFileNames*1/10:lenFileNames*2/10]
117     if WHICH == 32: process.source.fileNames = process.source.fileNames[lenFileNames*2/10:lenFileNames*3/10]
118     if WHICH == 33: process.source.fileNames = process.source.fileNames[lenFileNames*3/10:lenFileNames*4/10]
119     if WHICH == 34: process.source.fileNames = process.source.fileNames[lenFileNames*4/10:lenFileNames*5/10]
120     if WHICH == 35: process.source.fileNames = process.source.fileNames[lenFileNames*5/10:lenFileNames*6/10]
121     if WHICH == 36: process.source.fileNames = process.source.fileNames[lenFileNames*6/10:lenFileNames*7/10]
122     if WHICH == 37: process.source.fileNames = process.source.fileNames[lenFileNames*7/10:lenFileNames*8/10]
123     if WHICH == 38: process.source.fileNames = process.source.fileNames[lenFileNames*8/10:lenFileNames*9/10]
124     if WHICH == 39: process.source.fileNames = process.source.fileNames[lenFileNames*9/10:lenFileNames*10/10]
125    
126     if WHICH == 40: process.source.fileNames = process.source.fileNames[lenFileNames*0/2:lenFileNames*1/2]
127     if WHICH == 41: process.source.fileNames = process.source.fileNames[lenFileNames*1/2:lenFileNames*2/2]
128    
129     if WHICH == 42: process.source.fileNames = process.source.fileNames[lenFileNames*0/2:lenFileNames*1/2]
130     if WHICH == 43: process.source.fileNames = process.source.fileNames[lenFileNames*1/2:lenFileNames*2/2]
131    
132     if WHICH == 44: process.source.fileNames = process.source.fileNames[lenFileNames*0/2:lenFileNames*1/2]
133     if WHICH == 45: process.source.fileNames = process.source.fileNames[lenFileNames*1/2:lenFileNames*2/2]
134    
135     if WHICH == 46: process.source.fileNames = process.source.fileNames[lenFileNames*0/2:lenFileNames*1/2]
136     if WHICH == 47: process.source.fileNames = process.source.fileNames[lenFileNames*1/2:lenFileNames*2/2]
137    
138     if WHICH == 48: process.source.fileNames = process.source.fileNames[lenFileNames*0/2:lenFileNames*1/2]
139     if WHICH == 49: process.source.fileNames = process.source.fileNames[lenFileNames*1/2:lenFileNames*2/2]
140    
141     if WHICH == 50: process.source.fileNames = process.source.fileNames[lenFileNames*0/3:lenFileNames*1/3]
142     if WHICH == 51: process.source.fileNames = process.source.fileNames[lenFileNames*1/3:lenFileNames*2/3]
143     if WHICH == 52: process.source.fileNames = process.source.fileNames[lenFileNames*2/3:lenFileNames*3/3]
144    
145     if WHICH == 53: process.source.fileNames = process.source.fileNames[lenFileNames*0/3:lenFileNames*1/3]
146     if WHICH == 54: process.source.fileNames = process.source.fileNames[lenFileNames*1/3:lenFileNames*2/3]
147     if WHICH == 55: process.source.fileNames = process.source.fileNames[lenFileNames*2/3:lenFileNames*3/3]
148    
149     if WHICH == 56: process.source.fileNames = process.source.fileNames[lenFileNames*0/3:lenFileNames*1/3]
150     if WHICH == 57: process.source.fileNames = process.source.fileNames[lenFileNames*1/3:lenFileNames*2/3]
151     if WHICH == 58: process.source.fileNames = process.source.fileNames[lenFileNames*2/3:lenFileNames*3/3]
152    
153     if WHICH == 59: process.source.fileNames = process.source.fileNames[lenFileNames*0/3:lenFileNames*1/3]
154     if WHICH == 60: process.source.fileNames = process.source.fileNames[lenFileNames*1/3:lenFileNames*2/3]
155     if WHICH == 61: process.source.fileNames = process.source.fileNames[lenFileNames*2/3:lenFileNames*3/3]
156    
157     if WHICH == 62: process.source.fileNames = process.source.fileNames[lenFileNames*0/3:lenFileNames*1/3]
158     if WHICH == 63: process.source.fileNames = process.source.fileNames[lenFileNames*1/3:lenFileNames*2/3]
159     if WHICH == 64: process.source.fileNames = process.source.fileNames[lenFileNames*2/3:lenFileNames*3/3]
160    
161     if WHICH == 68: process.source.fileNames = process.source.fileNames[lenFileNames*0/8:lenFileNames*1/8]
162     if WHICH == 69: process.source.fileNames = process.source.fileNames[lenFileNames*1/8:lenFileNames*2/8]
163     if WHICH == 70: process.source.fileNames = process.source.fileNames[lenFileNames*2/8:lenFileNames*3/8]
164     if WHICH == 71: process.source.fileNames = process.source.fileNames[lenFileNames*3/8:lenFileNames*4/8]
165     if WHICH == 72: process.source.fileNames = process.source.fileNames[lenFileNames*4/8:lenFileNames*5/8]
166     if WHICH == 73: process.source.fileNames = process.source.fileNames[lenFileNames*5/8:lenFileNames*6/8]
167     if WHICH == 74: process.source.fileNames = process.source.fileNames[lenFileNames*6/8:lenFileNames*7/8]
168     if WHICH == 75: process.source.fileNames = process.source.fileNames[lenFileNames*7/8:lenFileNames*8/8]
169    
170     if WHICH == 76: process.source.fileNames = process.source.fileNames[lenFileNames*0/12:lenFileNames*1/12]
171     if WHICH == 77: process.source.fileNames = process.source.fileNames[lenFileNames*1/12:lenFileNames*2/12]
172     if WHICH == 78: process.source.fileNames = process.source.fileNames[lenFileNames*2/12:lenFileNames*3/12]
173     if WHICH == 79: process.source.fileNames = process.source.fileNames[lenFileNames*3/12:lenFileNames*4/12]
174     if WHICH == 80: process.source.fileNames = process.source.fileNames[lenFileNames*4/12:lenFileNames*5/12]
175     if WHICH == 81: process.source.fileNames = process.source.fileNames[lenFileNames*5/12:lenFileNames*6/12]
176     if WHICH == 82: process.source.fileNames = process.source.fileNames[lenFileNames*6/12:lenFileNames*7/12]
177     if WHICH == 83: process.source.fileNames = process.source.fileNames[lenFileNames*7/12:lenFileNames*8/12]
178     if WHICH == 84: process.source.fileNames = process.source.fileNames[lenFileNames*8/12:lenFileNames*9/12]
179     if WHICH == 85: process.source.fileNames = process.source.fileNames[lenFileNames*9/12:lenFileNames*10/12]
180     if WHICH == 86: process.source.fileNames = process.source.fileNames[lenFileNames*10/12:lenFileNames*11/12]
181     if WHICH == 87: process.source.fileNames = process.source.fileNames[lenFileNames*11/12:lenFileNames*12/12]
182    
183     if WHICH == 92: process.source.fileNames = process.source.fileNames[lenFileNames*0/10:lenFileNames*1/10]
184     if WHICH == 93: process.source.fileNames = process.source.fileNames[lenFileNames*1/10:lenFileNames*2/10]
185     if WHICH == 94: process.source.fileNames = process.source.fileNames[lenFileNames*2/10:lenFileNames*3/10]
186     if WHICH == 95: process.source.fileNames = process.source.fileNames[lenFileNames*3/10:lenFileNames*4/10]
187     if WHICH == 96: process.source.fileNames = process.source.fileNames[lenFileNames*4/10:lenFileNames*5/10]
188     if WHICH == 97: process.source.fileNames = process.source.fileNames[lenFileNames*5/10:lenFileNames*6/10]
189     if WHICH == 98: process.source.fileNames = process.source.fileNames[lenFileNames*6/10:lenFileNames*7/10]
190     if WHICH == 99: process.source.fileNames = process.source.fileNames[lenFileNames*7/10:lenFileNames*8/10]
191     if WHICH == 100: process.source.fileNames = process.source.fileNames[lenFileNames*8/10:lenFileNames*9/10]
192     if WHICH == 101: process.source.fileNames = process.source.fileNames[lenFileNames*9/10:lenFileNames*10/10]
193    
194     if WHICH == 102: process.source.fileNames = process.source.fileNames[lenFileNames*0/10:lenFileNames*1/10]
195     if WHICH == 103: process.source.fileNames = process.source.fileNames[lenFileNames*1/10:lenFileNames*2/10]
196     if WHICH == 104: process.source.fileNames = process.source.fileNames[lenFileNames*2/10:lenFileNames*3/10]
197     if WHICH == 105: process.source.fileNames = process.source.fileNames[lenFileNames*3/10:lenFileNames*4/10]
198     if WHICH == 106: process.source.fileNames = process.source.fileNames[lenFileNames*4/10:lenFileNames*5/10]
199     if WHICH == 107: process.source.fileNames = process.source.fileNames[lenFileNames*5/10:lenFileNames*6/10]
200     if WHICH == 108: process.source.fileNames = process.source.fileNames[lenFileNames*6/10:lenFileNames*7/10]
201     if WHICH == 109: process.source.fileNames = process.source.fileNames[lenFileNames*7/10:lenFileNames*8/10]
202     if WHICH == 110: process.source.fileNames = process.source.fileNames[lenFileNames*8/10:lenFileNames*9/10]
203     if WHICH == 111: process.source.fileNames = process.source.fileNames[lenFileNames*9/10:lenFileNames*10/10]
204    
205     process.maxEvents = cms.untracked.PSet(input = cms.untracked.int32(-1))
206    
207 pivarski 1.2 process.MessageLogger = cms.Service("MessageLogger", destinations = cms.untracked.vstring("cout"), cout = cms.untracked.PSet(threshold = cms.untracked.string("ERROR")))
208 pivarski 1.1 process.load("Configuration/StandardSequences/FrontierConditions_GlobalTag_cff")
209     process.GlobalTag.globaltag = "MC_38Y_V12::All"
210    
211 pivarski 1.2 process.NoScraping = cms.EDFilter("FilterOutScraping",
212     applyfilter = cms.untracked.bool(True),
213     debugOn = cms.untracked.bool(False),
214     numtrack = cms.untracked.uint32(10),
215     thresh = cms.untracked.double(0.25)
216     )
217 pivarski 1.1
218 pivarski 1.2 process.load("RecoVertex.PrimaryVertexProducer.OfflinePrimaryVertices_cfi")
219     process.OneGoodVertexFilter = cms.EDFilter("VertexSelector",
220     src = cms.InputTag("offlinePrimaryVertices"),
221     cut = cms.string("!isFake && tracksSize > 3 && abs(z) <= 24"),
222     filter = cms.bool(True),
223     )
224 pivarski 1.1
225     process.load("AnalysisAlgos.MuJetProducer.MuJetProducer_cff")
226     process.MuJetProducer.muons = cms.InputTag("cleanPatMuonsTriggerMatch")
227    
228 pivarski 1.8 process.load("AnalysisAlgos.MuJetPlusFakeMuon.MuJetPlusFakeMuon_cfi")
229     process.MuJetPlusTracks = process.MuJetPlusFakeMuon.clone(numberOfFakes = cms.uint32(2))
230    
231 pivarski 1.1 process.FitNtuple = cms.EDAnalyzer("FitNtuple",
232     getQscale = cms.bool(getQscale),
233     getAlternating = cms.bool(getAlternating),
234 pivarski 1.8 fillGenLevel = cms.bool(not realData),
235 pivarski 1.1 )
236    
237 pivarski 1.4 if getAlternating:
238 pivarski 1.8 process.Path = cms.Path(process.MuJetProducer * process.MuJetPlusTracks * process.FitNtuple)
239 pivarski 1.4 else:
240 pivarski 1.8 process.Path = cms.Path(process.NoScraping * process.OneGoodVertexFilter * process.MuJetProducer * process.MuJetPlusTracks * process.FitNtuple)
241 pivarski 1.4
242 pivarski 1.11 process.TFileService = cms.Service("TFileService", fileName = cms.string("/uscmst1b_scratch/lpc1/3DayLifetime/pivarski/FITNTUPLE09/FitNtuple_%s_%d.root" % (sample, WHICH)))