Package pal.mep
Class ConstantMutationRate
- java.lang.Object
-
- pal.mep.MutationRateModel
-
- pal.mep.ConstantMutationRate
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Cloneable
,Parameterized
,Report
,Summarizable
,Units
public class ConstantMutationRate extends MutationRateModel implements Report, Summarizable, Parameterized, java.io.Serializable
This class models a constant mutation rate (parameter: mu = mutation rate).- Version:
- $Id: ConstantMutationRate.java,v 1.13 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
Constructors Modifier Constructor Description ConstantMutationRate(double rate, int units, double maximumMutationRate)
Construct mutation rate model of a give rate in given unitsConstantMutationRate(double rate, int units, double minimumMu, double maximumMu)
Construct mutation rate model of a give rate in given units, with a given range of possible valuesConstantMutationRate(int units, double maximumMutationRate)
Construct demographic model with default settingsprotected
ConstantMutationRate(ConstantMutationRate toCopy)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Object
clone()
static ConstantMutationRate
createFixed(double rate, int units)
MutationRateModel.Factory
generateFactory()
MutationRateModel
getCopy()
double
getDefaultValue(int k)
get default value of parameterdouble
getEndTime(double expectedSubs, double startTime)
Return the end time at which expected substitutions has occurred, given we start at start timedouble
getExpectedSubstitutions(double t)
Returns integral of mutation rate function (= integral mu(x) dx from 0 to t).static MutationRateModel.Factory
getFixedFactory(double rate, int units)
Generate a MutationRateModel.Factory class for a ConstantMutationRatestatic MutationRateModel.Factory
getFreeFactory(double initialRate, int units, double maximumMutationRate)
Generate a MutationRateModel.Factory class for a ConstantMutationRatestatic MutationRateModel.Factory
getFreeFactory(double initialRate, int units, double minimumRate, double maximumRate)
Generate a MutationRateModel.Factory class for a ConstantMutationRatestatic MutationRateModel.Factory
getFreeFactory(int units, double maximumMutationRate)
Generate a MutationRateModel.Factory class for a ConstantMutationRatedouble
getLowerLimit(int k)
get lower parameter limitdouble
getMu()
returns initial population size.double
getMutationRate(double t)
Gets the mutation rate, value of mu(t) at time t.int
getNumParameters()
get number of parametersdouble
getParameter(int k)
get model parameterjava.lang.String[]
getSummaryTypes()
double
getSummaryValue(int summaryType)
double
getUpperLimit(int k)
get upper parameter limitvoid
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
setMu(double m)
void
setParameter(double value, int k)
set model parametervoid
setParameterSE(double value, int k)
set standard errors for model parameterjava.lang.String
toSingleLine()
java.lang.String
toString()
-
Methods inherited from class pal.mep.MutationRateModel
getExpectedSubstitutions, getMaximumMutationRate, getOrthogonalHints, getTime, getUnits, scale, setUnits
-
-
-
-
Constructor Detail
-
ConstantMutationRate
public ConstantMutationRate(int units, double maximumMutationRate)
Construct demographic model with default settings- Parameters:
maximumMutationRate
- The maximum Mutation rate should be selected wisely - too small and it might not include the "true" rate, too high and the optimisers may have trouble optimising
-
ConstantMutationRate
public ConstantMutationRate(double rate, int units, double maximumMutationRate)
Construct mutation rate model of a give rate in given units- Parameters:
maximumMutationRate
- The maximum Mutation rate should be selected wisely - too small and it might not include the "true" rate, too high and the optimisers may have trouble optimising
-
ConstantMutationRate
public ConstantMutationRate(double rate, int units, double minimumMu, double maximumMu)
Construct mutation rate model of a give rate in given units, with a given range of possible values
-
ConstantMutationRate
protected ConstantMutationRate(ConstantMutationRate toCopy)
-
-
Method Detail
-
clone
public java.lang.Object clone()
- Specified by:
clone
in classMutationRateModel
-
getCopy
public MutationRateModel getCopy()
- Specified by:
getCopy
in classMutationRateModel
-
getSummaryTypes
public java.lang.String[] getSummaryTypes()
- Specified by:
getSummaryTypes
in interfaceSummarizable
-
getSummaryValue
public double getSummaryValue(int summaryType)
- Specified by:
getSummaryValue
in interfaceSummarizable
-
getMu
public double getMu()
returns initial population size.
-
setMu
public void setMu(double m)
-
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 classMutationRateModel
-
getExpectedSubstitutions
public final double getExpectedSubstitutions(double t)
Description copied from class:MutationRateModel
Returns integral of mutation rate function (= integral mu(x) dx from 0 to t).- Specified by:
getExpectedSubstitutions
in classMutationRateModel
-
getEndTime
public final double getEndTime(double expectedSubs, double startTime)
Description copied from class:MutationRateModel
Return the end time at which expected substitutions has occurred, given we start at start time- Specified by:
getEndTime
in classMutationRateModel
-
scale
public final void scale(double scale)
Linearly scales this mutation rate model.- Specified by:
scale
in classMutationRateModel
- 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 interfaceParameterized
- Returns:
- number of parameters
-
getParameter
public double getParameter(int k)
Description copied from interface:Parameterized
get model parameter- Specified by:
getParameter
in interfaceParameterized
- 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 interfaceParameterized
- 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 interfaceParameterized
- 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 interfaceParameterized
- 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 interfaceParameterized
- Parameters:
value
- parameter valuek
- 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 interfaceParameterized
- Parameters:
value
- standard error of parameter valuek
- parameter number
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.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)
-
toSingleLine
public java.lang.String toSingleLine()
- Specified by:
toSingleLine
in classMutationRateModel
-
getFixedFactory
public static final MutationRateModel.Factory getFixedFactory(double rate, int units)
Generate a MutationRateModel.Factory class for a ConstantMutationRate
-
getFreeFactory
public static final MutationRateModel.Factory getFreeFactory(int units, double maximumMutationRate)
Generate a MutationRateModel.Factory class for a ConstantMutationRate
-
getFreeFactory
public static final MutationRateModel.Factory getFreeFactory(double initialRate, int units, double maximumMutationRate)
Generate a MutationRateModel.Factory class for a ConstantMutationRate
-
getFreeFactory
public static final MutationRateModel.Factory getFreeFactory(double initialRate, int units, double minimumRate, double maximumRate)
Generate a MutationRateModel.Factory class for a ConstantMutationRate
-
generateFactory
public MutationRateModel.Factory generateFactory()
- Specified by:
generateFactory
in classMutationRateModel
-
createFixed
public static final ConstantMutationRate createFixed(double rate, int units)
- Returns:
- A ConstantMutationRate with a fixed rate (no parameters)
-
-