Package pal.coalescent
Class ConstExpConst
- java.lang.Object
-
- pal.coalescent.DemographicModel
-
- pal.coalescent.ConstantPopulation
-
- pal.coalescent.ExponentialGrowth
-
- pal.coalescent.ConstExpGrowth
-
- pal.coalescent.ConstExpConst
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Cloneable
,Parameterized
,Report
,Summarizable
,Units
public class ConstExpConst extends ConstExpGrowth implements Report, Parameterized, java.io.Serializable
This class models a population that grows exponentially from an initial population size alpha N0 at time y to a size N0 at time x until the present-day. (Parameters: N0=present-day population size; r=growth rate; alpha: ratio of population sizes). or (Parameters: N0=present-day population size; r=growth rate; N1: pre-growth ancestral population size). This model is nested with the exponential-growth model (alpha -> 0 and tx -> 0).- Version:
- $Id: ConstExpConst.java,v 1.2 2002/02/16 00:51:43 alexi Exp $
- Author:
- Alexei Drummond, Andrew Rambaut
- 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
Fields Modifier and Type Field Description double
tx
time of end of exponential growthdouble
txSE
standard error of time of growth-
Fields inherited from class pal.coalescent.ConstExpGrowth
alpha, ALPHA_PARAMETERIZATION, alphaSE, LX_PARAMETERIZATION, N1, N1_PARAMETERIZATION, N1SE, parameterization
-
Fields inherited from class pal.coalescent.ExponentialGrowth
r, rSE
-
Fields 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
Constructors Constructor Description ConstExpConst(double size, double growth, double ancestral, double timeX, int units, int parameterization)
Construct demographic model of constexpconst population.ConstExpConst(int units, int parameterization)
Construct demographic model with default settings.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Object
clone()
Makes a copy of this demographic model.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
getGrowthPhaseDuration()
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
getNumParameters()
get number of parametersdouble
getParameter(int k)
get model parameterdouble
getTimeX()
double
getTransitionTime()
Gets the time of transition from initial constant phase to exponential phase.double
getUpperLimit(int k)
get upper parameter limitstatic void
main(java.lang.String[] args)
void
report(java.io.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 parametervoid
setTimeX(double timeX)
java.lang.String
toString()
-
Methods inherited from class pal.coalescent.ConstExpGrowth
calculateRFromLx, getAncestral, getAncestralN0, getGrowthParam, getGrowthRate, getParameterization, isLxParameterized, isN1Parameterized, setAncestral, setGrowthParam, setGrowthPhaseDuration, setParameterization
-
Methods inherited from class pal.coalescent.ExponentialGrowth
getSummaryTypes, getSummaryValue
-
Methods inherited from class pal.coalescent.ConstantPopulation
getN0
-
Methods inherited from class pal.coalescent.DemographicModel
computeLogLikelihood, computeLogLikelihood, getIntegral, getLogL, getSimulatedInterval, getUnits, setLogL, setUnits, testConsistency
-
-
-
-
Constructor Detail
-
ConstExpConst
public ConstExpConst(int units, int parameterization)
Construct demographic model with default settings.
-
ConstExpConst
public ConstExpConst(double size, double growth, double ancestral, double timeX, int units, int parameterization)
Construct demographic model of constexpconst population.
-
-
Method Detail
-
clone
public java.lang.Object clone()
Makes a copy of this demographic model.- Overrides:
clone
in classConstExpGrowth
-
getTransitionTime
public double getTransitionTime()
Gets the time of transition from initial constant phase to exponential phase.- Overrides:
getTransitionTime
in classConstExpGrowth
-
getGrowthPhaseDuration
public double getGrowthPhaseDuration()
- Overrides:
getGrowthPhaseDuration
in classConstExpGrowth
- Returns:
- the duration of the growth phase
-
getTimeX
public double getTimeX()
- Returns:
- the time at which the modern constant pop size gives way to exponential phase.
-
setTimeX
public void setTimeX(double timeX)
-
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 classConstExpGrowth
- Returns:
- the population size at time t.
-
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 classConstExpGrowth
- Returns:
- the integral of 1 / N(t) from 0 to t.
-
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 classConstExpGrowth
- Returns:
- the time for the given intensity.
-
getNumParameters
public int getNumParameters()
Description copied from interface:Parameterized
get number of parameters- Specified by:
getNumParameters
in interfaceParameterized
- Overrides:
getNumParameters
in classConstExpGrowth
- 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 classConstExpGrowth
- 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 classConstExpGrowth
- 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 classConstExpGrowth
- 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 classConstExpGrowth
- 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 classConstExpGrowth
- 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 classConstExpGrowth
- Parameters:
value
- standard error of parameter valuek
- parameter number
-
toString
public java.lang.String toString()
- Overrides:
toString
in classConstExpGrowth
-
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 interfaceReport
- Overrides:
report
in classConstExpGrowth
- Parameters:
out
- output stream
-
main
public static void main(java.lang.String[] args)
-
-