ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/VHbb/python/submitThem.py
(Generate patch)

Comparing UserCode/VHbb/python/submitThem.py (file contents):
Revision 1.9 by peller, Fri Sep 28 14:15:01 2012 UTC vs.
Revision 1.15 by peller, Tue Oct 2 11:23:10 2012 UTC

# Line 11 | Line 11 | parser.add_option("-T", "--tag", dest="t
11   parser.add_option("-J", "--task", dest="task", default="",
12                        help="Task to be done, i.e. 'dc' for Datacards, 'prep' for preparation of Trees, 'plot' to produce plots or 'eval' to write the MVA output or 'sys' to write regression and systematics. ")
13   parser.add_option("-M", "--mass", dest="mass", default="125",
14 <                      help="Mass for DC or Plots, 110...135")
14 >                      help="Mass for DC or Plots, 110...135")
15 > parser.add_option("-S","--samples",dest="samples",default="",
16 >                      help="samples you want to run on")
17 >
18  
19   (opts, args) = parser.parse_args(sys.argv)
20   if opts.tag == "":
# Line 22 | Line 25 | if opts.task == "":
25      print "Please provide a task.\n-J prep:\tpreparation of Trees\n-J sys:\t\twrite regression and systematics\n-J eval:\tcreate MVA output\n-J plot:\tproduce Plots\n-J dc:\t\twrite workspaces and datacards"
26      sys.exit(123)
27  
28 + #create the list with the samples to run over
29 + samplesList=opts.samples.split(",")
30 +
31   en = opts.tag
32   configs = ['config%s'%(en),'pathConfig%s'%(en)]
33 +        
34   print configs
35   config = BetterConfigParser()
36   config.read(configs)
# Line 36 | Line 43 | shutil.copyfile(os.path.basename(btagLib
43   shutil.copyfile('/scratch/%s/%s'%(getpass.getuser(),os.path.basename(btagLibrary)),btagLibrary)
44   os.chdir(submitDir)
45   logPath = config.get("Directories","logpath")
46 < repDict = {'en':en,'logpath':logPath,'job':''}
46 > #check if the logPath exist. If not exit
47 > if( not os.path.isdir(logPath) ):
48 >        print 'ERROR: ' + logPath + ': dir not found.'
49 >        print 'ERROR: Create it before submitting '
50 >        print 'Exit'
51 >        sys.exit(-1)
52 >
53 > repDict = {'en':en,'logpath':logPath,'job':'','task':opts.task}
54   def submit(job,repDict):
55          repDict['job'] = job
56 <        command = 'qsub -V -cwd -q all.q -N %(job)s_%(en)s -o %(logpath)s/%(job)s_%(en)s.out -e %(logpath)s/%(job)s_%(en)s.err runAll.sh %(job)s %(en)s ' %(repDict) + opts.task
56 >        command = 'qsub -V -cwd -q all.q -N %(job)s_%(en)s%(task)s -o %(logpath)s/%(job)s_%(en)s_%(task)s.out -e %(logpath)s/%(job)s_%(en)s_%(task)s.err runAll.sh %(job)s %(en)s ' %(repDict) + opts.task
57          print command
58          subprocess.call([command], shell=True)
59  
60   if opts.task == 'dc':
61      DC_vars = config.items('Limit')
62   if opts.task == 'plot':
63 <    Plot_vars= config.items('Plot')
63 >    Plot_vars= (config.get('Plot_general','List')).split(',')
64  
65 < path = config.get("Directories","samplepath")
66 < infofile = open(path+'/env/samples.info','r')
67 < info = pickle.load(infofile)
68 < infofile.close()
65 > if not opts.task == 'prep':
66 >    path = config.get("Directories","samplepath")
67 >    infofile = open(path+'/env/samples.info','r')
68 >    info = pickle.load(infofile)
69 >    infofile.close()
70  
71  
72   if opts.task == 'plot':
73      for item in Plot_vars:
74 <        if 'ZH%s'%opts.mass in item[0]:
60 <            submit(item[0],repDict)
61 <        elif opts.mass == '' and 'ZH' in item[0]:
62 <            submit(item[0],repDict)
74 >        submit(item,repDict)
75  
76   elif opts.task == 'dc':
77      for item in DC_vars:
# Line 71 | Line 83 | elif opts.task == 'prep':
83      submit('prepare',repDict)
84  
85   elif opts.task == 'eval' or opts.task == 'sys':
86 <    for job in info:
87 <        submit(job.name,repDict)
86 >    if ( opts.samples == ""):
87 >        for job in info:
88 >            submit(job.name,repDict)
89 >    else:
90 >        for sample in samplesList:
91 >            submit(sample,repDict)
92 >            

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines