Package pal.coalescent
Class ExponentialGrowth
java.lang.Object
pal.coalescent.DemographicModel
pal.coalescent.ConstantPopulation
pal.coalescent.ExponentialGrowth
- All Implemented Interfaces:
Serializable
,Cloneable
,Parameterized
,Report
,Summarizable
,Units
- Direct Known Subclasses:
ConstExpGrowth
,ExpandingPopulation
public class ExponentialGrowth
extends ConstantPopulation
implements Report, Parameterized, Serializable, Summarizable
This class models an exponentially growing (or shrinking) population
(Parameters: N0=present-day population size; r=growth rate).
This model is nested with the constant-population size model (r=0).
Parts of this class were inspired by C++ code
generously provided by Oliver Pybus.
- Version:
- $Id: ExponentialGrowth.java,v 1.10 2001/07/12 12:17:43 korbinian Exp $
- Author:
- Alexei Drummond, Korbinian Strimmer
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from interface pal.misc.Parameterized
Parameterized.Null, Parameterized.ParameterizedBase, Parameterized.ParameterizedUser, Parameterized.Utils
-
Field Summary
FieldsModifier and TypeFieldDescriptiondouble
growth rate rdouble
standard error of growth rate rFields inherited from class pal.coalescent.ConstantPopulation
N0, N0SE
Fields inherited from class pal.coalescent.DemographicModel
fo
Fields inherited from interface pal.misc.Units
DAYS, EXPECTED_SUBSTITUTIONS, GENERATIONS, MONTHS, SAMPLE, SHORT_UNIT_NAMES, UNIT_NAMES, UNKNOWN, YEARS
-
Constructor Summary
ConstructorsConstructorDescriptionExponentialGrowth
(double size, double growth, int units) Construct demographic model of an exponentially growing populationExponentialGrowth
(int units) Construct demographic model with default settings -
Method Summary
Modifier and TypeMethodDescriptionclone()
double
getDefaultValue
(int k) get default value of parameterdouble
getDemographic
(double t) Gets the value of the demographic function N(t) at time t.double
returns growth rate.double
getIntensity
(double t) Returns value of demographic intensity function at time t (= integral 1/N(x) dx from 0 to t).double
getInverseIntensity
(double x) Returns value of inverse demographic intensity function (returns time, needed for simulation of coalescent intervals).double
getLowerLimit
(int k) get lower parameter limitint
get number of parametersdouble
getParameter
(int k) get model parameterString[]
double
getSummaryValue
(int summaryType) double
getUpperLimit
(int k) get upper parameter limitvoid
report
(PrintWriter out) print human readable report (e.g., on parameters and associated model)void
setParameter
(double value, int k) set model parametervoid
setParameterSE
(double value, int k) set standard errors for model parametertoString()
Methods inherited from class pal.coalescent.ConstantPopulation
getN0
Methods inherited from class pal.coalescent.DemographicModel
computeLogLikelihood, computeLogLikelihood, getIntegral, getLogL, getSimulatedInterval, getUnits, setLogL, setUnits, testConsistency
-
Field Details
-
r
public double rgrowth rate r -
rSE
public double rSEstandard error of growth rate r
-
-
Constructor Details
-
ExponentialGrowth
public ExponentialGrowth(int units) Construct demographic model with default settings -
ExponentialGrowth
public ExponentialGrowth(double size, double growth, int units) Construct demographic model of an exponentially growing population
-
-
Method Details
-
getSummaryTypes
- Specified by:
getSummaryTypes
in interfaceSummarizable
- Overrides:
getSummaryTypes
in classConstantPopulation
-
getSummaryValue
public double getSummaryValue(int summaryType) - Specified by:
getSummaryValue
in interfaceSummarizable
- Overrides:
getSummaryValue
in classConstantPopulation
-
clone
- Overrides:
clone
in classConstantPopulation
-
getGrowthRate
public double getGrowthRate()returns growth rate. -
getDemographic
public double getDemographic(double t) Description copied from class:DemographicModel
Gets the value of the demographic function N(t) at time t.- Overrides:
getDemographic
in classConstantPopulation
-
getIntensity
public double getIntensity(double t) Description copied from class:DemographicModel
Returns value of demographic intensity function at time t (= integral 1/N(x) dx from 0 to t).- Overrides:
getIntensity
in classConstantPopulation
-
getInverseIntensity
public double getInverseIntensity(double x) Description copied from class:DemographicModel
Returns value of inverse demographic intensity function (returns time, needed for simulation of coalescent intervals).- Overrides:
getInverseIntensity
in classConstantPopulation
-
getNumParameters
public int getNumParameters()Description copied from interface:Parameterized
get number of parameters- Specified by:
getNumParameters
in interfaceParameterized
- Overrides:
getNumParameters
in classConstantPopulation
- Returns:
- number of parameters
-
getParameter
public double getParameter(int k) Description copied from interface:Parameterized
get model parameter- Specified by:
getParameter
in interfaceParameterized
- Overrides:
getParameter
in classConstantPopulation
- 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
- Overrides:
getUpperLimit
in classConstantPopulation
- 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
- Overrides:
getLowerLimit
in classConstantPopulation
- 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
- Overrides:
getDefaultValue
in classConstantPopulation
- 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
- Overrides:
setParameter
in classConstantPopulation
- 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
- Overrides:
setParameterSE
in classConstantPopulation
- Parameters:
value
- standard error of parameter valuek
- parameter number
-
toString
- Overrides:
toString
in classConstantPopulation
-
report
Description copied from interface:Report
print human readable report (e.g., on parameters and associated model)- Specified by:
report
in interfaceReport
- Overrides:
report
in classConstantPopulation
- Parameters:
out
- output stream
-