PhyDyn: Epidemiological modelling in BEAST.
Igor Siveroni and Erik Volz. Department of Infectious Disease Epidemiology, Imperial College London.
PhyDyn is a BEAST2 package for performing Bayesian phylogenetic inference under models that deal with structured populations with complex population dynamics. This package enables simultaneous estimation of epidemiological parameters and pathogen phylogenies. The package implements a coalescent model for a large class of epidemic processes specified by a deterministic nonlinear dynamical system. Genealogies are specified as timed phylogenetic trees in which lineages are associated with the distinct subpopulation in which they are sampled. Epidemic models are defined by a series of ordinary differential equations (ODEs) specifying the rates that new lineages introduced in the population (birth matrix) and the rates at which migrations, or transition between states occur (migration matrix). The ODE syntax allows the user to define and use complex mathematical expressions such as polynomials and trigonometric functions. Currently, PhyDyn works with deterministic demographic models. Future versions may incorporate other population models, methods for simulating trees conditional on an epidemic process and include semi-parametric epidemiological models.
**Current version: 1.3.8 **
PhyDyn is a BEAST2 package. The latest version of the package (v1.3.8) has been compiled against BEAST v2.6.2.
- BEAST2 v2.6.0 or greater or, preferably, BEAST v2.6.2 or greater.
- Java JDK (JDK 8 recommended for OSX) - required by BEAST2. Note that there's the option to download Java and BEAST2 in a single bundle.
BEAST2 is available for Windows, OSX and Linux. Instructions for download and installation can be found in the BEAST2 site.
The easiest way to install PhyDyn is with BEAST2's package manager via BEAUti.
BEAUti, a graphical user-interface (GUI) application for generating BEAST XML files, is distributed together with BEAST2. Instructions on how to install/un-install BEAST2 packages with BEAUti can be found at the Managing Packages page from the BEAST2 site.
We also provide a zipped distribution of the package (
dist/PhyDyn.v1.3.8.zip) that can be installed by hand following the instructions in here .
Demo / examples
PhyDyn analyses are provided as
xml files and executed by running BEAST2 - they are, after all, BEAST2 analyses. For example, let's consider the PhyDyn xml file
examples/SIR3/SIR3example.xml that specifies a three-deme SIR model and generates the corresponding SIR3 trajectory for time interval [0,50] (no MCC sampling involved). After making sure the xml file is in our current directory, we can execute the PhyDyn analysis by typing
> beast SIR3example.xml
or by running the BEAST GUI, selecting the desired file and hitting the
Run button. The analysis generates a trajectory log file named
trajSIR3.csv, which can be used to generate a plot (
trajSIR3.csv.png) by typing
Rscript plotTraj.R trajSIR3.csv
You need R for this part. The
trajSIR3.csv.png file is also included in
Below, we provide links to tutorials and complete examples.
- SIR2 model: Model construction and trajectory generation (tutorial)
- SIR2 model: Computing the likelihood (tutorial).
- Ebola: A super-spreading SEIR model applied to Ebola (with fixed tree).
- Influenza: Flu model with sequence data (tree sampling).
Instructions for use
Check the PhyDyn Wiki for detailed documentation.
Last Release: v1.3.8
Additions/Changes included in this release:
- Added Covariate Likelihood.
- Option to run trajectory from root.
Any questions, bug reports or suggestions please email to Igor Siveroni at email@example.com.
This software is free (as in freedom). With the exception of the libraries on which it depends, it is made available under the terms of the GNU General Public Licence version 3, which is contained in the this directory in the file named COPYING.
The following libraries are bundled with PhyDyn:
- ANTLR : Another Tool for Language recognition
- Apache Commons (http://commons.apache.org/)
- jblas (http://jblas.org) : Linear Algebra for Java
Work on this project is made possible by support from the MRC Centre for Outbreak Analysis and Modelling, and MIDAS, Models of Infectious Disease Agent Study (grant NIH MIDAS U01 GM110749).
-  Volz EM, 2012, Complex population dynamics and the coalescent under neutrality, Genetics, Vol:190, ISSN:0016-6731, Pages:187-201
-  Erik Volz and Igor Siveroni, 2018, Bayesian phylodynamic inference with complex models. PLOS COMPUTATIONAL BIOLOGY, Vol: 14, ISSN: 1553-7358 .