5 Scenario supporting proton collisions
12 from Configuration.DataProcessing.Scenario
import Scenario
13 from Configuration.DataProcessing.Utils
import stepALCAPRODUCER,addMonitoring
15 from Configuration.PyReleaseValidation.ConfigBuilder
import ConfigBuilder
16 from Configuration.PyReleaseValidation.ConfigBuilder
import Options
17 from Configuration.PyReleaseValidation.ConfigBuilder
import defaultOptions
18 from Configuration.PyReleaseValidation.ConfigBuilder
import installFilteredStream
19 from Configuration.DataProcessing.RecoTLR
import customisePrompt,customiseExpress
25 Implement configuration building for data processing for proton
31 def promptReco(self, globalTag, writeTiers = ['RECO'], **args):
35 Proton collision data taking prompt reco
39 skims = [
'TkAlMinBias',
53 options.__dict__.update(defaultOptions.__dict__)
54 options.scenario =
"pp"
55 options.step =
'RAW2DIGI,L1Reco,RECO'+step+
',L1HwVal,DQM,ENDJOB'
58 options.beamspot =
None
59 options.eventcontent =
','.
join(writeTiers)
60 options.datatier =
','.
join(writeTiers)
61 options.magField =
'AutoFromDBCurrent'
62 options.conditions =
"FrontierConditions_GlobalTag,%s" % globalTag
63 options.relval =
False
65 process = cms.Process(
'RECO')
66 cb =
ConfigBuilder(options, process = process, with_output =
True)
69 process.source = cms.Source(
"PoolSource",
70 fileNames = cms.untracked.vstring()
85 Proton collision data taking express processing
89 skims = [
'SiStripCalZeroBias',
96 options.__dict__.update(defaultOptions.__dict__)
97 options.scenario =
"pp"
98 options.step =
'RAW2DIGI,L1Reco,RECO'+step+
',L1HwVal,DQM,ENDJOB'
100 options.isData =
True
101 options.beamspot =
None
102 options.eventcontent =
','.
join(writeTiers)
103 options.datatier =
','.
join(writeTiers)
104 options.magField =
'AutoFromDBCurrent'
105 options.conditions =
"FrontierConditions_GlobalTag,%s" % globalTag
106 options.relval =
False
108 process = cms.Process(
'RECO')
109 cb =
ConfigBuilder(options, process = process, with_output =
True)
112 process.source = cms.Source(
"NewEventStreamFileReader",
113 fileNames = cms.untracked.vstring()
128 AlcaReco processing & skims for proton collisions
133 if 'globaltag' in args:
134 globalTag = args[
'globaltag']
137 if 'PromptCalibProd' in skims:
138 step =
"ALCA:PromptCalibProd"
139 skims.remove(
'PromptCalibProd')
144 step +=
"ALCAOUTPUT:"
149 options.__dict__.update(defaultOptions.__dict__)
150 options.scenario =
"pp"
151 options.step = step.rstrip(
'+')
153 options.isData =
True
154 options.beamspot =
None
155 options.eventcontent =
None
156 options.relval =
None
157 if globalTag !=
None :
158 options.conditions =
"FrontierConditions_GlobalTag,%s" % globalTag
159 options.triggerResultsProcess =
'RECO'
161 process = cms.Process(
'ALCA')
165 process.source = cms.Source(
167 fileNames = cms.untracked.vstring()
174 if 'PromptCalibProd' in step:
175 process.ALCARECOStreamPromptCalibProd.dataset.dataTier = cms.untracked.string(
'ALCAPROMPT')
184 Proton collisions data taking DQM Harvesting
187 options = defaultOptions
188 options.scenario =
"pp"
189 options.step =
"HARVESTING:dqmHarvesting"
191 options.isData =
True
192 options.beamspot =
None
193 options.eventcontent =
None
194 options.name =
"EDMtoMEConvert"
195 options.conditions =
"FrontierConditions_GlobalTag,%s" % globalTag
196 options.arguments =
""
197 options.evt_type =
""
200 process = cms.Process(
"HARVESTING")
201 process.source = cms.Source(
"PoolSource")
203 configBuilder.prepare()
208 process.source.processingMode = cms.untracked.string(
'RunsAndLumis')
209 process.source.fileNames = cms.untracked(cms.vstring())
210 process.maxEvents.input = -1
211 process.dqmSaver.workflow = datasetName
212 process.dqmSaver.saveByLumiSection = 1
213 if args.has_key(
'referenceFile')
and args.get(
'referenceFile',
''):
214 process.DQMStore.referenceFileName = \
215 cms.untracked.string(args[
'referenceFile'])
224 Proton collisions data taking AlCa Harvesting
227 options = defaultOptions
228 options.scenario =
"pp"
229 options.step =
"ALCAHARVEST:BeamSpotByRun+BeamSpotByLumi+SiStripQuality"
231 options.isData =
True
232 options.beamspot =
None
233 options.eventcontent =
None
234 options.name =
"ALCAHARVEST"
235 options.conditions = globalTag
236 options.arguments =
""
237 options.evt_type =
""
240 process = cms.Process(
"ALCAHARVEST")
241 process.source = cms.Source(
"PoolSource")
243 configBuilder.prepare()
248 process.source.processingMode = cms.untracked.string(
'RunsAndLumis')
249 process.source.fileNames = cms.untracked(cms.vstring())
250 process.maxEvents.input = -1
251 process.dqmSaver.workflow = datasetName
static std::string join(char **cmd)