Skip to Content



A package for the analysis of species limits and DNA barcoding data


Interface to the API for TreeBASE


Calculates and compares rate differences of continuous character evolution under Brownian motion and a new set of Ornstein-Uhlenbeck-based Hansen models that allow the strength of selection and stochastic motion to vary across selective regimes.


phytools provides various functions for phylogenetic analysis, mostly relevant to comparative biology.


motmot provides functions for fitting models of trait evolution on phylogenies for continuous traits. The majority of functions are based around tests of variation in the rates of trait evolution.


Functions for performing phylogenetic comparative analyses.


Contains a number of comparative phylogenetic methods, mostly focusing on analysing diversification and character evolution. Contains implementations of BiSSE (Binary State Speciation and Extinction; Maddison et al. 2007: Syst. Biol. 56: 701) and its unresolved tree extensions (FitzJohn et al. 2009: Syst. Biol. 58: 595), MuSSE (Multiple State Speciation and Extinction), QuaSSE (Quantitative State Speciation and Extinction; FitzJohn 2010: Syst. Biol. 59: 619), GeoSSE (Geographic State Speciation and Extinction; Goldberg et al. 2011: Syst. Biol. 60: 451), and BiSSE-ness (Magnuson-Ford and Otto 2012: Am. Nat.) Other included methods include Markov models of discrete and continuous trait evolution and constant rate speciation and extinction.


PhyloSim is an extensible object-oriented framework for the Monte Carlo simulation of sequence evolution written in 100 percent R. It is built on the top of the R.oo and ape packages and uses Gillespie's direct method to simulate substitutions, insertions and deletions.


Geodesic distance between phylogenetic trees and associated functions.


(i) For a given species phylogeny on present day data which is calibrated to calendar-time, a method for estimating maximum likelihood speciation and extinction processes is provided. The method allows for non-constant rates. Rates may change (1) as a function of time, i.e. rate shifts at specified times or mass extinction events (implemented as bd.shifts.optim and visualized as bd.shifts.plot) or (2) as a function of the number of species, i.e. density-dependence (implemented as bd.densdep.optim). Note that the method takes into account the whole phylogeny, in particular it accounts for the "pull of the present" effect. Both models can take into account incomplete species sampling, as long as each species has the same probability of being sampled. For a given phylogeny on higher taxa (i.e. all but one species per taxa are mission), but where the number of species is known within each higher taxa, speciation and extinction rates can be estimated under model (1) (implemented as bd.shifts.optim with groups !=0). (ii) For a given phylogeny with sequentially sampled tips, e.g. a virus phylogeny, rates can be estimated under a model where rates vary across time using bdsky.stt.optim (extending bd.shifts.optim). Furthermore rates may vary as a function of host types using bdtypes.stt.lik (multitype branching process extending functions in R package diversitree).