TreeKO is a python package used to compare phylogenetic trees. Currently it contains two different programs:
Tree comparison
The tree comparison algorithm has been designed in order to be able to compare trees that have undergone gene loss and gene duplication processes and therefore do not necessarily have the same number of leaves. TreeKO computes all the possible pruned trees in each original tree by splitting the trees by the duplication nodes and reassembling the trees with combinations of pruned trees. The pruned trees are then compared all against all, pruning the leaves that are not common in both pruned trees. TreeKO offers two distance measures that are modifications of the Robinson & Foulds distance. The speciation distance will compute the distance between two trees without penalizing for gene loss and duplication events. On the other hand the strict distance will compute the distance between the complete structures of the two trees.
Phylome support
The phylome support algorithm has been designed as a way to identify conflicting nodes and to incorporate genome-wide information on species trees. The algorithm is able to map gene-tree variability levels of large groups of gene trees (e.g. a whole phylome) on the nodes of the species tree.
Reconciliation distance
The reconciliation distance can be calculated between a gene tree and its species tree. A strict reconciliation is used to compare the two trees. Discrepancies between the topologies are attributed to either a loss or a duplication event. Two distances are provided. The duplication distance calculated the number of duplications predicted by the reconciliation. And the reconciliation cost distance, which provides an account of all the duplications and subsequent loss events that occurred during the evolution of the gene.
TreeKO is currently developed at the Comparative Genomics group at CRG
For more information and for support you can join the treeKO google group at: http://groups.google.com/group/treeko-support