pal.mep
Class WindowedMutationRate

java.lang.Object
  extended by pal.mep.MutationRateModel
      extended by pal.mep.WindowedMutationRate
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, Parameterized, Report, Summarizable, Units

public class WindowedMutationRate
extends MutationRateModel
implements Report, Summarizable, Parameterized, java.io.Serializable

This class models a windowed mutation rate (parameter: mu = mutation rate).

Version:
$Id: WindowedMutationRate.java,v 1.8 2004/08/02 05:22:04 matt Exp $
Author:
Alexei Drummond
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class pal.mep.MutationRateModel
MutationRateModel.Factory
 
Nested classes/interfaces inherited from interface pal.misc.Parameterized
Parameterized.Null, Parameterized.ParameterizedBase, Parameterized.ParameterizedUser, Parameterized.Utils
 
Field Summary
 
Fields inherited from class pal.mep.MutationRateModel
fo
 
Fields inherited from interface pal.misc.Units
DAYS, EXPECTED_SUBSTITUTIONS, GENERATIONS, MONTHS, SAMPLE, SHORT_UNIT_NAMES, UNIT_NAMES, UNKNOWN, YEARS
 
Constructor Summary
  WindowedMutationRate(double muWindow, double muBackground, double windowCenter, double windowWidth, int units, boolean fixedb, double maximumMutationRate)
          Construct mutation rate model of a give rate in given units.
  WindowedMutationRate(double muWindow, double muBackground, double windowCenter, double windowWidth, int units, double maximumMutationRate)
          Construct mutation rate model of a give rate in given units.
  WindowedMutationRate(double muBackground, double windowCenter, double windowWidth, int units, double maximumMutationRate)
          Construct mutation rate model of a give rate in given units.
  WindowedMutationRate(double windowCenter, double windowWidth, int units, double maximumMutationRate)
          Construct mutation model with default settings
protected WindowedMutationRate(WindowedMutationRate toCopy)
           
 
Method Summary
 java.lang.Object clone()
           
 MutationRateModel.Factory generateFactory()
           
 MutationRateModel getCopy()
           
 double getDefaultValue(int k)
          get default value of parameter
 double getEndTime(double expectedSubs, double startTime)
          Window must not span zero!
 double getExpectedSubstitutions(double time)
          Window must not span zero!
static MutationRateModel.Factory getFactory(double muWindow, double muBackground, double windowCenter, double windowWidth, int units, double maximumMutationRate)
          Generate a MutationRateModel.Factory class for a WindowedMutationRate
 double getLowerLimit(int k)
          get lower parameter limit
 double getMu()
          returns current day mutation rate.
 double getMutationRate(double t)
          Gets the mutation rate, value of mu(t) at time t.
 int getNumParameters()
          get number of parameters
 double getParameter(int k)
          get model parameter
 java.lang.String[] getSummaryTypes()
           
 double getSummaryValue(int summaryType)
           
 double getUpperLimit(int k)
          get upper parameter limit
 void report(java.io.PrintWriter out)
          print human readable report (e.g., on parameters and associated model)
 void scale(double scale)
          Linearly scales this mutation rate model.
 void setParameter(double value, int k)
          set model parameter
 void setParameterSE(double value, int k)
          set standard errors for model parameter
 java.lang.String toSingleLine()
           
 java.lang.String toString()
           
 
Methods inherited from class pal.mep.MutationRateModel
getExpectedSubstitutions, getMaximumMutationRate, getOrthogonalHints, getTime, getUnits, scale, setUnits
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

WindowedMutationRate

protected WindowedMutationRate(WindowedMutationRate toCopy)

WindowedMutationRate

public WindowedMutationRate(double windowCenter,
                            double windowWidth,
                            int units,
                            double maximumMutationRate)
Construct mutation model with default settings


WindowedMutationRate

public WindowedMutationRate(double muBackground,
                            double windowCenter,
                            double windowWidth,
                            int units,
                            double maximumMutationRate)
