Beispiel #1
0
    def expressProcessing(self, globalTag, writeTiers=[], **args):
        """
        _expressProcessing_

        Cosmic data taking express processing

        """

        skims = ['SiStripCalZeroBias', 'MuAlCalIsolatedMu']
        step = stepALCAPRODUCER(skims)
        options = Options()
        options.__dict__.update(defaultOptions.__dict__)
        options.scenario = "cosmics"
        options.step = 'RAW2DIGI,L1Reco,RECO' + step + ',L1HwVal,DQM,ENDJOB'
        options.isMC = False
        options.isData = True
        options.beamspot = None
        options.eventcontent = ','.join(writeTiers)
        options.datatier = ','.join(writeTiers)
        options.magField = 'AutoFromDBCurrent'
        options.conditions = "FrontierConditions_GlobalTag,%s" % globalTag
        options.relval = False

        process = cms.Process('RECO')
        cb = ConfigBuilder(options, process=process, with_output=True)

        # Input source
        process.source = cms.Source("NewEventStreamFileReader",
                                    fileNames=cms.untracked.vstring())
        cb.prepare()

        customiseCosmicData(process)
        return process
Beispiel #2
0
    def promptReco(self, globalTag, writeTiers=['RECO'], **args):
        """
        _promptReco_

        Heavy-ion collision data taking prompt reco

        """

        skims = ['SiStripCalZeroBias', 'SiStripCalMinBias', 'TkAlMinBiasHI']
        step = stepALCAPRODUCER(skims)
        options = Options()
        options.__dict__.update(defaultOptions.__dict__)
        options.scenario = "HeavyIons"
        options.step = 'RAW2DIGI,L1Reco,RECO' + step + ',L1HwVal,DQM,ENDJOB'
        options.isMC = False
        options.isData = True
        options.beamspot = None
        options.eventcontent = ','.join(writeTiers)
        options.datatier = ','.join(writeTiers)
        options.magField = 'AutoFromDBCurrent'
        options.conditions = "FrontierConditions_GlobalTag,%s" % globalTag
        options.relval = False

        process = cms.Process('RECO')
        cb = ConfigBuilder(options, process=process, with_output=True)

        # Input source
        process.source = cms.Source("PoolSource",
                                    fileNames=cms.untracked.vstring())
        cb.prepare()

        #add the former top level patches here
        customisePromptHI(process)

        return process
Beispiel #3
0
    def promptReco(self, globalTag, writeTiers = ['RECO'], **args):
        """
        _promptReco_

        Prompt reco for RelVal MC production

        """
        
        options = Options()
        options.__dict__.update(defaultOptions.__dict__)
        options.scenario = "pp"
        options.step = 'RAW2DIGI,L1Reco,RECO,VALIDATION,DQM,ENDJOB'
        options.isMC = True
        options.isData = False
        options.beamspot = None
        options.eventcontent = ','.join(writeTiers)
        options.datatier = ','.join(writeTiers)
        options.magField = 'AutoFromDBCurrent'
        options.conditions = "FrontierConditions_GlobalTag,%s" % globalTag

        process = cms.Process('RECO')
        cb = ConfigBuilder(options, process = process, with_output = True)

        # Input source
        process.source = cms.Source("PoolSource",
            fileNames = cms.untracked.vstring()
        )
        cb.prepare()

        return process
Beispiel #4
0
    def expressProcessing(self, globalTag, writeTiers=[], **args):
        """
        _expressProcessing_

        Proton collision data taking express processing

        """

        skims = ['EcalCalPi0Calib', 'EcalCalEtaCalib']
        step = stepALCAPRODUCER(skims)
        options = Options()
        options.__dict__.update(defaultOptions.__dict__)
        options.scenario = "pp"
        options.step = step
        options.isMC = False
        options.isData = True
        options.beamspot = None
        options.eventcontent = ','.join(writeTiers)
        options.datatier = ','.join(writeTiers)
        options.magField = 'AutoFromDBCurrent'
        options.conditions = "FrontierConditions_GlobalTag,%s" % globalTag
        options.relval = False

        process = cms.Process('RECO')
        cb = ConfigBuilder(options, process=process, with_output=True)

        # Input source
        process.source = cms.Source("PoolSource",
                                    fileNames=cms.untracked.vstring())
        cb.prepare()

        #add the former top level patches here
        customisePrompt(process)

        return process
