Package pal.tree

Class SimpleTree

java.lang.Object
pal.tree.SimpleTree
All Implemented Interfaces:
Serializable, IdGroup, Report, Units, UnitsProvider, Tree
Direct Known Subclasses:
ClusterTree, NeighborJoiningTree, ReadTree, UPGMATree

public class SimpleTree extends Object implements Tree, Report, Units, Serializable
data structure for a binary/non-binary rooted/unrooted trees
Version:
$Id: SimpleTree.java,v 1.23 2002/12/05 04:27:28 matt Exp $
Author:
Alexei Drummond, Korbinian Strimmer
See Also:
  • Constructor Details

    • SimpleTree

      public SimpleTree()
      constructor tree consisting solely of root node
    • SimpleTree

      public SimpleTree(Node r)
      constructor taking a root node
    • SimpleTree

      public SimpleTree(Tree tree)
      clone constructor
    • SimpleTree

      public SimpleTree(Tree tree, boolean keepIdentifiers)
      clone constructor
    • SimpleTree

      public SimpleTree(Tree tree, LabelMapping lm)
      clone constructor
      Parameters:
      lm - - a label mapping use for translating the original label names into something else
  • Method Details

    • getUnits

      public final int getUnits()
      Return the units that this tree is expressed in.
      Specified by:
      getUnits in interface Tree
      Specified by:
      getUnits in interface UnitsProvider
      Returns:
      the units relating to this object.
    • setUnits

      public final void setUnits(int units)
      Sets the units that this tree is expressed in.
    • getExternalNodeCount

      public final int getExternalNodeCount()
      Returns the number of external nodes.
      Specified by:
      getExternalNodeCount in interface Tree
      Returns:
      a count of the number of external nodes (tips) in this tree.
    • getExternalNode

      public final Node getExternalNode(int i)
      Returns the ith external node.
      Specified by:
      getExternalNode in interface Tree
      Returns:
      the ith external node in the tree.
    • getInternalNodeCount

      public final int getInternalNodeCount()
      Returns the number of internal nodes.
      Specified by:
      getInternalNodeCount in interface Tree
      Returns:
      a count of the number of internal nodes (and hence clades) in this tree.
    • getInternalNode

      public final Node getInternalNode(int i)
      Returns the ith internal node.
      Specified by:
      getInternalNode in interface Tree
      Returns:
      the ith internal node in the tree.
    • getRoot

      public final Node getRoot()
      Returns the root node of this tree.
      Specified by:
      getRoot in interface Tree
      Returns:
      the root node of this tree.
    • setRoot

      public final void setRoot(Node r)
      Set a new node as root node.
      Specified by:
      setRoot in interface Tree
      Parameters:
      r - the root node of the tree to construct.
    • createNodeList

      public void createNodeList()
      count and list external and internal nodes and compute heights of each node
      Specified by:
      createNodeList in interface Tree
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • findNode

      public Node findNode(int num)
      return node with number num (as displayed in ASCII tree)
      Parameters:
      num - number of node
      Returns:
      node
    • setAttribute

      public void setAttribute(Node node, String name, Object value)
      Sets an named attribute for a given node.
      Specified by:
      setAttribute in interface Tree
      Parameters:
      node - the node whose attribute is being set.
      name - the name of the attribute.
      value - the new value of the attribute.
    • getIdCount

      public int getIdCount()
      Description copied from interface: IdGroup
      Returns the number of identifiers in this group
      Specified by:
      getIdCount in interface IdGroup
    • getIdentifier

      public Identifier getIdentifier(int i)
      Description copied from interface: IdGroup
      Returns the ith identifier.
      Specified by:
      getIdentifier in interface IdGroup
    • setIdentifier

      public void setIdentifier(int i, Identifier id)
      Description copied from interface: IdGroup
      Sets the ith identifier.
      Specified by:
      setIdentifier in interface IdGroup
    • whichIdNumber

      public int whichIdNumber(String s)
      Description copied from interface: IdGroup
      returns the index of the identifier with the given name.
      Specified by:
      whichIdNumber in interface IdGroup
    • getAttribute

      public Object getAttribute(Node node, String name)
      Specified by:
      getAttribute in interface Tree
      Parameters:
      node - the node being interrogated.
      name - the name of the attribute of interest.
      Returns:
      an object representing the named attributed for the numbered node.
    • reroot

      public void reroot(int num)
      make node with number num to root node
      Parameters:
      num - number of node
    • reroot

      public void reroot(Node node)
      make provided node the root node
      Parameters:
      node - the node to make the root.
    • report

      public void report(PrintWriter out)
      Description copied from interface: Report
      print human readable report (e.g., on parameters and associated model)
      Specified by:
      report in interface Report
      Parameters:
      out - output stream
    • getCopy

      public Tree getCopy()
      Specified by:
      getCopy in interface Tree
      Returns:
      a clone of this tree