Construct mutation rate model of a give rate in given units.


WindowedMutationRate

public WindowedMutationRate(double muWindow,
                            double muBackground,
                            double windowCenter,
                            double windowWidth,
                            int units,
                            boolean fixedb,
                            double maximumMutationRate)
Construct mutation rate model of a give rate in given units.


WindowedMutationRate

public WindowedMutationRate(double muWindow,
                            double muBackground,
                            double windowCenter,
                            double windowWidth,
                            int units,
                            double maximumMutationRate)
Construct mutation rate model of a give rate in given units.

Method Detail

clone

public java.lang.Object clone()
Specified by:
clone in class MutationRateModel

getCopy

public MutationRateModel getCopy()
Specified by:
getCopy in class MutationRateModel

getSummaryTypes

public java.lang.String[] getSummaryTypes()
Specified by:
getSummaryTypes in interface Summarizable

getSummaryValue

public double getSummaryValue(int summaryType)
Specified by:
getSummaryValue in interface Summarizable

getMu

public double getMu()
returns current day mutation rate.


getMutationRate

public final double getMutationRate(double t)
Description copied from class: MutationRateModel
Gets the mutation rate, value of mu(t) at time t.

Specified by:
getMutationRate in class MutationRateModel

getExpectedSubstitutions

public final double getExpectedSubstitutions(double time)
Window must not span zero!

Specified by:
getExpectedSubstitutions in class MutationRateModel

getEndTime

public final double getEndTime(double expectedSubs,
                               double startTime)
Window must not span zero!

Specified by:
getEndTime in class MutationRateModel

scale

public final void scale(double scale)
Linearly scales this mutation rate model.

Specified by:
scale in class MutationRateModel
Parameters:
scale - getExpectedSubstitutions should return scale instead of 1.0 at time t.

getNumParameters

public int getNumParameters()
Description copied from interface: Parameterized
get number of parameters

Specified by:
getNumParameters in interface Parameterized
Returns:
number of parameters

getParameter

public double getParameter(int k)
Description copied from interface: Parameterized
get model parameter

Specified by:
getParameter in interface Parameterized
Parameters:
k - parameter number
Returns:
parameter value

getUpperLimit

public double getUpperLimit(int k)
Description copied from interface: Parameterized
get upper parameter limit

Specified by:
getUpperLimit in interface Parameterized
Parameters:
k - parameter number
Returns:
upper bound

getLowerLimit

public double getLowerLimit(int k)
Description copied from interface: Parameterized
get lower parameter limit

Specified by:
getLowerLimit in interface Parameterized
Parameters:
k - parameter number
Returns:
lower bound

getDefaultValue

public double getDefaultValue(int k)
Description copied from interface: Parameterized
get default value of parameter

Specified by:
getDefaultValue in interface Parameterized
Parameters:
k - parameter number
Returns:
default value

setParameter

public void setParameter(double value,
                         int k)
Description copied from interface: Parameterized
set model parameter

Specified by:
setParameter in interface Parameterized
Parameters:
value - parameter value
k - parameter number

setParameterSE

public void setParameterSE(double value,
                           int k)
Description copied from interface: Parameterized
set standard errors for model parameter

Specified by:
setParameterSE in interface Parameterized
Parameters:
value - standard error of parameter value
k - parameter number

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

report

public void report(java.io.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

toSingleLine

public java.lang.String toSingleLine()
Specified by:
toSingleLine in class MutationRateModel

generateFactory

public MutationRateModel.Factory generateFactory()
Specified by:
generateFactory in class MutationRateModel

getFactory

public static final MutationRateModel.Factory getFactory(double muWindow,
                                                         double muBackground,
                                                         double windowCenter,
                                                         double windowWidth,
                                                         int units,
                                                         double maximumMutationRate)
Generate a MutationRateModel.Factory class for a WindowedMutationRate