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 settingsprotectedConstantMutationRate(ConstantMutationRate toCopy)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Objectclone()static ConstantMutationRatecreateFixed(double rate, int units)MutationRateModel.FactorygenerateFactory()MutationRateModelgetCopy()doublegetDefaultValue(int k)get default value of parameterdoublegetEndTime(double expectedSubs, double startTime)Return the end time at which expected substitutions has occurred, given we start at start timedoublegetExpectedSubstitutions(double t)Returns integral of mutation rate function (= integral mu(x) dx from 0 to t).static MutationRateModel.FactorygetFixedFactory(double rate, int units)Generate a MutationRateModel.Factory class for a ConstantMutationRatestatic MutationRateModel.FactorygetFreeFactory(double initialRate, int units, double maximumMutationRate)Generate a MutationRateModel.Factory class for a ConstantMutationRatestatic MutationRateModel.FactorygetFreeFactory(double initialRate, int units, double minimumRate, double maximumRate)Generate a MutationRateModel.Factory class for a ConstantMutationRatestatic MutationRateModel.FactorygetFreeFactory(int units, double maximumMutationRate)Generate a MutationRateModel.Factory class for a ConstantMutationRatedoublegetLowerLimit(int k)get lower parameter limitdoublegetMu()returns initial population size.doublegetMutationRate(double t)Gets the mutation rate, value of mu(t) at time t.intgetNumParameters()get number of parametersdoublegetParameter(int k)get model parameterjava.lang.String[]getSummaryTypes()doublegetSummaryValue(int summaryType)doublegetUpperLimit(int k)get upper parameter limitvoidreport(java.io.PrintWriter out)print human readable report (e.g., on parameters and associated model)voidscale(double scale)Linearly scales this mutation rate model.voidsetMu(double m)voidsetParameter(double value, int k)set model parametervoidsetParameterSE(double value, int k)set standard errors for model parameterjava.lang.StringtoSingleLine()java.lang.StringtoString()-
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:
clonein classMutationRateModel
-
getCopy
public MutationRateModel getCopy()
- Specified by:
getCopyin classMutationRateModel
-
getSummaryTypes
public java.lang.String[] getSummaryTypes()
- Specified by:
getSummaryTypesin interfaceSummarizable
-
getSummaryValue
public double getSummaryValue(int summaryType)
- Specified by:
getSummaryValuein 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:MutationRateModelGets the mutation rate, value of mu(t) at time t.- Specified by:
getMutationRatein classMutationRateModel
-
getExpectedSubstitutions
public final double getExpectedSubstitutions(double t)
Description copied from class:MutationRateModelReturns integral of mutation rate function (= integral mu(x) dx from 0 to t).- Specified by:
getExpectedSubstitutionsin classMutationRateModel
-
getEndTime
public final double getEndTime(double expectedSubs, double startTime)Description copied from class:MutationRateModelReturn the end time at which expected substitutions has occurred, given we start at start time- Specified by:
getEndTimein classMutationRateModel
-
scale
public final void scale(double scale)
Linearly scales this mutation rate model.- Specified by:
scalein classMutationRateModel- Parameters:
scale- getExpectedSubstitutions should return scale instead of 1.0 at time t.
-
getNumParameters
public int getNumParameters()
Description copied from interface:Parameterizedget number of parameters- Specified by:
getNumParametersin interfaceParameterized- Returns:
- number of parameters
-
getParameter
public double getParameter(int k)
Description copied from interface:Parameterizedget model parameter- Specified by:
getParameterin interfaceParameterized- Parameters:
k- parameter number- Returns:
- parameter value
-
getUpperLimit
public double getUpperLimit(int k)
Description copied from interface:Parameterizedget upper parameter limit- Specified by:
getUpperLimitin interfaceParameterized- Parameters:
k- parameter number- Returns:
- upper bound
-
getLowerLimit
public double getLowerLimit(int k)
Description copied from interface:Parameterizedget lower parameter limit- Specified by:
getLowerLimitin interfaceParameterized- Parameters:
k- parameter number- Returns:
- lower bound
-
getDefaultValue
public double getDefaultValue(int k)
Description copied from interface:Parameterizedget default value of parameter- Specified by:
getDefaultValuein interfaceParameterized- Parameters:
k- parameter number- Returns:
- default value
-
setParameter
public void setParameter(double value, int k)Description copied from interface:Parameterizedset model parameter- Specified by:
setParameterin interfaceParameterized- Parameters:
value- parameter valuek- parameter number
-
setParameterSE
public void setParameterSE(double value, int k)Description copied from interface:Parameterizedset standard errors for model parameter- Specified by:
setParameterSEin interfaceParameterized- Parameters:
value- standard error of parameter valuek- parameter number
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
report
public void report(java.io.PrintWriter out)
Description copied from interface:Reportprint human readable report (e.g., on parameters and associated model)
-
toSingleLine
public java.lang.String toSingleLine()
- Specified by:
toSingleLinein 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:
generateFactoryin classMutationRateModel
-
createFixed
public static final ConstantMutationRate createFixed(double rate, int units)
- Returns:
- A ConstantMutationRate with a fixed rate (no parameters)
-
-