def run_raxml(rax_out, boot, a_id_phylip, threads, aligned, model, cluster, node):
<EOL>if threads > <NUM_LIT>:<EOL><INDENT>ppn = <NUM_LIT><EOL><DEDENT>else:<EOL><INDENT>ppn = threads<EOL><DEDENT>if '<STR_LIT>' in os.environ:<EOL><INDENT>raxml = os.environ['<STR_LIT>']<EOL>threads = '<STR_LIT>' % (threads)<EOL><DEDENT>else:<EOL><INDENT>raxml = '<STR_LIT>'<EOL>threads = '<STR_LIT>'<EOL><DEDENT>rax_tree = '<STR_LIT>' % (rax_out)<EOL>if check(rax_tree) is False:<EOL><INDENT>seed = random.randint(<NUM_LIT>, <NUM_LIT>)<EOL>print(seed, file=open('<STR_LIT>', '<STR_LIT:w>'))<EOL>if check_type(aligned) == '<STR_LIT>' and model is False:<EOL><INDENT>model = '<STR_LIT>'<EOL><DEDENT>elif model is False:<EOL><INDENT>model = '<STR_LIT>'<EOL><DEDENT>dir = os.getcwd()<EOL>command = '<STR_LIT>' %(raxml, model, rax_out, boot, a_id_phylip, seed, seed, threads, rax_out, rax_out)<EOL>if cluster is False:<EOL><INDENT>p = Popen(command, shell = True)<EOL><DEDENT>else:<EOL><INDENT>if node is False:<EOL><INDENT>node = '<STR_LIT:1>'<EOL><DEDENT>qsub = '<STR_LIT>' % (node, ppn)<EOL>command = '<STR_LIT>'% (seed, seed, dir, a_id_phylip, command, dir, seed)<EOL>re_call = '<STR_LIT>' % (dir.rsplit('<STR_LIT:/>', <NUM_LIT:1>)[<NUM_LIT:0>], '<STR_LIT:U+0020>'.join(sys.argv))<EOL>p = Popen('<STR_LIT>' % (command, re_call, qsub), shell = True)<EOL><DEDENT>p.communicate()<EOL><DEDENT>return rax_tree<EOL>
run raxml