from defs import getscalevar jobname = 'job_desc' condor_out = 'condor_output.out' condor_err = 'condor_error.err' condor_log = 'condor_log.log' try: if len(sys.argv) < 7: raise Exception else: boson = (sys.argv[1]).upper() outputdir = sys.argv[2] inputfile = sys.argv[3] sectors = getsects(sys.argv[3], boson) scalevars = getscalevar(sys.argv[3]) # see whether input file contain special scale variation instruction histofile = sys.argv[4] outputfile = sys.argv[5] pdfdir = sys.argv[6] if len(sys.argv) > 7: jobname = sys.argv[7] if len(sys.argv) > 8: initsect = int(sys.argv[8]) if len(sys.argv) > 10: lastsect = int(sys.argv[9]) sectstep = int(sys.argv[10]) else: lastsect = initsect sectstep = 1
elif nextline.find('Turn off PDF error') != -1: newfile.write('\'Turn off PDF error (1=Yes, 0=No) = \' 1\n') else: newfile.write(nextline) nextline = inputfile.readline() except IOError: print('Error reading or writing file.') try: if len(sys.argv) < 4: raise Exception else: dirlocation = sys.argv[3] dirname = pathseparator(dirlocation)[1] sectors = getsects(sys.argv[2], sys.argv[1].upper()) scalevars = getscalevar( sys.argv[2] ) # see whether input file contain special scale variation instruction if len(sys.argv) > 6: initsect = int(sys.argv[4]) lastsect = int(sys.argv[5]) sectstep = int(sys.argv[6]) if sectstep != 0 and initsect > 0 and lastsect > 0 and initsect <= sectors and lastsect <= sectors: sectlist = range(initsect, lastsect + sectstep, sectstep) else: sectlist = range(1, sectors + 1) else: sectlist = range(1, sectors + 1) listsize = len(sectlist) except IOError:
#aacc = float((templine[39:].replace('d','e')).replace('D','E')) aacc = float((templine.split()[-1].replace('d', 'e')).replace('D', 'E')) elif templine.find('Maximum number of evaluations') != -1: inputfileinfo = inputfileinfo + templine #maxeval = int(templine[39:]) maxeval = int(templine.split()[-1]) elif templine.find('W production') != -1: boson = 'W' elif templine.find('Z production') != -1: boson = 'Z' elif templine.find('QCD Perturb. Order') != -1: inputfileinfo = inputfileinfo + templine #podr = int(templine[41:]) podr = int(templine.split()[-1]) sectors = getsects(podr, boson) if podr == 0: oprefix = 'LO' elif podr == 1: oprefix = 'NLO' elif podr == 2: oprefix = 'NNLO' else: print( "Unrecognized specification of perturbation order in input file." ) raise ofsplit = outfile.split('.', 1) if ofsplit[ 0] != oprefix: # outfile name given has no or wrong order prefix if ofsplit[0] == 'LO' or ofsplit[0] == 'NLO' or ofsplit[
""" Call python getsects() function in "defs.py" and print the result on screen Usage: python $0 <inputfile> <boson> """ import sys from defs import getsects print(getsects(sys.argv[1], sys.argv[2].upper()))