Modules and data types
Modules
Phylo.Phylo — ModulePhylo packageThe Phylo package provides some simple phylogenetics types (e.g. NamedTree) to interface to the Diversity package for measuring phylogenetic diversity. It also provides an interface to R for copying trees to and from that language and can read newick and nexus tree files (including TreeSets that contain multiple trees).
Finally it also provides a standard abstract interface to phylogenetic trees, by defining AbstractNode, AbstractBranch and AbstractTree supertypes, and methods to interface to them. It also provides (through the Phylo.API submodule) methods to (re)define to write your own phylogenetic type in a way that will interact cleanly with other phylogenetic packages.
Tree sets
Phylo.TreeSet — TypeTreeSetA collection of trees with the same tips.
Tree types
This package offers a number of different types of tree, each optimised for a specific usage
Phylo.RecursiveTree — Typestruct RecursiveTree <: AbstractTreeA phylogenetic tree type containing RecursiveElts as both nodes and branches, allowing navigation of the tree using only the node and branch elements.
Phylo.LinkTree — Typestruct LinkTree <: AbstractTreeA phylogenetic tree type containing LinkNodes and LinkBranches
Phylo.NamedBinaryTree — TypeNamedBinaryTreeBinary phylogenetic tree object with known leaves
Phylo.BinaryTree — TypeBinaryTreeBinary phylogenetic tree object with known leaves and per node data
Phylo.NamedTree — TypeNamedPolytomousTreePolytomous phylogenetic tree object with known leaves
Phylo.PolytomousTree — TypePolytomousTreePhylogenetic tree object with polytomous branching, and known leaves and per node data
Phylo.NamedPolytomousTree — TypePolytomousTreePhylogenetic tree object with polytomous branching, and known leaves and per node data
Node and Branch types
Phylo.RecursiveElt — Typestruct RecursiveElt <: AbstractEltA type for branches or nodes in a RecursiveTree, allowing navigation of the tree without using the tree object itself.
Phylo.LinkNode — Typestruct LinkNode <: AbstractNodeA node type that is connected by LinkBranches in a LinkTree
Phylo.BinaryNode — Typestruct BinaryNode <: AbstractNodeA node of strict binary phylogenetic tree
Phylo.Node — Typestruct Node <: AbstractNodeA node of potentially polytomous phylogenetic tree
Phylo.LinkBranch — Typestruct LinkBranch <: AbstractBranchA branch type that connects LinkNodes in a LinkTree
Phylo.Branch — TypeBranch
A branch connecting two AbstractNodes of a phylogenetic treeIterator types
Phylo.BranchIterator — TypeBranchIteratorThe struct representing an iterator for branches of a phylogenetic tree
Phylo.BranchNameIterator — TypeBranchNameIteratorThe struct representing an iterator for branchnames of a phylogenetic tree
Phylo.NodeIterator — TypeNodeIteratorThe struct representing an iterator for nodes of a phylogenetic tree
Phylo.NodeNameIterator — TypeNodeNameIteratorThe struct representing an iterator for nodenames of a phylogenetic tree