The BDMM-Prime project provides a BEAST 2 package for performing phylodynamic inference under both structured and unstructured birth-death models.
The BDMM-Prime project is a fork of the original BDMM project. The intention is to extend the functionality of the original package, while improving its flexibility and ease of use. It incorporates the following enhancements:
- an improved BEAUti interface that allows a much more diverse range of analyses to be configured,
- automatic fall-back to analytical solutions for unstructured (single type) analyses (meaning BDMM-Prime includes much of the functionality of BDSKY),
- use of stochastic mapping for sampling ancestral states,
- a particle filtering algorithm allowing joint sampling of population trajectories,
- a heavily refactored code base intended to make the package easier to use, extend and maintain.
Because of the many changes that were required in order to make this transition, BDMM-Prime is completely incompatible with BDMM itself. (The original package will be maintained separately to ensure that BEAST 2 XMLs and packages that depend on it remain usable.)
This repository is primarily of interest to people keen on building BDMM-Prime from the source or contributing to its development. If this doesn't include you, please instead visit the project web page at:
https://tgvaughan.github.io/BDMM-Prime
There you'll find all of the relevant usage information including installation instructions, a complete tutorial, and reference guides for using BDMM-Prime via the BEAUti interface. Also included are detailed information on its XML interface for advanced users.
To build BDMM-Prime from source you'll need the following to be installed:
- OpenJDK version 17 or greater
- A recent version of OpenJFX
- the Apache Ant build system
Once these are installed and in your execution path, issue the following command from the root directory of this repository:
JAVA_FX_HOME=/path/to/openjfx/ antThe package archive will be left in the dist/ subdirectory.
Note that unless you already have a local copy of the latest
BEAST 2 source
in the directory ../beast2 and the latest
BeastFX source
in the directory ../beastfx relative to the BDMM-Prime root, the build
script will attempt to download them automatically. Thus, most builds
will require a network connection.
As this is a fork of BDMM, BDMM-Prime owes its existence to the authors and contributors of that project, in particular Denise Kühnert and Jérémie Scire.
If you use this package as part of your research, please cite these papers:
- Vaughan and Stadler, "Bayesian phylodynamic inference of multi-type population trajectories using genomic data", MBE, 42(6):msaf130 (2025), doi:10.1093/molbev/msaf130
- Scire et al., "Robust Phylodynamic Analysis of Genetic Sequencing Data from Structured Populations", Viruses, 14(8):1648 (2022), doi:10.3390/v14081648.
- Kühnert, et al., "Phylodynamics with Migration: A ComputationalFramework to Quantify Population Structure from Genomic Data", MBE, 33(8):2102-2116 (2016), doi:10.1093/molbev/msw064.
BDMM-Prime is free software. It may be modified and distributed under the terms of the GNU General Public License version 3 or, at your option, any later version. A copy of this license should be found in the file COPYING located in the root directory of this repository. If this file is absent for some reason, it can also be retrieved from https://www.gnu.org/licenses.