Examples

This page contains examples of phyddle projects for different phylogenetic modeling scenarios. Each project includes a config file and a simulation script. The config files specify how the pipeline is run (e.g. number of simulations to run, number of training epochs, which parameters to estimate, etc.). The simulation scripts define the exact simulation settings (e.g. numbers of taxa, numbers of taxa, rate constraints, etc.).

We chose a variety of models and languages to help new users get started. We encourage you to modify the scripts to suit your needs. However, be sure to carefully read the Overview and Safe Usage pages before to understand the implications of your changes and how to improve analysis performance.

BiSSE with R

Description: Simulates trees and character data under binary state-dependent speciation and extinction (BiSSE) models. Allows speciation rates to be state-independent (\(\lambda_1 = \lambda_2\)) or state-independent (\(\lambda_1 \neq \lambda_2\)). Extinction rates and transition rates assumed to be state-independent for simplicity (\(\mu_1 = \mu_2\) and \(q_{12} = q_{21}\)). Estimates model rates and model type.

Config: config.py
Simulator script: sim_bisse.R
Dependencies: R, ape, castor

Continuous trait models with R

Description: Simulates trees under a birth-death model. Simulates continuous-valued trait data under Brownian motion, Ornstein-Uhlenbeck, Early Burst, and Lévy process models. Estimates model parameters, ancestral trait value (at root), and model type.

Config: config.py
Simulator script: sim_bisse.R
Dependencies: R, ape, castor, statmod, pulsR

SIR + Migration with MASTER

Description: Simulates trees and character data under an SIR compartment model with migration among locations. Can be configured to simulate only during the exponential growth phase or extended beyond that phase. Estimates basic reproduction number, migration rate, sampling rate, and ancestral location state.

Exponential phase
Config: config.py
Simulator script: sim_bisse.R
All phases
Config: config.py
Simulator script: sim_bisse.R
Dependencies: BEAST2, MASTER, masterpy

Time-heterogeneous BiSSE with PhyloJunction

Description: Simulates trees and character data under binary state-dependent speciation and extinction (BiSSE) models. Allows speciation rates to be state-independent (\(\lambda_1 = \lambda_2\)) or state-independent (\(\lambda_1 \neq \lambda_2\)). Extinction rates and transition rates assumed to be state-independent for simplicity (\(\mu_1 = \mu_2\) and \(q_{12} = q_{21}\)). All species experience shift into a new rates at a random time. Estimates model rates and time of rate shift event.

Config: config.py
Simulator script (front-end): sim_bisse.R
Simulator script (back-end): bisse_timehet.pj
Dependencies: PhyloJunction

GeoSSE with RevBayes

Description: Simulates trees and character data a geographic state-dependent speciation and extinction (GeoSSE) model. Assumes all events of the same type have equal rates (e.g. \(d_{ij} = d_{kl}\)). Estimates model parameters.

Config: config.py
Simulator script: sim_bisse.R
Dependencies: RevBayes

K80 substitution model with RevBayes

Description: Simulates trees under a birth-death model. Simulates molecular sequences under a Kimura (1980) substitution model with transition-transversion biases. Estimates model parameters.

Config: config.py
Simulator script: sim_bisse.R
Dependencies: RevBayes