コード例 #1
0
ファイル: submitJobs.py プロジェクト: lwezenbe/TauStudy
def submitIso(sample):

    #    if sample.name == 'WZJets':
    #        for subJob in xrange(sample.splitJobs):
    #            log = "/user/lwezenbe/private/PhD/Results/TauStudy/Efficiency/log/Iso/"+sample.name+ "Eff_subjob_"+str(subJob)+".log"
    #            command = 'python /storage_mnt/storage/user/lwezenbe/private/PhD/Code/TauStudy/Efficiency/IsoEfficiency.py --sample='+sample.name+ ' --subJob='+str(subJob)+ ' --method=Bluj --inputFile=inputFilesv3'
    #            sub.launchCream02(command, log, True, "IsoEff")

    if sample.name == 'DYJetsToLL_M-50':
        for subJob in xrange(sample.splitJobs):
            log = "/user/lwezenbe/private/PhD/Results/TauStudy/Efficiency/log/Iso/" + sample.name + "FR_subjob_" + str(
                subJob) + ".log"
            command = 'python /storage_mnt/storage/user/lwezenbe/private/PhD/Code/TauStudy/Efficiency/IsoFakeRate.py --sample=' + sample.name + ' --subJob=' + str(
                subJob) + ' --method=Bluj --inputFile=inputFilesv3'
            sub.launchCream02(command, log, True, "IsoFR")
コード例 #2
0
ファイル: submitJobs.py プロジェクト: lwezenbe/TauStudy
def submitLepDiscr(sample):

    if sample.name == 'WZJets':
        for subJob in xrange(sample.splitJobs):
            log = "/user/lwezenbe/private/PhD/Results/TauStudy/Efficiency/log/lepDiscr/" + sample.name + "Eff_subjob_" + str(
                subJob) + ".log"
            command = 'python /storage_mnt/storage/user/lwezenbe/private/PhD/Code/TauStudy/Efficiency/LightLepDiscrEff.py --sample=' + sample.name + ' --subJob=' + str(
                subJob) + ' --inputFile=inputFilesv3'
            sub.launchCream02(command, log, True, "LightLepEff")

    if sample.name == 'DYJetsToLL_M-50':
        for subJob in xrange(sample.splitJobs):
            log = "/user/lwezenbe/private/PhD/Results/TauStudy/Efficiency/log/lepDiscr/" + sample.name + "FR_subjob_" + str(
                subJob) + ".log"
            command = 'python /storage_mnt/storage/user/lwezenbe/private/PhD/Code/TauStudy/Efficiency/LightLepDiscrFR.py --sample=' + sample.name + ' --subJob=' + str(
                subJob) + ' --inputFile=inputFilesv3'
            sub.launchCream02(command, log, True, "LightLepFR")
コード例 #3
0
ファイル: submitJobs.py プロジェクト: lwezenbe/TauStudy
if not args.isCheck:
    sampleList = createSampleList(
        '/user/lwezenbe/private/PhD/Code/TauStudy/FakeRate/ClosureTest/Data/inputFiles_'
        + args.year + '.conf')
else:
    sampleList = createSampleList(
        '/user/lwezenbe/private/PhD/Code/TauStudy/FakeRate/Data/inputFiles_' +
        args.year + '.conf')

if args.isCheck:
    MCsamples = ['DYJets']
else:
    MCsamples = ['DYJets', 'TT']

for sample in sampleList:
    if not args.inData:
        if not sample.output in MCsamples: continue
    for subJob in xrange(sample.splitJobs):
        log = "/user/lwezenbe/private/PhD/Code/TauStudy/FakeRate/ClosureTest/log/" + sample.name + "_subjob_" + str(
            subJob) + ".log"
        command = 'python /storage_mnt/storage/user/lwezenbe/private/PhD/Code/TauStudy/FakeRate/ClosureTest/closureTest.py --sampleName=' + sample.name + ' --subJob=' + str(
            subJob) + ' --year=' + args.year
        if args.isCheck: command += ' --isCheck'
        if args.inData: command += ' --inData'
        if (args.runLocal):
            sub.runLocal(command, log)
        else:
            sub.launchCream02(command, log, False,
                              'ClosureTest_' + str(subJob))
