def cleanup(*args): if ldir != None and os.path.isdir(ldir): General.destroyLocalSpace(ldir) sys.exit(0)
outfh2.write(resid + '\t' + format(abd, '.3f') + '\n') outfh3.write(resid + '\t' + format(ssc, '.3f') + '\n') if args.v: raw_outstr = [resid + ' :'] sc_components = sorted(score_components[resid], key = lambda x : (x[0], x[1])) for rawsc in sc_components: raw_outstr.extend([rawsc[0] + ',' + str(rawsc[1]), rawsc[2], rawsc[3]]) raw_outstr = '\t'.join(raw_outstr) + '\n' outfhv.write(raw_outstr) outfh1.close() outfh2.close() outfh3.close() if args.v: outfhv.close() print 'Scores calculation done!' if args.opdb: opdb1, opdb2, opdb3 = [ x + '.pdb' for x in (outf1, outf2, outf3)] for x in (outf1, outf2, outf3): replaceBfactor(args.p, x + '.pdb', x) if not args.post: if args.v: os.system('cp -r ' + ldir + '/' + base + ' ' + outdir) General.destroyLocalSpace(ldir) # remove temporary files created os.remove(list_tmp) # os.remove(term_support)
args = par.parse_args() cmd_setup = cmd_setup.replace('dummy.pdb', args.p) if args.change != None: assert len(args.change) % 2 == 0 for i in range(0, len(args.change), 2): cmd_setup.replace(args.change[i], args.change[i+1]) cmd_run = ['/home/grigoryanlab/library/bin/charmrun', '+p'+str(args.nc), '/home/grigoryanlab/library/bin/namd2', 'namdrun_run.ctl >& namdrun_run.out'] cmd_run = ' '.join(cmd_run) odir = os.getcwd() # run setup codes os.system(cmd_setup) General.destroyLocalSpace(ldir1) os.chdir(ldir2) os.system('rm -r vmd*') # need to have a subprocess with timeout, because wants to stop MD and allow certain time before job terminated class Command: def __init__(self, cmd): self.cmd = cmd self.process = None def run(self, timeout): def target(): print 'Thread started' self.process = subprocess.Popen(self.cmd, shell=True) self.process.communicate() print 'Thread finished'