jebl.evolution.trees
Interface Tree
- All Superinterfaces:
- Attributable, Graph
- All Known Subinterfaces:
- RootedTree
- All Known Implementing Classes:
- CompactRootedTree, FilteredRootedTree, MutableRootedTree, RootedFromUnrooted, SimpleRootedTree, SimpleTree, SortedRootedTree, TransformedRootedTree
public interface Tree
- extends Graph
An unrooted tree.
- Author:
- rambaut, Alexei Drummond
getExternalNodes
Set<Node> getExternalNodes()
- Returns:
- a set of all nodes that have degree 1.
These nodes are often refered to as 'tips'.
getInternalNodes
Set<Node> getInternalNodes()
- Returns:
- a set of all nodes that have degree 2 or more.
These nodes are often refered to as internal nodes.
getExternalEdges
Set<Edge> getExternalEdges()
- Returns:
- a set of all edges that have a degree 1 node.
getInternalEdges
Set<Edge> getInternalEdges()
- Returns:
- a set of all edges for which both nodes have degree 2 or more.
getTaxa
Set<Taxon> getTaxa()
- Returns:
- the set of taxa associated with the external
nodes of this tree. The size of this set should be the
same as the size of the external nodes set.
getTaxon
Taxon getTaxon(Node node)
- Parameters:
node
- the node whose associated taxon is being requested.
- Returns:
- the taxon object associated with the given node, or null
if the node is an internal node.
isExternal
boolean isExternal(Node node)
- Parameters:
node
- the node
- Returns:
- true if the node is of degree 1.
getNode
Node getNode(Taxon taxon)
- Parameters:
taxon
- the taxon
- Returns:
- the external node associated with the given taxon, or null
if the taxon is not a member of the taxa set associated with this tree.