コード例 #4
0
        if not args.path: paths = getAllPaths(year)
        else: paths = [args.path]

        for path in paths:
            if not args.overwrite and (os.path.exists(
                    os.path.join('triggerPrescales', year, path + '.php'))):
                print 'Found already php file for ' + path + ' (' + year + '), skipping'
                continue
            jobs.append((path, year, args.minRun, args.maxRun))
            print 'Added job for ' + path + ' (' + year + ')'

    if args.useCluster:
        from jobSubmitter import launchCream02
        for i, job in enumerate(jobs):
            path, year, minRun, maxRun = job
            if ' ' in path: continue
            command = './makePrescaleWebpage.py --path=' + path + ' --year=' + year + (
                ' --overwrite' if args.overwrite else '')
            if minRun: command += ' --minRun=' + minRun
            if maxRun: command += ' --maxRun=' + maxRun
            logFile = './log/' + path + '_' + year + '.log'
            launchCream02(command, logFile, checkQueue=(i % 100 == 0))
    elif int(args.cores) > 1:
        from multiprocessing import Pool
        pool = Pool(processes=int(args.cores))
        pool.map(analyzePath, jobs)
        pool.close()
        pool.join()
    else:
        map(analyzePath, jobs)
コード例 #5
0
import ROOT
import os
from Sample import createSampleList, getSampleFromList
import jobSubmitter as sub

sampleList = createSampleList(
    '/user/lwezenbe/private/PhD/Code/TauStudy/ReproduceAN2017_094/Data/inputFiles.conf'
)

for sample in sampleList:
    for subJob in xrange(sample.splitJobs):
        log = "/user/lwezenbe/private/PhD/Results/TauStudy/ReproduceAN2017_094/log/" + sample.name + "_subjob_" + str(
            subJob) + ".log"
        command = 'python /storage_mnt/storage/user/lwezenbe/private/PhD/Code/TauStudy/ReproduceAN2017_094/ReproduceAN2017_094.py --sampleName=' + sample.name + ' --subJob=' + str(
            subJob)
        sub.launchCream02(command, log, False, 'ReproduceANjob')
        #sub.runLocal(command, log)
コード例 #6
0
ファイル: submitLocalSkim.py プロジェクト: lwezenbe/TauStudy
import ROOT, subprocess
import subSample
import jobSubmitter as sub
from helpers import makeDirIfNeeded

import argparse
argParser = argparse.ArgumentParser(description = "Argument parser")
argParser.add_argument('--year',        action='store',         default='2016')
argParser.add_argument('--skim',        action='store',         default='FR')
argParser.add_argument('--analysis',        action='store',         default='ewkino')

args = argParser.parse_args()

files_to_skim = subSample.createSampleList('Data/'+args.analysis+'_'+args.year+'.conf')
makeDirIfNeeded('/user/lwezenbe/public/ntuples/'+args.year+'/'+args.skim+'/Log')

for f in files_to_skim:
    number_of_subdir = int(subprocess.check_output("/bin/ls -lA " + f + "/* | egrep -c '^-|^d'", shell=True, stderr=subprocess.STDOUT))
    for subdir in xrange(number_of_subdir):
        subsample = subSample.subSample(f, subdir)
        nJobs = len(subsample.arrangeFilesInSubjobs())
        for job in xrange(nJobs):
            log = '/user/lwezenbe/public/ntuples/'+args.year+'/'+args.skim+'/Log/'+subsample.group+'_'+subsample.name+ '_'+ str(subdir)+ '_' +str(job)+'.log'   #temporary lazy log
            command = 'python /storage_mnt/storage/user/lwezenbe/private/PhD/Code/TauStudy/Skimmer/main.py --path='+f+' --subDir='+ str(subdir)+ ' --subJob=' +str(job) + ' --skim=' + args.skim + ' --year='+args.year
            name = subsample.group+'_'+subsample.name+ '_'+ str(subdir)+ '_' +str(job)
            sub.launchCream02(command, log, False, str(job)+ '_'+args.skim+'_' + name)

コード例 #7
0
ファイル: submitJobs.py プロジェクト: lwezenbe/TauStudy
import os, argparse
from Sample import createSampleList, getSampleFromList
import jobSubmitter as sub

argParser = argparse.ArgumentParser(description="Argument parser")
argParser.add_argument('--only_submit_signal', action='store', default=False)

args = argParser.parse_args()

NUMBER_OF_ELE_WP = 6
NUMBER_OF_MU_WP = 3

sampleList = createSampleList(
    '/user/lwezenbe/private/PhD/Code/TauStudy/Significance/Data/inputFilesv3.conf'
)

for sample in sampleList:
    if args.only_submit_signal and not 'SMS' in sample.name: continue
    #if not sample.output == 'ST': continue
    for subJob in xrange(sample.splitJobs):
        for ele in range(NUMBER_OF_ELE_WP):
            for mu in range(NUMBER_OF_MU_WP):
                log = "/user/lwezenbe/private/PhD/Results/TauStudy/Significance/log/" + sample.name + "_subjob_" + str(
                    subJob) + "_ele_" + str(ele) + "_mu_" + str(mu) + ".log"
                command = 'python /storage_mnt/storage/user/lwezenbe/private/PhD/Code/TauStudy/Significance/main.py --sampleName=' + sample.name + ' --subJob=' + str(
                    subJob) + ' --ele_cut_index=' + str(
                        ele) + ' --mu_cut_index=' + str(mu)
                sub.launchCream02(command, log, False,
                                  'SignificanceJob_' + str(subJob))
                #sub.runLocal(command, log)
コード例 #8
0
ファイル: submitMerge.py プロジェクト: lwezenbe/TauStudy
import ROOT, os, glob
import jobSubmitter as sub
from helpers import makeDirIfNeeded

baseFolderInput = '/user/lwezenbe/public/ntuples/2016/ewkino_Oldtrilep'
baseFolderOutput = '/user/lwezenbe/public/ntuples/2016/ewkino_Oldtrilep'

makeDirIfNeeded(baseFolderOutput)

list_of_folders = glob.glob(baseFolderInput + '/tmp*')
for f in list_of_folders:
    log = baseFolderOutput + '/Log/' + f.rsplit('/', 1)[1] + '.log'
    command = 'python /storage_mnt/storage/user/lwezenbe/private/PhD/Code/TauStudy/Skimmer_Old/mergeTuples.py --f=' + f + ' --Input=' + baseFolderInput + ' --Output=' + baseFolderOutput
    sub.launchCream02(command, log, True, 'Merge ' + f.rsplit('/', 1)[1])
コード例 #9
0
ファイル: submitMerge.py プロジェクト: lwezenbe/TauStudy

def isData(f):
    list_of_datafiles = [
        'SingleMuon', 'SingleElectron', 'DoubleMuon', 'DoubleEG', 'MuonEG',
        'EGamma'
    ]
    for dataf in list_of_datafiles:
        if dataf in f: return True
    return False


makeDirIfNeeded(baseFolderOutput)

#data_included = True

list_of_folders = glob.glob(baseFolderInput + '/tmp_*')
for f in list_of_folders:
    makeDirIfNeeded(baseFolderOutput + '/Log')
    if not isData(f):
        log = baseFolderOutput + '/Log/' + f.rsplit('/', 1)[1] + '.log'
        command = 'python /storage_mnt/storage/user/lwezenbe/private/PhD/Code/TauStudy/Skimmer/mergeTuples.py --f=' + f + ' --Output=' + baseFolderOutput
        sub.launchCream02(command, log, False, 'Merge_' + f.rsplit('/', 1)[1])
#    else:
#        data_included = True
#
#if data_included:
#    log = baseFolderOutput + '/Log/data.log'
#    command = 'python /storage_mnt/storage/user/lwezenbe/private/PhD/Code/TauStudy/Skimmer/mergeData.py --year='+args.year + ' --skim='+args.skim
#    sub.launchCream02(command, log, False, 'Merge_Data')
コード例 #10
0
ファイル: submitJobs.py プロジェクト: lwezenbe/TauStudy
argParser.add_argument('--year', action='store', default='2016')
argParser.add_argument('--inData', action='store_true')
argParser.add_argument('--runLocal', action='store_true')

args = argParser.parse_args()

sampleList = createSampleList(
    '/user/lwezenbe/private/PhD/Code/TauStudy/FakeRate/Data/inputFiles_' +
    args.year + '.conf')
makeDirIfNeeded("/user/lwezenbe/private/PhD/Code/TauStudy/FakeRate/log")

for sample in sampleList:
    if not args.inData and not 'DYJets' in sample.output: continue

    for subJob in xrange(sample.splitJobs):
        log = "/user/lwezenbe/private/PhD/Code/TauStudy/FakeRate/log/" + sample.name + "_subjob_" + str(
            subJob) + ".log"
        command = 'python /storage_mnt/storage/user/lwezenbe/private/PhD/Code/TauStudy/FakeRate/main.py --sampleName=' + sample.name + ' --subJob=' + str(
            subJob) + ' --year=' + args.year
        if args.inData: command += ' --inData'
        if args.inData:
            inDataStr = "True"
        else:
            inDataStr = "False"
        if args.runLocal:
            sub.runLocal(command, log)
        else:
            sub.launchCream02(
                command, log, False,
                'FR_' + inDataStr + "_" + sample.name + str(subJob))