pal.substmodel
Class RateDistribution

java.lang.Object
  extended by pal.misc.PalObjectListener.EventGenerator
      extended by pal.substmodel.RateDistribution
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, Parameterized, Report
Direct Known Subclasses:
GammaRates, InvariableSites, UniformRate

public abstract class RateDistribution
extends PalObjectListener.EventGenerator
implements Parameterized, Report, java.lang.Cloneable, java.io.Serializable

abstract base class for models of rate variation over sites employing a discrete rate distribution

Version:
$Id: RateDistribution.java,v 1.12 2004/05/19 04:05:21 matt Exp $
Author:
Korbinian Strimmer, Alexei Drummond
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from interface pal.misc.Parameterized
Parameterized.Null, Parameterized.ParameterizedBase, Parameterized.ParameterizedUser, Parameterized.Utils
 
Field Summary
protected  FormattedOutput format
           
 int numRates
          number of rate categories
 double[] probability
          probability of each rate
 double[] rate
          rates of each rate category
 
Constructor Summary
RateDistribution(int n)
          construct discrete distribution
 
Method Summary
 java.lang.Object clone()
           
 double[] getCategoryProbabilities()
          The non direct access method
 double getCategoryProbability(int category)
           
 int getNumberOfRates()
           
 double getRate(int category)
           
 double[] getRates()
           
protected  void printRates(java.io.PrintWriter out)
           
 
Methods inherited from class pal.misc.PalObjectListener.EventGenerator
addPalObjectListener, fireParametersChangedEvent, fireParametersChangedEvent, fireStructureChangedEvent, fireStructureChangedEvent, removePalObjectListener
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface pal.misc.Parameterized
getDefaultValue, getLowerLimit, getNumParameters, getParameter, getUpperLimit, setParameter, setParameterSE
 
Methods inherited from interface pal.misc.Report
report
 

Field Detail

numRates

public int numRates
number of rate categories


rate

public double[] rate
rates of each rate category


probability

public double[] probability
probability of each rate


format

protected FormattedOutput format
Constructor Detail

RateDistribution

public RateDistribution(int n)
construct discrete distribution

Parameters:
n - number of rate categories
Method Detail

getNumberOfRates

public final int getNumberOfRates()

getRates

public final double[] getRates()

getRate

public final double getRate(int category)

printRates

protected void printRates(java.io.PrintWriter out)

getCategoryProbabilities

public final double[] getCategoryProbabilities()
The non direct access method


getCategoryProbability

public final double getCategoryProbability(int category)

clone

public java.lang.Object clone()
Overrides:
clone in class java.lang.Object