ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MuJetAnalysis/AnalysisTools/FitNtuple/python/FitNtuple_cfg.py
Revision: 1.3
Committed: Mon Nov 22 21:17:43 2010 UTC (14 years, 5 months ago) by pivarski
Content type: text/x-python
Branch: MAIN
CVS Tags: JP-2010-11-22-a
Changes since 1.2: +1 -1 lines
Log Message:
both gen-level muons must be valid before you try to access them!

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     if WHICH == 0:
11     getQscale = True
12     sample = "ppMuX_CMSSW382_v6"
13     elif WHICH in (1, 2, 3, 4):
14     getQscale = True
15     sample = "InclusiveMu5_Pt30_CMSSW382_v6"
16     elif WHICH in (5, 6, 7, 8):
17     getQscale = True
18     sample = "InclusiveMu5_Pt50_CMSSW382_v6"
19     elif WHICH in (9, 10):
20     getQscale = True
21     sample = "InclusiveMu5_Pt150_CMSSW382_v6"
22     elif WHICH == 11:
23     getQscale = True
24     sample = "InclusiveMu5_Pt250_CMSSW382_v6"
25     elif WHICH == 12:
26     getQscale = True
27     sample = "InclusiveMu5_Pt350_CMSSW382_v6"
28    
29     elif WHICH == 13: sample = "DYmumu_M0_5_CMSSW382_v6"
30     elif WHICH == 14: sample = "DYmumu_M5_10_CMSSW382_v6"
31     elif WHICH in (15, 16): sample = "DYmumu_M10_20_CMSSW382_v6"
32     elif WHICH in (17, 18, 19, 20, 21, 22, 23, 24, 25, 26): sample = "Zmumu_M20_CMSSW382_v6"
33    
34     elif WHICH == 27: sample = "JPsiToMuMu_CMSSW382_v6"
35     elif WHICH == 28: sample = "Psi2SToJpsiPiPi_CMSSW382_v6"
36     elif WHICH == 29: sample = "Psi2SToMuMu_CMSSW382_v6"
37    
38     elif WHICH in (30, 31, 32, 33, 34, 35, 36, 37, 38, 39):
39     getAlternating = True
40     sample = "PairGun100_mass50_alternating_CMSSW382_v6"
41     elif WHICH in (40, 41):
42     getAlternating = True
43     sample = "PairGun100_alternating_CMSSW382_v6"
44     elif WHICH in (42, 43):
45     getAlternating = True
46     sample = "PairGun100_pileup_alternating_CMSSW382_v6"
47     elif WHICH in (44, 45):
48     getAlternating = True
49     sample = "PairGun100_pileup5_alternating_CMSSW382_v6"
50     elif WHICH in (46, 47):
51     getAlternating = True
52     sample = "PairGun100_dispvert100_alternating_CMSSW382_v6"
53     elif WHICH in (48, 49):
54     getAlternating = True
55     sample = "PairPairGun100_pileup_alternating_CMSSW382_v6"
56    
57     elif WHICH in (50, 51, 52): sample = "NMSSMHiggs_h100_a2_pileup_CMSSW382_v6"
58     elif WHICH in (53, 54, 55): sample = "EXTRAU1_DMAA_pileup_CMSSW382_v6"
59     elif WHICH in (56, 57, 58): sample = "EXTRAU1_DMMIXED_pileup_CMSSW382_v6"
60     elif WHICH in (59, 60, 61): sample = "EXTRAU1_electrons_pileup_CMSSW382_v6"
61     elif WHICH in (62, 63, 64): sample = "EXTRAU1_pions_pileup_CMSSW382_v6"
62    
63     elif WHICH == 65: sample = "WZ_CMSSW382_v6"
64     elif WHICH == 66: sample = "ZZ_CMSSW382_v6"
65     elif WHICH == 67: sample = "WW_CMSSW382_v6"
66    
67     elif WHICH in (68, 69, 70, 71, 72, 73, 74, 75): sample = "inclBB2mu_CMSSW384_v6"
68     elif WHICH in (76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87): sample = "inclBB4mu_CMSSW384_v6"
69    
70     elif WHICH == 88: sample = "inclBB4mu_Pt50_CMSSW384_v6"
71     elif WHICH == 89: sample = "inclBB4mu_Pt150_CMSSW384_v6"
72     elif WHICH == 90: sample = "inclBB4mu_Pt250_CMSSW384_v6"
73     elif WHICH == 91: sample = "inclBB4mu_Pt350_CMSSW384_v6"
74    
75     elif WHICH in (92, 93, 94, 95, 96, 97, 98, 99, 100, 101):
76     sample = "DataSep17_CMSSW382_v6"
77     realData = True
78     elif WHICH in (102, 103, 104, 105, 106, 107, 108, 109, 110, 111):
79     sample = "Data2010BPromptAll_CMSSW384_v6"
80     realData = True
81    
82     else: raise Exception
83    
84     process = cms.Process("FITNTUPLE")
85     process.load("AnalysisDataFormats.MuJetAnalysis.filelists.%s_cff" % sample)
86     lenFileNames = len(process.source.fileNames)
87    
88     if WHICH == 1: process.source.fileNames = process.source.fileNames[lenFileNames*0/4:lenFileNames*1/4]
89     if WHICH == 2: process.source.fileNames = process.source.fileNames[lenFileNames*1/4:lenFileNames*2/4]
90     if WHICH == 3: process.source.fileNames = process.source.fileNames[lenFileNames*2/4:lenFileNames*3/4]
91     if WHICH == 4: process.source.fileNames = process.source.fileNames[lenFileNames*3/4:lenFileNames*4/4]
92    
93     if WHICH == 5: process.source.fileNames = process.source.fileNames[lenFileNames*0/4:lenFileNames*1/4]
94     if WHICH == 6: process.source.fileNames = process.source.fileNames[lenFileNames*1/4:lenFileNames*2/4]
95     if WHICH == 7: process.source.fileNames = process.source.fileNames[lenFileNames*2/4:lenFileNames*3/4]
96     if WHICH == 8: process.source.fileNames = process.source.fileNames[lenFileNames*3/4:lenFileNames*4/4]
97    
98     if WHICH == 9: process.source.fileNames = process.source.fileNames[lenFileNames*0/2:lenFileNames*1/2]
99     if WHICH == 10: process.source.fileNames = process.source.fileNames[lenFileNames*1/2:lenFileNames*2/2]
100    
101     if WHICH == 15: process.source.fileNames = process.source.fileNames[lenFileNames*0/2:lenFileNames*1/2]
102     if WHICH == 16: process.source.fileNames = process.source.fileNames[lenFileNames*1/2:lenFileNames*2/2]
103    
104     if WHICH == 17: process.source.fileNames = process.source.fileNames[lenFileNames*0/10:lenFileNames*1/10]
105     if WHICH == 18: process.source.fileNames = process.source.fileNames[lenFileNames*1/10:lenFileNames*2/10]
106     if WHICH == 19: process.source.fileNames = process.source.fileNames[lenFileNames*2/10:lenFileNames*3/10]
107     if WHICH == 20: process.source.fileNames = process.source.fileNames[lenFileNames*3/10:lenFileNames*4/10]
108     if WHICH == 21: process.source.fileNames = process.source.fileNames[lenFileNames*4/10:lenFileNames*5/10]
109     if WHICH == 22: process.source.fileNames = process.source.fileNames[lenFileNames*5/10:lenFileNames*6/10]
110     if WHICH == 23: process.source.fileNames = process.source.fileNames[lenFileNames*6/10:lenFileNames*7/10]
111     if WHICH == 24: process.source.fileNames = process.source.fileNames[lenFileNames*7/10:lenFileNames*8/10]
112     if WHICH == 25: process.source.fileNames = process.source.fileNames[lenFileNames*8/10:lenFileNames*9/10]
113     if WHICH == 26: process.source.fileNames = process.source.fileNames[lenFileNames*9/10:lenFileNames*10/10]
114    
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     process.FitNtuple = cms.EDAnalyzer("FitNtuple",
229 pivarski 1.2 src = cms.InputTag("MuJetProducer"),
230 pivarski 1.1 getQscale = cms.bool(getQscale),
231     getAlternating = cms.bool(getAlternating),
232     )
233    
234 pivarski 1.2 process.Path = cms.Path(process.NoScraping * process.OneGoodVertexFilter * process.MuJetProducer * process.FitNtuple)
235 pivarski 1.1
236 pivarski 1.3 process.TFileService = cms.Service("TFileService", fileName = cms.string("/uscmst1b_scratch/lpc1/3DayLifetime/pivarski/FITNTUPLE02/FitNtuple_%s_%d.root" % (sample, WHICH)))