Class LogisticGrowth

All Implemented Interfaces:
DemographicFunction
Direct Known Subclasses:
ConstLogistic, ExponentialLogistic

public class LogisticGrowth extends ExponentialGrowth
This class models logistic growth.
Version:
$Id: LogisticGrowth.java 390 2006-07-20 14:33:51Z rambaut $
Author:
Alexei Drummond, Andrew Rambaut
  • Constructor Details

    • LogisticGrowth

      public LogisticGrowth()
      Construct demographic model with default settings
    • LogisticGrowth

      public LogisticGrowth(double N0, double r, double c)
      Construct demographic model with given settings
  • Method Details

    • setShape

      public void setShape(double value)
    • getShape

      public double getShape()
    • setTime50

      public void setTime50(double time50)
      An alternative parameterization of this model. This function sets the time at which there is a 0.5 proportion of N0.
    • getDemographic

      public double getDemographic(double t)
      Gets the value of the demographic function N(t) at time t.
      Specified by:
      getDemographic in interface DemographicFunction
      Overrides:
      getDemographic in class ExponentialGrowth
      Parameters:
      t - the time
      Returns:
      the value of the demographic function N(t) at time t.
    • getIntensity

      public double getIntensity(double t)
      Returns value of demographic intensity function at time t (= integral 1/N(x) dx from 0 to t).
      Specified by:
      getIntensity in interface DemographicFunction
      Overrides:
      getIntensity in class ExponentialGrowth
    • getInverseIntensity

      public double getInverseIntensity(double x)
      Returns value of demographic intensity function at time t (= integral 1/N(x) dx from 0 to t).
      Specified by:
      getInverseIntensity in interface DemographicFunction
      Overrides:
      getInverseIntensity in class ExponentialGrowth
    • hasIntegral

      public boolean hasIntegral()
      Description copied from interface: DemographicFunction
      returns whether an analytical expression for the integral is implemented
      Specified by:
      hasIntegral in interface DemographicFunction
      Overrides:
      hasIntegral in class ConstantPopulation
      Returns:
      a boolean
    • getIntegral

      public double getIntegral(double start, double finish)
      Description copied from class: ConstantPopulation
      Calculates the integral 1/N(x) dx between start and finish. The inherited function in DemographicFunction.Abstract calls a numerical integrater which is unecessary.
      Specified by:
      getIntegral in interface DemographicFunction
      Overrides:
      getIntegral in class ConstantPopulation