General description

EpoCs is a software that assess the nature and strenght of correlated evolution between two evolutionnary processes. It maximizes the likelihood of predefined scenarios of correlated evolution (e.g. asymetrical induction, reciprocal induction, antagonist events, etc.) using the co-repartition of the occurrences of a pair of events on a phylogenetic tree. Taking into account the topology of the tree and the location of the occurrences of each events on this tree, the algorithm computes and maximizes a likelihood function that is explicit for a series of nested models (from 2 to 8 paramaters) given of the co-repartition of the occurrences of both types of events on the tree. Input is a tree (with breanch length) with mapped events onto it.


The complete underlying logic of the methodology, with detailled explanations, is given in a manuscript entitled A minimal yet flexible likelihood framework to assess correlated evolution by Behdenna et al., currently under submission.

Side Note

We have previously developped a previous method that can test for independence using the same input. The methods is based on counts and uses linear algebra. The related software, entitled, EpiCs can be found here. It is much faster than EpoCs but cannot assess neither the scenario of correlated evolution (if any) nor the parameter values. As always, there is no free lunch ^^. The EpiCs publication is Testing for Independence between Evolutionary Processes by Behdenna et al., 2016.


EpoCs is an open-source implementation of the algorithm written in C language. The best way to use EpoCs is to download the source archive (epocs_src.tgz), to uncompress/unarchive it (tar xvzf epocs_src.tgz), to go into the newly created directory (cd epocs_src) and then to compile it (make). This results in an executable named "epocs". Thus EpoCs is, for now, only run as a command line program. To run EpoCs, simply type:

./epocs [options] outgroup [tree_file]

User must specified the input tree with mapped events (tree_file) as well as the outgroup name. The input format is described in the epics user guide and is the same for any number of events (at least 2 must be provided).

./epocs -h

will list all available options (h stands for help).

Many options can be turned on; the description for each of them are available in the user guide, but are also briefly described while typing "./epocs -h".


Coming soon, macosx and linux already compiled binaries


[ICO]NameLast modifiedDescription
[   ]Epics User guide02-Sept-2020 
[TXT]EpoCs sources02-Sept-2020 

Free css template from http://maxdesign.com.au