Repmaker
Description
Repmaker is a program by Jim Wilgenbusch designed to "parallelize" the phylogenetic non-parametric bootstrap analysis. Repmaker automatically generates multiple NEXUS files. The files are then used to distribute a single PAUP* bootstrap analysis over multiple machines by using the Condor scheduler or by another perl utility BsLauncher (included with
RepMaker).
Requirements
- A NEXUS command file named "input.nex" in the current working directory. The input.nex file contains a paup block with all the paup commands that will be executed for each bootstrap replicate. The file might have a paup block with model parameters and the names of sequences to be deleted. For example:
begin paup;
delete 1;
set crit=likelihood;
lset nst=2 tratio=4.71 rates=gamma shape=0.4036;
end;
- If you use Condor to distribute the individual replicates, then you will need to change the path to the PAUP executable. To run paup in the condor standard universe the PAUP binary must be linked to the condor library. See the UsingCondor documentation for more on running application in the standard universe.
- Possible others that I have not considered.
Usage
Running repmaker
$ repmaker <filename>
Repmaker takes a single optional argument; the name of a NEXUS data file. If a filename is not given, then the program will query you for one once it is started. Also, the program will be ask you to input the total number of bootstrap replicates to be included in your analysis and how many times you would like to divide up the total number of replicates.
When the program finishes you will find a directory named RepFiles. The RepFiles directory contains the individual bootstrap replicate files, a condor command file, and a perl script for putting things back together after all replicates finish.
After running repmaker
repmaker with condor
Change to the RepFiles directory automatically generated by the repmaker program
$ cd RepFiles
Run the
condor_submit command
$ condor_submit repMaker.cmd
repmaker with bsLauncher
Change to the RepFiles directory automatically generated by the repmaker program
$ cd RepFiles
Run the
bslauncher command
$ ../bslauncher -f ../hosts.in
## The hosts.in file must include the names of nodes available in your
## cluster. Also, you must be able to access nodes via passwordless ssh
## authentication and your home directory must be mounted on all of the
## nodes listed in the hosts.in file.
Consolidate the results
After all the reps finish, return to the RepFiles directory and execute the perl script named
getTrees.pl.
$ ./getTrees.pl
The getTrees.pl script will concatenate all of the individual bootstrap tree files and get paup to save the consensus treefile to repMakerBS.tre.
If you want to transfer things to your Mac or PC so that you can print a pretty picture, you will need to move the following files:
- allReps.out
- getTrees.nex
- YourDataFile.nex
The
getTrees.nex file will have to be changed to reflect the location of your
data file on your Mac or PC. The
getTrees.nex file will look something like this:
begin paup;
execute ~/anolis/anolis_crist.nex; [<---- !!!! CHANGE THIS LINE !!!!!]
gettrees allblocks=yes StoreTreeWts=yes file=allReps.out mode=3;
contree all/strict=no majrule=yes usetreewts=yes treefile = repMakerBS.tre;
end;
Change the execute line as noted.
Enjoy!
--
JimWilgenbusch - 20 Oct 2005