pal.substmodel
Class SequenceSimulator

java.lang.Object
  extended by pal.substmodel.SequenceSimulator

public class SequenceSimulator
extends java.lang.Object


Constructor Summary
SequenceSimulator(SubstitutionModel model, int sequenceLength, boolean stochasticDistribution)
          A constructor (with no provided random number generator - a fresh one is created)
SequenceSimulator(SubstitutionModel model, int sequenceLength, MersenneTwisterFast random, boolean stochasticDistribution)
          A constructor (with no provided random number generator - a fresh one is created)
 
Method Summary
 int[] generateRoot()
           
 int[] getSimulated(int[] startingSequence, double distance)
           
 int[] getSiteCategoryDistribution()
           
 void resetSiteCategoryDistribution(boolean stochasticDistribution)
          Reassigns model classes to each site (a site belongs to a particular class/category of the model)
 void resetSiteCategoryDistribution(double[][] posteriorCategoryDistribution)
           
 void resetSiteCategoryDistribution(double[][] posteriorCategoryDistribution, int[] baseSiteCategories)
           
 void resetSiteCategoryDistribution(double[][] posteriorCategoryDistribution, SequenceSimulator base)
           
 void resetSiteCategoryDistribution(double[] categoryDistribution, boolean stochasticDistribution)
           
 void simulate(int[] startingSequence, double distance, int[] endingSequenceStore)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SequenceSimulator

public SequenceSimulator(SubstitutionModel model,
                         int sequenceLength,
                         boolean stochasticDistribution)
A constructor (with no provided random number generator - a fresh one is created)

Parameters:
model - The substitution model used for simulation
sequenceLength - The length of all sequences generated by this simulator

SequenceSimulator

public SequenceSimulator(SubstitutionModel model,
                         int sequenceLength,
                         MersenneTwisterFast random,
                         boolean stochasticDistribution)
A constructor (with no provided random number generator - a fresh one is created)

Parameters:
model - The substitution model used for simulation
sequenceLength - The length of all sequences generated by this simulator
random - A random number generator
Method Detail

resetSiteCategoryDistribution

public void resetSiteCategoryDistribution(boolean stochasticDistribution)
Reassigns model classes to each site (a site belongs to a particular class/category of the model)


resetSiteCategoryDistribution

public void resetSiteCategoryDistribution(double[] categoryDistribution,
                                          boolean stochasticDistribution)

resetSiteCategoryDistribution

public void resetSiteCategoryDistribution(double[][] posteriorCategoryDistribution)

getSiteCategoryDistribution

public int[] getSiteCategoryDistribution()

resetSiteCategoryDistribution

public void resetSiteCategoryDistribution(double[][] posteriorCategoryDistribution,
                                          SequenceSimulator base)

resetSiteCategoryDistribution

public void resetSiteCategoryDistribution(double[][] posteriorCategoryDistribution,
                                          int[] baseSiteCategories)

simulate

public void simulate(int[] startingSequence,
                     double distance,
                     int[] endingSequenceStore)

getSimulated

public int[] getSimulated(int[] startingSequence,
                          double distance)

generateRoot

public int[] generateRoot()