Beispiel #5
0
    def expressProcessing(self, globalTag, writeTiers = [], **args):
        """
        _expressProcessing_

        Cosmic data taking express processing

        """

        skims = ['SiStripCalZeroBias',
                 'MuAlCalIsolatedMu']
        step = stepALCAPRODUCER(skims)
        options = Options()
        options.__dict__.update(defaultOptions.__dict__)
        options.scenario = "cosmics"
        options.step = 'RAW2DIGI,L1Reco,RECO'+step+',L1HwVal,DQM,ENDJOB'
        options.isMC = False
        options.isData = True
        options.beamspot = None
        options.eventcontent = ','.join(writeTiers)
        options.datatier = ','.join(writeTiers)
        options.magField = 'AutoFromDBCurrent'
        options.conditions = "FrontierConditions_GlobalTag,%s" % globalTag
        options.relval = False
        
        process = cms.Process('RECO')
        cb = ConfigBuilder(options, process = process, with_output = True)

        # Input source
        process.source = cms.Source("NewEventStreamFileReader",
            fileNames = cms.untracked.vstring()
        )
        cb.prepare()

        customiseCosmicData(process)  
        return process
Beispiel #6
0
    def promptReco(self, globalTag, writeTiers=['RECO'], **args):
        """
        _promptReco_

        Prompt reco for RelVal MC FastSim production

        """

        options = Options()
        options.__dict__.update(defaultOptions.__dict__)
        options.scenario = "pp"
        options.step = 'RAW2DIGI,L1Reco,RECO,VALIDATION,ENDJOB'
        options.isMC = True
        options.isData = False
        options.beamspot = None
        options.eventcontent = ','.join(writeTiers)
        options.datatier = ','.join(writeTiers)
        options.magField = 'AutoFromDBCurrent'
        options.conditions = "FrontierConditions_GlobalTag,%s" % globalTag

        process = cms.Process('RECO')
        cb = ConfigBuilder(options, process=process, with_output=True)

        # Input source
        process.source = cms.Source("PoolSource",
                                    fileNames=cms.untracked.vstring())
        cb.prepare()

        return process
Beispiel #7
0
    def alcaSkim(self, skims, **args):
        """
        _alcaSkim_

        AlcaReco processing & skims for heavy-ion collisions

        """

        globalTag = None
        if 'globaltag' in args:
            globalTag = args['globaltag']

        step = ""
        if 'PromptCalibProd' in skims:
            step = "ALCA:PromptCalibProd" 
            skims.remove('PromptCalibProd')
        
        if len( skims ) > 0:
            if step != "":
                step += ","
            step += "ALCAOUTPUT:"
                
        for skim in skims:
          step += (skim+"+")
        options = Options()
        options.__dict__.update(defaultOptions.__dict__)
        options.scenario = "HeavyIons"
        options.step = step.rstrip('+')
        options.isMC = False
        options.isData = True
        options.beamspot = None
        options.eventcontent = None
        options.relval = None
        if globalTag != None :
            options.conditions = "FrontierConditions_GlobalTag,%s" % globalTag
        options.triggerResultsProcess = 'RECO'
        
        process = cms.Process('ALCA')
        cb = ConfigBuilder(options, process = process)

        # Input source
        process.source = cms.Source(
           "PoolSource",
           fileNames = cms.untracked.vstring()
        )

        cb.prepare() 

        # FIXME: dirty hack..any way around this?
        # Tier0 needs the dataset used for ALCAHARVEST step to be a different data-tier
        if 'PromptCalibProd' in step:
            process.ALCARECOStreamPromptCalibProd.dataset.dataTier = cms.untracked.string('ALCAPROMPT')

        return process
