Book contents
12 - Getting started with BEAST 2
from Part III - Programming
Published online by Cambridge University Press: 05 October 2015
Summary
BEAST is software for performing a wide range of phylogenetic analyses. The vision we have for BEAST is that it provides tools for computational science that are
easy to use, that is, well documented, having intuitive user interfaces with shallow learning curve.
open access, that is, open source, open XML format, facilitating reproducibility of results, and running on many platforms.
easy to extend, by having extensibility in their design.
We limit the scope of BEAST to efficient Bayesian computation for sequence data analysis involving tree models. Making BEAST easy to use is one of the things that motivated writing this book. The code is set up to encourage documentation that is used in user interfaces like BEAUti. By dividing the code base into a core set of classes that can be extended by packages (Chapter 15), we hope that it will be easier for new developers to learn how to write new functionality and perform new science. Further help and documentation is available via the BEAST 2 wiki.
We want BEAST to be open access (Vision 2) and therefore it is written in Java, open source and licensed under the Lesser GNU Public License. BEAST 2 typically runs as a standalone application, by double-clicking its icon (in modern operating systems) or starting from the command line with java -jar beast.jar. A BEAST 2 XML file should be specified as the command line argument. XML files are used to store models and data in a single place. The XML format is an open format described in Chapter 13.
Since we want the system to be extensible (Vision 3), everything in the system implements BEASTInterface. The BEASTObject class provides a basic implementation and many classes in BEAST derive from BEASTObject. We will say that an object is a BEAST-object if it implements BEASTInterface and an object is a BEASTObject if it derives from BEASTObject. Every BEAST-object can specify inputs to connect with other BEAST-objects, which allows for flexible model building. Input objects contain information on type of input and how they are stored in BEAST XML files.
- Type
- Chapter
- Information
- Bayesian Evolutionary Analysis with BEAST , pp. 169 - 183Publisher: Cambridge University PressPrint publication year: 2015