def __init__(self, run, dir, config): self.pset_name = 'DTTTrigCalibration_cfg.py' self.outputfile = 'DTTimeBoxes.root' self.config = config self.dir = dir #self.crab_template = os.environ['CMSSW_BASE'] + '/src/Workflow/' + 'templates/crab/crab_ttrig_prod_TEMPL.cfg' #self.pset_template = os.environ['CMSSW_BASE'] + '/src/Workflow/' + 'templates/config/DTTTrigCalibration_TEMPL_cfg.py' self.crab_template = config.templatepath + '/crab/crab_ttrig_prod.cfg' self.pset_template = config.templatepath + '/config/DTTTrigCalibration_cfg.py' #self.crab_opts = crab_opts #self.crab_opts['PSET'] = pset_name #self.pset_opts = pset_opts #self.crab_cfg = replaceTemplate(self.crab_template,**self.crab_opts) #self.pset = replaceTemplate(self.pset_template,**self.pset_opts) #desc = 'Run%s'%run #desc += '/Ttrig/Production' #self.desc = desc self.initProcess() self.initCrab() #self.task = CrabTask(self.dir,self.crab_cfg,self.pset,self.pset_name) self.task = CrabTask(self.dir, self.crab_cfg)
def __init__(self, run, dir, input_db, config): self.pset_name = 'DTkFactValidation_1_cfg.py' self.outputfile = 'residuals.root,DQM.root' self.config = config self.dir = dir self.inputdb = input_db #self.crab_template = os.environ['CMSSW_BASE'] + '/src/Workflow/' + 'templates/crab/crab_Valid_TEMPL.cfg' #self.pset_template = os.environ['CMSSW_BASE'] + '/src/Workflow/' + 'templates/config/DTkFactValidation_1_TEMPL_cfg.py' self.crab_template = config.templatepath + '/crab/crab_ttrig_valid.cfg' self.pset_template = config.templatepath + '/config/DTkFactValidation_1_cfg.py' #self.crab_opts = crab_opts #self.crab_opts['PSET'] = pset_name #self.pset_opts = pset_opts #self.crab_cfg = replaceTemplate(self.crab_template,**self.crab_opts) #self.pset = replaceTemplate(self.pset_template,**self.pset_opts) #desc = 'Run%s'%run #desc += '/Ttrig/Validation' #self.desc = desc self.initProcess() self.initCrab() #self.task = CrabTask(self.desc,self.crab_cfg,self.pset,pset_name) self.task = CrabTask(self.dir, self.crab_cfg)
def __init__(self, run, dir, config): self.pset_name = 'dtVDriftSegmentCalibration_cfg.py' self.outputfile = 'DTVDriftHistos.root' self.config = config self.dir = dir self.pset_template = 'CalibMuon.DTCalibration.dtVDriftSegmentCalibration_cfg' if hasattr(self.config, 'runOnCosmics') and self.config.runOnCosmics: self.pset_template = 'CalibMuon.DTCalibration.dtVDriftSegmentCalibration_cosmics_cfg' self.process = None self.crab_cfg = None self.initProcess() self.initCrab() self.task = CrabTask(self.dir, self.crab_cfg)
def __init__(self, run, dir, input_db, config): self.pset_name = 'dtResidualCalibration_cfg.py' self.outputfile = 'residuals.root' self.config = config self.dir = dir self.inputdb = input_db self.pset_template = 'CalibMuon.DTCalibration.dtResidualCalibration_cfg' if hasattr(self.config,'runOnCosmics') and self.config.runOnCosmics: self.pset_template = 'CalibMuon.DTCalibration.dtResidualCalibration_cosmics_cfg' self.process = None self.crab_cfg = None self.initProcess() self.initCrab() self.task = CrabTask(self.dir,self.crab_cfg)
def __init__(self, run, dir, config): self.pset_name = 'dtNoiseCalibration_cfg.py' self.outputROOT = 'dtNoiseCalib.root' self.outputDB = 'noise.db' self.config = config self.dir = dir self.pset_template = 'CalibMuon.DTCalibration.dtNoiseCalibration_cfg' #if hasattr(self.config,'runOnCosmics') and self.config.runOnCosmics: # self.pset_template = 'CalibMuon.DTCalibration.dtNoiseCalibration_cosmics_cfg' self.process = None self.crab_cfg = None self.initProcess() self.initCrab() self.task = CrabTask(self.dir,self.crab_cfg)
def __init__(self, run, dir, config): self.pset_name = 'DTTTrigCalibration_cfg.py' self.outputfile = 'DTTimeBoxes.root' self.config = config self.dir = dir #self.crab_template = os.environ['CMSSW_BASE'] + '/src/Workflow/' + 'templates/crab/crab_ttrig_prod_TEMPL.cfg' #self.pset_template = os.environ['CMSSW_BASE'] + '/src/Workflow/' + 'templates/config/DTTTrigCalibration_TEMPL_cfg.py' self.crab_template = config.templatepath + '/crab/crab_ttrig_prod.cfg' self.pset_template = config.templatepath + '/config/DTTTrigCalibration_cfg.py' #self.crab_opts = crab_opts #self.crab_opts['PSET'] = pset_name #self.pset_opts = pset_opts #self.crab_cfg = replaceTemplate(self.crab_template,**self.crab_opts) #self.pset = replaceTemplate(self.pset_template,**self.pset_opts) #desc = 'Run%s'%run #desc += '/Ttrig/Production' #self.desc = desc self.initProcess() self.initCrab() #self.task = CrabTask(self.dir,self.crab_cfg,self.pset,self.pset_name) self.task = CrabTask(self.dir,self.crab_cfg)
class DTNoiseCalibration: def __init__(self, run, dir, config): self.pset_name = 'dtNoiseCalibration_cfg.py' self.outputROOT = 'dtNoiseCalib.root' self.outputDB = 'noise.db' self.config = config self.dir = dir self.pset_template = 'CalibMuon.DTCalibration.dtNoiseCalibration_cfg' #if hasattr(self.config,'runOnCosmics') and self.config.runOnCosmics: # self.pset_template = 'CalibMuon.DTCalibration.dtNoiseCalibration_cosmics_cfg' self.process = None self.crab_cfg = None self.initProcess() self.initCrab() self.task = CrabTask(self.dir,self.crab_cfg) def initProcess(self): self.process = loadCmsProcess(self.pset_template) self.process.GlobalTag.globaltag = self.config.globaltag self.process.dtNoiseCalibration.rootFileName = self.outputROOT if hasattr(self.config,'inputDBTag') and self.config.inputDBTag: tag = self.config.inputDBTag record = self.config.inputDBRcd connect = self.config.connectStrDBTag moduleName = 'customDB%s' % record addPoolDBESSource(process = self.process, moduleName = moduleName,record = record,tag = tag, connect = connect) if hasattr(self.config,'runOnRAW') and self.config.runOnRAW: if hasattr(self.config,'runOnMC') and self.config.runOnMC: getattr(self.process,self.config.digilabel).inputLabel = 'rawDataCollector' prependPaths(self.process,self.config.digilabel) if hasattr(self.config,'preselection') and self.config.preselection: pathsequence = self.config.preselection.split(':')[0] seqname = self.config.preselection.split(':')[1] self.process.load(pathsequence) prependPaths(self.process,seqname) def initCrab(self): crab_cfg_parser = loadCrabCfg() loadCrabDefault(crab_cfg_parser,self.config) crab_cfg_parser.set('CMSSW','pset',self.pset_name) crab_cfg_parser.set('CMSSW','output_file','%s,%s' % (self.outputDB,self.outputROOT)) crab_cfg_parser.remove_option('USER','additional_input_files') self.crab_cfg = crab_cfg_parser def writeCfg(self): writeCfg(self.process,self.dir,self.pset_name) #writeCfgPkl(self.process,self.dir,self.pset_name) def run(self): self.project = self.task.run() return self.project
class DTTTrigProd: #def __init__(self, run, crab_opts, pset_opts, template_path): def __init__(self, run, dir, config): self.pset_name = 'DTTTrigCalibration_cfg.py' self.outputfile = 'DTTimeBoxes.root' self.config = config self.dir = dir #self.crab_template = os.environ['CMSSW_BASE'] + '/src/Workflow/' + 'templates/crab/crab_ttrig_prod_TEMPL.cfg' #self.pset_template = os.environ['CMSSW_BASE'] + '/src/Workflow/' + 'templates/config/DTTTrigCalibration_TEMPL_cfg.py' self.crab_template = config.templatepath + '/crab/crab_ttrig_prod.cfg' self.pset_template = config.templatepath + '/config/DTTTrigCalibration_cfg.py' #self.crab_opts = crab_opts #self.crab_opts['PSET'] = pset_name #self.pset_opts = pset_opts #self.crab_cfg = replaceTemplate(self.crab_template,**self.crab_opts) #self.pset = replaceTemplate(self.pset_template,**self.pset_opts) #desc = 'Run%s'%run #desc += '/Ttrig/Production' #self.desc = desc self.initProcess() self.initCrab() #self.task = CrabTask(self.dir,self.crab_cfg,self.pset,self.pset_name) self.task = CrabTask(self.dir,self.crab_cfg) def initProcess(self): self.process = loadCmsProcess(self.pset_template) self.process.GlobalTag.globaltag = self.config.globaltag self.process.ttrigcalib.digiLabel = self.config.digilabel if hasattr(self.config,'preselection') and self.config.preselection: pathsequence = self.config.preselection.split(':')[0] seqname = self.config.preselection.split(':')[1] self.process.load(pathsequence) prependPaths(self.process,seqname) #writeCfg(self.process,self.dir,self.pset_name) #self.pset = self.process.dumpPython() def initCrab(self): crab_cfg_parser = loadCrabCfg(self.crab_template) loadCrabDefault(crab_cfg_parser,self.config) crab_cfg_parser.set('CMSSW','pset',self.pset_name) crab_cfg_parser.set('CMSSW','output_file',self.outputfile) self.crab_cfg = crab_cfg_parser def writeCfg(self): writeCfg(self.process,self.dir,self.pset_name) def run(self): self.project = self.task.run() return self.project
class DTTTrigProd: #def __init__(self, run, crab_opts, pset_opts, template_path): def __init__(self, run, dir, config): self.pset_name = 'DTTTrigCalibration_cfg.py' self.outputfile = 'DTTimeBoxes.root' self.config = config self.dir = dir #self.crab_template = os.environ['CMSSW_BASE'] + '/src/Workflow/' + 'templates/crab/crab_ttrig_prod_TEMPL.cfg' #self.pset_template = os.environ['CMSSW_BASE'] + '/src/Workflow/' + 'templates/config/DTTTrigCalibration_TEMPL_cfg.py' self.crab_template = config.templatepath + '/crab/crab_ttrig_prod.cfg' self.pset_template = config.templatepath + '/config/DTTTrigCalibration_cfg.py' #self.crab_opts = crab_opts #self.crab_opts['PSET'] = pset_name #self.pset_opts = pset_opts #self.crab_cfg = replaceTemplate(self.crab_template,**self.crab_opts) #self.pset = replaceTemplate(self.pset_template,**self.pset_opts) #desc = 'Run%s'%run #desc += '/Ttrig/Production' #self.desc = desc self.initProcess() self.initCrab() #self.task = CrabTask(self.dir,self.crab_cfg,self.pset,self.pset_name) self.task = CrabTask(self.dir, self.crab_cfg) def initProcess(self): self.process = loadCmsProcess(self.pset_template) self.process.GlobalTag.globaltag = self.config.globaltag self.process.ttrigcalib.digiLabel = self.config.digilabel if hasattr(self.config, 'preselection') and self.config.preselection: pathsequence = self.config.preselection.split(':')[0] seqname = self.config.preselection.split(':')[1] self.process.load(pathsequence) prependPaths(self.process, seqname) #writeCfg(self.process,self.dir,self.pset_name) #self.pset = self.process.dumpPython() def initCrab(self): crab_cfg_parser = loadCrabCfg(self.crab_template) loadCrabDefault(crab_cfg_parser, self.config) crab_cfg_parser.set('CMSSW', 'pset', self.pset_name) crab_cfg_parser.set('CMSSW', 'output_file', self.outputfile) self.crab_cfg = crab_cfg_parser def writeCfg(self): writeCfg(self.process, self.dir, self.pset_name) def run(self): self.project = self.task.run() return self.project
def __init__(self, run, dir, config): self.pset_name = 'dtAnalysisResiduals_cfg.py' self.outputfile = 'residuals.root' self.config = config self.dir = dir self.pset_template = 'CalibMuon.DTCalibration.dtResidualCalibration_cfg' if hasattr(self.config,'runOnCosmics') and self.config.runOnCosmics: self.pset_template = 'CalibMuon.DTCalibration.dtResidualCalibration_cosmics_cfg' self.process = None self.crab_cfg = None self.initProcess() self.initCrab() self.task = CrabTask(self.dir,self.crab_cfg)
def __init__(self, run, dir, config): self.pset_name = 'dtVDriftMeanTimerCalibration_cfg.py' self.outputfile = 'DTTMaxHistos.root' self.config = config self.dir = dir self.pset_template = 'CalibMuon.DTCalibration.dtVDriftMeanTimerCalibration_cfg' if hasattr(self.config,'runOnCosmics') and self.config.runOnCosmics: self.pset_template = 'CalibMuon.DTCalibration.dtVDriftMeanTimerCalibration_cosmics_cfg' self.process = None self.crab_cfg = None self.initProcess() self.initCrab() self.task = CrabTask(self.dir,self.crab_cfg)
def __init__(self, run, dir, config): self.outputfile = 'DQM.root' self.config = config self.dir = dir #self.inputdb = input_db self.pset_name = 'dtDQM_cfg.py' self.pset_template = 'CalibMuon.DTCalibration.dtDQMAlca_cfg' if hasattr(self.config,'runOnCosmics') and self.config.runOnCosmics: self.pset_template = 'CalibMuon.DTCalibration.dtDQMAlca_cosmics_cfg' self.process = None self.crab_cfg = None self.initProcess() self.initCrab() self.task = CrabTask(self.dir,self.crab_cfg)
class DTAnalysisResiduals: def __init__(self, run, dir, config): self.pset_name = 'dtAnalysisResiduals_cfg.py' self.outputfile = 'residuals.root' self.config = config self.dir = dir self.pset_template = 'CalibMuon.DTCalibration.dtResidualCalibration_cfg' if hasattr(self.config,'runOnCosmics') and self.config.runOnCosmics: self.pset_template = 'CalibMuon.DTCalibration.dtResidualCalibration_cosmics_cfg' self.process = None self.crab_cfg = None self.initProcess() self.initCrab() self.task = CrabTask(self.dir,self.crab_cfg) def initProcess(self): self.process = loadCmsProcess(self.pset_template) self.process.GlobalTag.globaltag = self.config.globaltag self.process.dtResidualCalibration.rootFileName = self.outputfile self.process.dtResidualCalibration.detailedAnalysis = True # Update Event Setup if hasattr(self.config,'inputDBTag') and self.config.inputDBTag: tag = self.config.inputDBTag record = self.config.inputDBRcd connect = self.config.connectStrDBTag moduleName = 'customDB%s' % record addPoolDBESSource(process = self.process, moduleName = moduleName,record = record,tag = tag, connect = connect) if hasattr(self.config,'inputTTrigDB') and self.config.inputTTrigDB: label = '' if hasattr(self.config,'runOnCosmics') and self.config.runOnCosmics: label = 'cosmics' addPoolDBESSource(process = self.process, moduleName = 'tTrigDB',record = 'DTTtrigRcd',tag = 'ttrig',label = label, connect = 'sqlite_file:%s' % os.path.basename(self.config.inputTTrigDB)) if hasattr(self.config,'inputVDriftDB') and self.config.inputVDriftDB: addPoolDBESSource(process = self.process, moduleName = 'vDriftDB',record = 'DTMtimeRcd',tag = 'vDrift', connect = 'sqlite_file:%s' % os.path.basename(self.config.inputVDriftDB)) if hasattr(self.config,'inputT0DB') and self.config.inputT0DB: addPoolDBESSource(process = self.process, moduleName = 't0DB',record = 'DTT0Rcd',tag = 't0', connect = 'sqlite_file:%s' % os.path.basename(self.config.inputT0DB)) # Update sequences if hasattr(self.config,'runOnRAW') and self.config.runOnRAW: if hasattr(self.config,'runOnMC') and self.config.runOnMC: getattr(self.process,self.config.digilabel).inputLabel = 'rawDataCollector' prependPaths(self.process,self.config.digilabel) if hasattr(self.config,'preselection') and self.config.preselection: pathsequence = self.config.preselection.split(':')[0] seqname = self.config.preselection.split(':')[1] self.process.load(pathsequence) prependPaths(self.process,seqname) def initCrab(self): crab_cfg_parser = loadCrabCfg() loadCrabDefault(crab_cfg_parser,self.config) crab_cfg_parser.set('CMSSW','pset',self.pset_name) crab_cfg_parser.set('CMSSW','output_file',self.outputfile) crab_cfg_parser.remove_option('USER','additional_input_files') if hasattr(self.config,'inputTTrigDB') and self.config.inputTTrigDB: addCrabInputFile(crab_cfg_parser,self.config.inputTTrigDB) if hasattr(self.config,'inputVDriftDB') and self.config.inputVDriftDB: addCrabInputFile(crab_cfg_parser,self.config.inputVDriftDB) if hasattr(self.config,'inputT0DB') and self.config.inputT0DB: addCrabInputFile(crab_cfg_parser,self.config.inputT0DB) self.crab_cfg = crab_cfg_parser def writeCfg(self): writeCfg(self.process,self.dir,self.pset_name) #writeCfgPkl(self.process,self.dir,self.pset_name) def run(self): self.project = self.task.run() return self.project
class DTVDriftSegmentCalibration: def __init__(self, run, dir, config): self.pset_name = 'dtVDriftSegmentCalibration_cfg.py' self.outputfile = 'DTVDriftHistos.root' self.config = config self.dir = dir self.pset_template = 'CalibMuon.DTCalibration.dtVDriftSegmentCalibration_cfg' if hasattr(self.config, 'runOnCosmics') and self.config.runOnCosmics: self.pset_template = 'CalibMuon.DTCalibration.dtVDriftSegmentCalibration_cosmics_cfg' self.process = None self.crab_cfg = None self.initProcess() self.initCrab() self.task = CrabTask(self.dir, self.crab_cfg) def initProcess(self): self.process = loadCmsProcess(self.pset_template) self.process.GlobalTag.globaltag = self.config.globaltag self.process.dtVDriftSegmentCalibration.rootFileName = self.outputfile # Add tTrig and vDrift DB's, if requested if hasattr(self.config, 'inputTTrigDB') and self.config.inputTTrigDB: label = '' if hasattr(self.config, 'runOnCosmics') and self.config.runOnCosmics: label = 'cosmics' addPoolDBESSource(process=self.process, moduleName='tTrigDB', record='DTTtrigRcd', tag='ttrig', label=label, connect='sqlite_file:%s' % os.path.basename(self.config.inputTTrigDB)) if hasattr(self.config, 'inputVDriftDB') and self.config.inputVDriftDB: addPoolDBESSource(process=self.process, moduleName='vDriftDB', record='DTMtimeRcd', tag='vDrift', connect='sqlite_file:%s' % os.path.basename(self.config.inputVDriftDB)) if hasattr(self.config, 'inputDBTag') and self.config.inputDBTag: tag = self.config.inputDBTag record = self.config.inputDBRcd connect = self.config.connectStrDBTag moduleName = 'customDB%s' % record addPoolDBESSource(process=self.process, moduleName=moduleName, record=record, tag=tag, connect=connect) # Prepend paths with unpacker if running on RAW if hasattr(self.config, 'runOnRAW') and self.config.runOnRAW: if hasattr(self.config, 'runOnMC') and self.config.runOnMC: getattr(self.process, self.config.digilabel).inputLabel = 'rawDataCollector' prependPaths(self.process, self.config.digilabel) # Prepend paths with custom selection sequence if hasattr(self.config, 'preselection') and self.config.preselection: pathsequence = self.config.preselection.split(':')[0] seqname = self.config.preselection.split(':')[1] self.process.load(pathsequence) prependPaths(self.process, seqname) def initCrab(self): crab_cfg_parser = loadCrabCfg() loadCrabDefault(crab_cfg_parser, self.config) crab_cfg_parser.set('CMSSW', 'pset', self.pset_name) crab_cfg_parser.set('CMSSW', 'output_file', self.outputfile) crab_cfg_parser.remove_option('USER', 'additional_input_files') if hasattr(self.config, 'inputTTrigDB') and self.config.inputTTrigDB: addCrabInputFile(crab_cfg_parser, self.config.inputTTrigDB) if hasattr(self.config, 'inputVDriftDB') and self.config.inputVDriftDB: addCrabInputFile(crab_cfg_parser, self.config.inputVDriftDB) self.crab_cfg = crab_cfg_parser def writeCfg(self): writeCfg(self.process, self.dir, self.pset_name) #writeCfgPkl(self.process,self.dir,self.pset_name) def run(self): self.project = self.task.run() return self.project
class DTTTrigValid: def __init__(self, run, dir, input_db, config): self.pset_name = 'DTkFactValidation_1_cfg.py' self.outputfile = 'residuals.root,DQM.root' self.config = config self.dir = dir self.inputdb = input_db #self.crab_template = os.environ['CMSSW_BASE'] + '/src/Workflow/' + 'templates/crab/crab_Valid_TEMPL.cfg' #self.pset_template = os.environ['CMSSW_BASE'] + '/src/Workflow/' + 'templates/config/DTkFactValidation_1_TEMPL_cfg.py' self.crab_template = config.templatepath + '/crab/crab_ttrig_valid.cfg' self.pset_template = config.templatepath + '/config/DTkFactValidation_1_cfg.py' #self.crab_opts = crab_opts #self.crab_opts['PSET'] = pset_name #self.pset_opts = pset_opts #self.crab_cfg = replaceTemplate(self.crab_template,**self.crab_opts) #self.pset = replaceTemplate(self.pset_template,**self.pset_opts) #desc = 'Run%s'%run #desc += '/Ttrig/Validation' #self.desc = desc self.initProcess() self.initCrab() #self.task = CrabTask(self.desc,self.crab_cfg,self.pset,pset_name) self.task = CrabTask(self.dir, self.crab_cfg) def initProcess(self): import FWCore.ParameterSet.Config as cms self.process = loadCmsProcess(self.pset_template) self.process.GlobalTag.globaltag = self.config.globaltag if (self.inputdb): self.process.calibDB = cms.ESSource( "PoolDBESSource", self.process.CondDBSetup, timetype=cms.string('runnumber'), toGet=cms.VPSet( cms.PSet(record=cms.string('DTTtrigRcd'), tag=cms.string('ttrig'))), connect=cms.string('sqlite_file:'), authenticationMethod=cms.untracked.uint32(0)) self.process.calibDB.connect = 'sqlite_file:%s' % os.path.basename( self.inputdb) self.process.es_prefer_calibDB = cms.ESPrefer( 'PoolDBESSource', 'calibDB') if hasattr(self.config, 'preselection') and self.config.preselection: pathsequence = self.config.preselection.split(':')[0] seqname = self.config.preselection.split(':')[1] self.process.load(pathsequence) prependPaths(self.process, seqname) def initCrab(self): crab_cfg_parser = loadCrabCfg(self.crab_template) loadCrabDefault(crab_cfg_parser, self.config) crab_cfg_parser.set('CMSSW', 'pset', self.pset_name) crab_cfg_parser.set('CMSSW', 'output_file', self.outputfile) if self.inputdb: crab_cfg_parser.set('USER', 'additional_input_files', self.inputdb) else: crab_cfg_parser.remove_option('USER', 'additional_input_files') self.crab_cfg = crab_cfg_parser def writeCfg(self): writeCfg(self.process, self.dir, self.pset_name) def run(self): self.project = self.task.run() return self.project