|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object edu.uconn.mcb.lineageevolver.Lineage
Model of Lineages comprised of a collection of Genomes.
Nested Class Summary | |
class |
Lineage.HGTDenied
Exception thrown when HGT failed a reasonable number of times. |
Field Summary | |
private int |
_currentTime
The amount of time that has passed since the beginning of evolution. |
private java.util.ArrayList |
_edges
The edges we are currently processing. |
private int[] |
_hgtCounts
The amount of substitions before horizontal gene transfer is to be processed. |
private int |
_totalTime
The total time to process evolution. |
private GraphTopology |
_tree
The tree topology to follow for this lineage. |
Constructor Summary | |
Lineage(Configuration c)
Default constructor for objects of type lineage. |
Method Summary | |
private float |
getCategoryDifference(Genome gnm1,
Genome gnm2)
Returns the weighted difference in Lake's categories between two Genomes. |
Genome[] |
getTopLevel()
Returns the top level of genomes in this lineage. |
void |
hgt()
Processes horizontal gene transfer by selecting two genomes weighted according to their enviornments and transfer propensities. |
static void |
main(java.lang.String[] args)
Main driver for LineageEvolver - runs the simulation and outputs results. |
void |
processTree()
Processes evolution and hgt according to the configured tree. |
void |
visit(Visitor v)
Method to visit this visitable object with a visitor. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
private java.util.ArrayList _edges
private GraphTopology _tree
private int[] _hgtCounts
private int _currentTime
private int _totalTime
Constructor Detail |
public Lineage(Configuration c)
c
- the configuration file for this lineage.Method Detail |
public void hgt() throws Lineage.HGTDenied
First, generates relative pairwise probabilites for compatbility between Genomes based on similarites in Lake Category variables.
Then uses a RandomSelection
object to select one pair of Genomes randomly, weighted according to the calculated probabilities.
Randomly determines (with no weighting) which of the genomes in the pair will fill origin and destination roles.
Recombination is delegated to the Genome via Genome.hgt(Genome)
Lineage.HGTDenied
- If HGT was repeatedly not processed.RandomSelection
,
Genome.hgt(Genome)
public Genome[] getTopLevel()
public void processTree()
private float getCategoryDifference(Genome gnm1, Genome gnm2)
gnm1
- the first genome.gnm2
- the second genome.
public void visit(Visitor v)
Visitable
visit
in interface Visitable
v
- the visitor with which to visit this visitable object.Visitable.visit(edu.uconn.mcb.lineageevolver.misc.Visitor)
public static void main(java.lang.String[] args)
This is the place to add custom topologies, events, etc.
args
- Should be an array containing one variable: the path to the input configuration file.
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |