babymaker  e95a6a9342d4604277fe7cc6149b6b5b24447d89
send_combine_ntuples.py
Go to the documentation of this file.
1 #!/usr/bin/env python
2 
3 ###### Script to send jobs to merge ntuples
4 import os, sys, subprocess
5 import pprint
6 import glob
7 import json
8 import string
9 import time
10 import pprint
11 
12 # Setting folders
13 datasets = 'txt/alldata.txt'
14 infolder = '/net/cms2/cms2r0/babymaker/babies/2016_08_10/data/unprocessed/'
15 outfolder = '/net/cms2/cms2r0/babymaker/babies/2016_08_10/data/unskimmed/'
16 jsonfile = '../../data/json/golden_Cert_271036-277933_13TeV_PromptReco_Collisions16_NoL1T.json'
17 
18 runs_file = 1 # Number of runs in each ntuple
19 
20 
21 runs = []
22 with open(jsonfile) as jfile:
23  for line in jfile:
24  for word in line.split():
25  if '"' in word:
26  word = word.split('"')[1]
27  runs.append(word)
28 
29 # Dividing runs into sets of "runs_file" elements
30 runs = [runs[i:i+runs_file] for i in xrange(0, len(runs), runs_file)]
31 
32 # Sending jobs for each set of runs
33 os.system("JobSetup.csh")
34 for run in runs:
35  cmd = "JobSubmit.csh ./run/wrapper.sh ./run/combine_datasets.exe -i "+infolder+" -o "+outfolder+" -f "+datasets+" -b "+run[0]+" -e "+run[-1]
36  # print cmd
37  os.system(cmd)
38 
39 sys.exit(0)