Beispiel #8
0
    def alcaSkim(self, skims, **args):
        """
        _alcaSkim_

        AlcaReco processing & skims for heavy-ion collisions

        """

        globalTag = None
        if 'globaltag' in args:
            globalTag = args['globaltag']

        step = ""
        if 'PromptCalibProd' in skims:
            step = "ALCA:PromptCalibProd" 
            skims.remove('PromptCalibProd')
        
        if len( skims ) > 0:
            if step != "":
                step += ","
            step += "ALCAOUTPUT:"
                
        for skim in skims:
          step += (skim+"+")
        options = Options()
        options.__dict__.update(defaultOptions.__dict__)
        options.scenario = "HeavyIons"
        options.step = step.rstrip('+')
        options.isMC = False
        options.isData = True
        options.beamspot = None
        options.eventcontent = None
        options.relval = None
        if globalTag != None :
            options.conditions = "FrontierConditions_GlobalTag,%s" % globalTag
        options.triggerResultsProcess = 'RECO'
        
        process = cms.Process('ALCA')
        cb = ConfigBuilder(options, process = process)

        # Input source
        process.source = cms.Source(
           "PoolSource",
           fileNames = cms.untracked.vstring()
        )

        cb.prepare() 

        # FIXME: dirty hack..any way around this?
        # Tier0 needs the dataset used for ALCAHARVEST step to be a different data-tier
        if 'PromptCalibProd' in step:
            process.ALCARECOStreamPromptCalibProd.dataset.dataTier = cms.untracked.string('ALCAPROMPT')

        return process
Beispiel #9
0
    def alcaReco(self, skims, **args):
        """
        _alcaReco_

        AlcaReco processing & skims for RelVal MC production

        """
        options = Options()
        options.__dict__.update(defaultOptions.__dict__)
        options.scenario = "pp"
        options.step = 'ALCA:MuAlStandAloneCosmics+DQM,ENDJOB'
        options.isMC = True
        options.isData = False
        options.conditions = "FrontierConditions_GlobalTag,%s" % globalTag
        options.beamspot = None
        options.eventcontent = None
        options.relval = None
        
        process = cms.Process('ALCA')
        cb = ConfigBuilder(options, process = process)

        # Input source
        process.source = cms.Source(
           "PoolSource",
           fileNames = cms.untracked.vstring()
        )

        cb.prepare() 

        #  //
        # // Verify and Edit the list of skims to be written out
        #//  by this job
        availableStreams = process.outputModules_().keys()

        #  //
        # // First up: Verify skims are available by output module name
        #//
        for skim in skims:
            if skim not in availableStreams:
                msg = "Skim named: %s not available " % skim
                msg += "in Alca Reco Config:\n"
                msg += "Known Skims: %s\n" % availableStreams
                raise RuntimeError, msg

        #  //
        # // Prune any undesired skims
        #//
        for availSkim in availableStreams:
            if availSkim not in skims:
                self.dropOutputModule(process, availSkim)

        return process
Beispiel #10
0
    def alcaReco(self, skims, **args):
        """
        _alcaReco_

        AlcaReco processing & skims for RelVal MC production

        """
        options = Options()
        options.__dict__.update(defaultOptions.__dict__)
        options.scenario = "pp"
        options.step = 'ALCA:MuAlStandAloneCosmics,ENDJOB'
        options.isMC = True
        options.isData = False
        options.conditions = "FrontierConditions_GlobalTag,%s" % globalTag
        options.beamspot = None
        options.eventcontent = None
        options.relval = None

        process = cms.Process('ALCA')
        cb = ConfigBuilder(options, process=process)

        # Input source
        process.source = cms.Source("PoolSource",
                                    fileNames=cms.untracked.vstring())

        cb.prepare()

        #  //
        # // Verify and Edit the list of skims to be written out
        #//  by this job
        availableStreams = process.outputModules_().keys()

        #  //
        # // First up: Verify skims are available by output module name
        #//
        for skim in skims:
            if skim not in availableStreams:
                msg = "Skim named: %s not available " % skim
                msg += "in Alca Reco Config:\n"
                msg += "Known Skims: %s\n" % availableStreams
                raise RuntimeError, msg

        #  //
        # // Prune any undesired skims
        #//
        for availSkim in availableStreams:
            if availSkim not in skims:
                self.dropOutputModule(process, availSkim)

        return process
Beispiel #11
0
Datei: pp.py Projekt: tuos/cmssw
    def promptReco(self, globalTag, writeTiers = ['RECO'], **args):
        """
        _promptReco_

        Proton collision data taking prompt reco

        """

        skims = ['SiStripCalZeroBias',
                 'TkAlMinBias',
                 'TkAlMuonIsolated',
                 'MuAlCalIsolatedMu',
                 'MuAlOverlaps',
                 'HcalCalIsoTrk',
                 'HcalCalDijets',
                 'SiStripCalMinBias',
                 'EcalCalElectron',
                 'DtCalib',
                 'TkAlJpsiMuMu',
                 'TkAlUpsilonMuMu',
                 'TkAlZMuMu']
        step = stepALCAPRODUCER(skims)
        options = Options()
        options.__dict__.update(defaultOptions.__dict__)
        options.scenario = "pp"
        options.step = 'RAW2DIGI,L1Reco,RECO'+step+',L1HwVal,DQM,ENDJOB'
        options.isMC = False
        options.isData = True
        options.beamspot = None
        options.eventcontent = ','.join(writeTiers)
        options.datatier = ','.join(writeTiers)
        options.magField = 'AutoFromDBCurrent'
        options.conditions = "FrontierConditions_GlobalTag,%s" % globalTag
        options.relval = False
        
        process = cms.Process('RECO')
        cb = ConfigBuilder(options, process = process, with_output = True)

        # Input source
        process.source = cms.Source("PoolSource",
            fileNames = cms.untracked.vstring()
        )
        cb.prepare()

        #add the former top level patches here
        customisePrompt(process)
        
        return process
Beispiel #12
0
    def promptReco(self, globalTag, writeTiers = ['RECO'], **args):
        """
        _promptReco_

        Cosmic data taking prompt reco

        """

        skims = ['TkAlBeamHalo',
                 'MuAlBeamHaloOverlaps',
                 'MuAlBeamHalo',
                 'TkAlCosmics0T',
                 'MuAlGlobalCosmics',
                 'MuAlCalIsolatedMu',
                 'HcalCalHOCosmics',
                 'DtCalib']
        step = stepALCAPRODUCER(skims)
        options = Options()
        options.__dict__.update(defaultOptions.__dict__)
        options.scenario = "cosmics"
        options.step = 'RAW2DIGI,L1Reco,RECO'+step+',L1HwVal,DQM,ENDJOB'
        options.isMC = False
        options.isData = True
        options.beamspot = None
        options.eventcontent = ','.join(writeTiers)
        options.datatier = ','.join(writeTiers)
        options.magField = 'AutoFromDBCurrent'
        options.conditions = "FrontierConditions_GlobalTag,%s" % globalTag
        options.relval = False
        
        process = cms.Process('RECO')
        cb = ConfigBuilder(options, process = process, with_output = True)

        # Input source
        process.source = cms.Source("PoolSource",
            fileNames = cms.untracked.vstring()
        )
        cb.prepare()

        customiseCosmicData(process)  
        return process
Beispiel #13
0
    def promptReco(self, globalTag, writeTiers = ['RECO'], **args):
        """
        _promptReco_

        Heavy-ion collision data taking prompt reco

        """

        skims = ['SiStripCalZeroBias',
                 'SiStripCalMinBias',
                 'TkAlMinBiasHI']
        step = stepALCAPRODUCER(skims)
        options = Options()
        options.__dict__.update(defaultOptions.__dict__)
        options.scenario = "HeavyIons"
        options.step = 'RAW2DIGI,L1Reco,RECO'+step+',L1HwVal,DQM,ENDJOB'
        options.isMC = False
        options.isData = True
        options.beamspot = None
        options.eventcontent = None
        options.magField = 'AutoFromDBCurrent'
        options.conditions = "FrontierConditions_GlobalTag,%s" % globalTag
        options.relval = False
        
        process = cms.Process('RECO')
        cb = ConfigBuilder(options, process = process)

        # Input source
        process.source = cms.Source("PoolSource",
            fileNames = cms.untracked.vstring()
        )
        cb.prepare()

        for tier in writeTiers: 
          addOutputModule(process, tier, tier)
          
        #add the former top level patches here
        customiseAlcaOnlyPromptHI(process)
        
        return process
