#!/usr/bin/env python import os import sys bmad_program = '../../../production/bin/ring_emittance_and_aperture ring_emittance_and_aperture.in' def run_bmad(settingsfile): os.system(bmad_program+' '+settingsfile) def parse_output(file): vals = [] for line in open(file): vals.append(line.split()) return vals def write_new_ouput(vals, outfile): """ Transpose output for Ivan """ line1='' line2='' for x in vals: line1 += x[0] + ' ' line2 += x[1] + ' ' f = open(outfile, 'w') f.write(line1+'\n') f.write(line2) f.close() if __name__ == "__main__": args = sys.argv[1:] if len(args) > 0: sfile = args[0] else: print('Error. Please supply the settings file: '+sys.argv[0]+ ' settings.bmad') sys.exit() run_bmad(sfile) vals = parse_output(sfile+'.merit') write_new_ouput(vals, sfile+'.meritT')