Genome-level forward simulation of polyploid evolution. Produces Ks data suitable for generating simulated Ks histograms.
python3 SpecKS.py config.xml
SpecKS is a pipeline application, with the following steps:
- Make species trees for polyploids
- Make gene trees
- Run gene-birth-and-death model
- Run ohnolog-shedding model
- Evolve gene sequences along gene trees (PAML: evolver)
- Calculate Ks for polyploid (PAML: codeml)
- Plot simple histograms*
- Prepare the final results (.csv files with Ks data)
- Note, SpecKS is not intended to produce beautiful histograms. It is left to the user to upload the Ks datafiles generated by SpecKS to the visualization tools of choice.
- Run on an environment with PAML installed. We suggest v4.10.7 but have found that other versions also work.
- We give directions for configuring an appropriate conda environment below.
git clone https://github.com/tamsen/SpecKS
To automatically configure a conda environment suitable for SpecKS, use the "specks_environment.yml" included in the "sample_configs" folder. Example commands to install and do a short run are below. "my-test-run.xml" should be a copy of "short-run.xml" with the paths modifed as needed.
conda env create -f /PathToSpecKS/sample_configs/SpecKS_environment.yml
conda activate specks_env
python3 /PathToSpecKS/SpecKS.py my-test-run.xml
- There are example config files and an overview of the parameters in the "sample_configs" folder.
- Tested on a mac and linux (ubuntu)
- Publication forthcoming. Please reference "Accurate Inference of the Polyploid Continuum using Forward-time Simulations" by T. Dunn and A. Sethuraman