BackgroundContinuous time Markov chains CTMCs is a widely used model for describing the evolution of DNA sequences on the nucleotide, amino acid or codon level. The sufficient statistics for CTMCs are the time spent in a state and the number of changes between any two states. In applications past evolutionary events exact times and types of changes are unaccessible and the past must be inferred from DNA sequence data observed in the present.

ResultsWe describe and implement three algorithms for computing linear combinations of expected values of the sufficient statistics, conditioned on the end-points of the chain, and compare their performance with respect to accuracy and running time. The first algorithm is based on an eigenvalue decomposition of the rate matrix EVD, the second on uniformization UNI, and the third on integrals of matrix exponentials EXPM. The implementation in R of the algorithms is available at http:-www.birc.au.dk-~paula-.

ConclusionsWe use two different models to analyze the accuracy and eight experiments to investigate the speed of the three algorithms. We find that they have similar accuracy and that EXPM is the slowest method. Furthermore we find that UNI is usually faster than EVD.

Electronic supplementary materialThe online version of this article doi:10.1186-1471-2105-12-465 contains supplementary material, which is available to authorized users.