Beispiel #14
0
    def alcaSkim(self, skims, **args):
        """
        _alcaSkim_

        AlcaReco processing & skims for proton collisions

        """

        globalTag = None
        if 'globaltag' in args:
            globalTag = args['globaltag']
        
        step = "ALCAOUTPUT:"
        for skim in skims:
          step += (skim+"+")
        options = Options()
        options.__dict__.update(defaultOptions.__dict__)
        options.scenario = "pp"
        options.step = step.rstrip('+')
        options.isMC = False
        options.isData = True
        options.beamspot = None
        options.eventcontent = None
        options.relval = None
        if globalTag != None :
            options.conditions = "FrontierConditions_GlobalTag,%s" % globalTag
        options.triggerResultsProcess = 'RECO'
        
        process = cms.Process('ALCA')
        cb = ConfigBuilder(options, process = process)

        # Input source
        process.source = cms.Source(
           "PoolSource",
           fileNames = cms.untracked.vstring()
        )

        cb.prepare() 

        return process
Beispiel #15
0
    def alcaSkim(self, skims, **args):
        """
        _alcaSkim_

        AlcaReco processing & skims for proton collisions

        """

        globalTag = None
        if 'globaltag' in args:
            globalTag = args['globaltag']
        
        step = "ALCAOUTPUT:"
        for skim in skims:
          step += (skim+"+")
        options = Options()
        options.__dict__.update(defaultOptions.__dict__)
        options.scenario = "pp"
        options.step = step.rstrip('+')
        options.isMC = False
        options.isData = True
        options.beamspot = None
        options.eventcontent = None
        options.relval = None
        if globalTag != None :
            options.conditions = "FrontierConditions_GlobalTag,%s" % globalTag
        options.triggerResultsProcess = 'RECO'
        
        process = cms.Process('ALCA')
        cb = ConfigBuilder(options, process = process)

        # Input source
        process.source = cms.Source(
           "PoolSource",
           fileNames = cms.untracked.vstring()
        )

        cb.prepare() 

        return process
Beispiel #16
0
    def expressProcessing(self, globalTag, writeTiers = [], **args):
        """
        _expressProcessing_

        Heavy-ion collision data taking express processing

        """

        skims = ['SiStripCalZeroBias',
                 'TkAlMinBiasHI']
        step = stepALCAPRODUCER(skims)
        options = Options()
        options.__dict__.update(defaultOptions.__dict__)
        options.scenario = "HeavyIons"
        options.step = 'RAW2DIGI,L1Reco,RECO'+step+',L1HwVal,DQM,ENDJOB'
        options.isMC = False
        options.isData = True
        options.beamspot = None
        options.eventcontent = None
        options.magField = 'AutoFromDBCurrent'
        options.conditions = "FrontierConditions_GlobalTag,%s" % globalTag
        options.relval = False
        
        process = cms.Process('RECO')
        cb = ConfigBuilder(options, process = process)

        # Input source
        process.source = cms.Source("NewEventStreamFileReader",
            fileNames = cms.untracked.vstring()
        )
        cb.prepare() 

        for tier in writeTiers: 
          addOutputModule(process, tier, tier)
          
        #add the former top level patches here
        customiseExpressHI(process)
        
        return process
Beispiel #17
0
    def expressProcessing(self, globalTag, writeTiers = [], **args):
        """
        _expressProcessing_

        Heavy-ion collision data taking express processing

        """

        skims = []
        step = stepALCAPRODUCER(skims)
        options = Options()
        options.__dict__.update(defaultOptions.__dict__)
        options.scenario = "HeavyIons"
        options.step = 'RAW2DIGI,L1Reco,RECO'+step+',L1HwVal,DQM,ENDJOB'
        options.isMC = False
        options.isData = True
        options.beamspot = None
        options.eventcontent = None
        options.magField = 'AutoFromDBCurrent'
        options.conditions = "FrontierConditions_GlobalTag,%s" % globalTag
        options.relval = False
        
        process = cms.Process('RECO')
        cb = ConfigBuilder(options, process = process)

        # Input source
        process.source = cms.Source("NewEventStreamFileReader",
            fileNames = cms.untracked.vstring()
        )
        cb.prepare()

        for tier in writeTiers: 
          addOutputModule(process, tier, tier)        

        #add the former top level patches here
        customiseExpress(process)
        
        return process
