Class Tree

java.lang.Object
  extended by Tree

public class Tree
extends java.lang.Object

This class represents a tree which is used as a data structure that stores multiple RNA hairpins. A branch within the tree represents a hairpin structure that is build up by a number of loops, which are the nodes. Each hairpin within the tree must have a stability profile that stays within the boundaries of the energyProfile and have a sequence that matches the given template sequence.

See also http://2008.igem.org/Team:TUDelft/Temperature_software

Author:
Bastiaan van den Berg
See Also:
Node

Constructor Summary
Tree(java.lang.String top, java.lang.String bottom, int[] energyProfile, int maxDist)
          Creates a new tree.
 
Method Summary
 void buildTree()
          Recursively builds up the tree.
 java.lang.String getBottom()
          Returns the bottom RNA sequence.
 int[] getEnergyProfile()
          Returns the energy profile.
 int getMaxDist()
          Returns the maximal distance to the energy profile.
 java.util.ArrayList<java.lang.String> getResults(java.lang.String loop)
          Returns the resulting RNA hairpins that fit the template and have a stability profile that fits the given energy profile.
 java.lang.String getTop()
          Returns the top RNA sequence.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Tree

public Tree(java.lang.String top,
            java.lang.String bottom,
            int[] energyProfile,
            int maxDist)
Creates a new tree.

Parameters:
top - A template for the top sequence of the hairpin.
bottom - A template for the bottom sequence of the hairpin.
energyProfile - The energy profile.
maxDist - The maximal allowed distance to the energy profile.
Method Detail

buildTree

public void buildTree()
Recursively builds up the tree.

See Also:
Node.addChilds()

getResults

public java.util.ArrayList<java.lang.String> getResults(java.lang.String loop)
Returns the resulting RNA hairpins that fit the template and have a stability profile that fits the given energy profile.

Parameters:
loop - The sequense of the hairpin loop that connects the top and bottom sequences.
Returns:
List with RNA sequences.

getTop

public java.lang.String getTop()
Returns the top RNA sequence.

Returns:
The top RNA sequence.

getBottom

public java.lang.String getBottom()
Returns the bottom RNA sequence.

Returns:
The bottom RNA sequence.

getEnergyProfile

public int[] getEnergyProfile()
Returns the energy profile.

Returns:
The energy profile.

getMaxDist

public int getMaxDist()
Returns the maximal distance to the energy profile.

Returns:
The maximal distance to the energy profile.