cladoRcpp: C++ implementations of phylogenetic cladogenesis calculations

This package implements in C++/Rcpp various cladogenesis-related calculations that are slow in pure R. These include the calculation of the probability of various scenarios for the inheritance of geographic range at the divergence events on a phylogenetic tree, and other calculations necessary for models which are not continuous-time markov chains (CTMC), but where change instead occurs instantaneously at speciation events. Typically these models must assess the probability of every possible combination of (ancestor state, left descendent state, right descendent state). This means that there are up to (# of states)^3 combinations to investigate, and in biogeographical models, there can easily be hundreds of states, so calculation time becomes an issue. C++ implementation plus clever tricks (many combinations can be eliminated a priori) can greatly speed the computation time over naive R implementations. CITATION INFO: This package is the result of my Ph.D. research, please cite the package if you use it! Type: citation(package="cladoRcpp") to get the citation information.

Install the latest version of this package by entering the following in R:
AuthorNicholas J. Matzke [aut, cre, cph]
Date of publication2014-05-18 07:22:44
MaintainerNicholas J. Matzke <>
LicenseGPL (>= 2)

View on CRAN


areas_list_to_states_list_old Man page
cladoRcpp Man page
cladoRcpp-package Man page
numstates_from_numareas Man page
rcpp_areas_list_to_states_list Man page
rcpp_calc_anclikes_sp Man page
rcpp_calc_anclikes_sp_COOprobs Man page
rcpp_calc_anclikes_sp_COOweights_faster Man page
rcpp_calc_anclikes_sp_prebyte Man page
rcpp_calc_anclikes_sp_rowsums Man page
rcpp_calc_anclikes_sp_using_COOprobs Man page
rcpp_calc_rowsums_for_COOweights_columnar Man page
rcpp_calc_splitlikes_using_COOweights_columnar Man page
Rcpp_combn_zerostart Man page
rcpp_convolve Man page
rcpp_mult2probvect Man page
rcpp_states_list_to_DEmat Man page
strsplit3 Man page

Questions? Problems? Suggestions? or email at

Please suggest features or report bugs with the GitHub issue tracker.

All documentation is copyright its authors; we didn't write any of that.