Beispiel #18
0
    def promptReco(self, globalTag, writeTiers = ['RECO'], **args):
        """
        _promptReco_

        Proton collision data taking prompt reco

        """

        skims = ['HcalCalMinBias']
        step = stepALCAPRODUCER(skims)
        options = Options()
        options.__dict__.update(defaultOptions.__dict__)
        options.scenario = "pp"
        options.step = 'RAW2DIGI,L1Reco,RECO:reconstruction_HcalNZS'+step+',DQM,ENDJOB'
        options.isMC = False
        options.isData = True
        options.beamspot = None
        options.eventcontent = ','.join(writeTiers)
        options.datatier = ','.join(writeTiers)
        options.magField = 'AutoFromDBCurrent'
        options.conditions = "FrontierConditions_GlobalTag,%s" % globalTag
        options.relval = False
        
        process = cms.Process('RECO')
        cb = ConfigBuilder(options, process = process, with_output = True)

        # Input source
        process.source = cms.Source("PoolSource",
            fileNames = cms.untracked.vstring()
        )
        cb.prepare()


        #add the former top level patches here
        customisePrompt(process)
        
        return process
Beispiel #19
0
    def promptReco(self, globalTag, writeTiers=['RECO'], **args):
        """
        _promptReco_

        Cosmic data taking prompt reco

        """

        skims = [
            'TkAlBeamHalo', 'MuAlBeamHaloOverlaps', 'MuAlBeamHalo',
            'TkAlCosmics0T', 'MuAlGlobalCosmics', 'MuAlCalIsolatedMu',
            'HcalCalHOCosmics', 'DtCalib'
        ]
        step = stepALCAPRODUCER(skims)
        options = Options()
        options.__dict__.update(defaultOptions.__dict__)
        options.scenario = "cosmics"
        options.step = 'RAW2DIGI,L1Reco,RECO' + step + ',L1HwVal,DQM,ENDJOB'
        options.isMC = False
        options.isData = True
        options.beamspot = None
        options.eventcontent = ','.join(writeTiers)
        options.datatier = ','.join(writeTiers)
        options.magField = 'AutoFromDBCurrent'
        options.conditions = "FrontierConditions_GlobalTag,%s" % globalTag
        options.relval = False

        process = cms.Process('RECO')
        cb = ConfigBuilder(options, process=process, with_output=True)

        # Input source
        process.source = cms.Source("PoolSource",
                                    fileNames=cms.untracked.vstring())
        cb.prepare()

        customiseCosmicData(process)
        return process
Beispiel #20
0
    def expressProcessing(self, globalTag, writeTiers = [], **args):
        """
        _expressProcessing_

        Proton collision data taking express processing

        """

        skims = ['EcalCalPi0Calib',
                 'EcalCalEtaCalib']
        step = stepALCAPRODUCER(skims)
        options = Options()
        options.__dict__.update(defaultOptions.__dict__)
        options.scenario = "pp"
        options.step = step
        options.isMC = False
        options.isData = True
        options.beamspot = None
        options.eventcontent = ','.join(writeTiers)
        options.datatier = ','.join(writeTiers)
        options.magField = 'AutoFromDBCurrent'
        options.conditions = "FrontierConditions_GlobalTag,%s" % globalTag
        options.relval = False
        
        process = cms.Process('RECO')
        cb = ConfigBuilder(options, process = process, with_output = True)

        # Input source
        process.source = cms.Source("PoolSource",
            fileNames = cms.untracked.vstring()
        )
        cb.prepare()

        #add the former top level patches here
        customisePrompt(process)
        
        return process