Mercurial > repos > ucsb-phylogenetics > osiris_phylogenetics
diff phylogenies/beast.py @ 0:5b9a38ec4a39 draft default tip
First commit of old repositories
author | osiris_phylogenetics <ucsb_phylogenetics@lifesci.ucsb.edu> |
---|---|
date | Tue, 11 Mar 2014 12:19:13 -0700 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/phylogenies/beast.py Tue Mar 11 12:19:13 2014 -0700 @@ -0,0 +1,35 @@ +#!/usr/bin/python +""" +This program makes a new copy of a BEAST XML config file and changes the name of the log and tree files. +The names have to be changed since Galaxy does not support dynamic output file names. +The new XML file name must not be the same as the original!!! +Script prints unique filename. + + +Usage: python beast.py XMLFILE SAVE_DIRECTORY +""" + +import sys +import time +from xml.etree.ElementTree import ElementTree + +beastDOM = ElementTree() +beastDOM.parse(sys.argv[1]) +logs = beastDOM.findall('mcmc/log') +for log in logs: + if log.get('id', False) == "fileLog": + log.set('fileName', 'data.log') + +logs = beastDOM.findall('mcmc/logTree') +for log in logs: + if log.get('id', False) == "treeFileLog": + log.set('fileName', 'data.trees') + +if len(sys.argv) > 2: + directory = sys.argv[2] +else: + directory = "" + +filename = directory + "/" + str(time.time()) + '.xml' +beastDOM.write(filename) +print filename