Interface DemographicFunction

All Known Implementing Classes:
CataclysmicDemographic, ConstantPopulation, ConstExponential, ConstLogistic, EmpiricalDemographicFunction, Expansion, ExponentialGrowth, ExponentialLogistic, LogisticGrowth

public interface DemographicFunction
This interface provides methods that describe a demographic function. Parts of this class were derived from C++ code provided by Oliver Pybus.
Version:
$Id: DemographicFunction.java 849 2007-12-06 00:10:14Z twobeers $
Author:
Andrew Rambaut, Alexei Drummond, Korbinian Strimmer
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Interface
    Description
    static class 
     
  • Method Summary

    Modifier and Type
    Method
    Description
    double
    getArgument(int n)
    Returns the value of the nth argument of this function.
    int
    Returns the number of arguments for this function.
    Returns the name of the nth argument of this function.
    double
    getDemographic(double t)
    Gets the value of the demographic function N(t) at time t.
    double
    getIntegral(double start, double finish)
    Calculates the integral 1/N(x) dx between start and finish
    double
    getIntensity(double t)
    Returns value of demographic intensity function at time t (= integral 1/N(x) dx from 0 to t).
    double
    Returns value of inverse demographic intensity function (returns time, needed for simulation of coalescent intervals).
    double
    Returns the lower bound of the nth argument of this function.
    double
    Returns the upper bound of the nth argument of this function.
    boolean
    returns whether an analytical expression for the integral is implemented
    void
    setArgument(int n, double value)
    Sets the value of the nth argument of this function.
  • Method Details

    • getDemographic

      double getDemographic(double t)
      Gets the value of the demographic function N(t) at time t.
    • getIntensity

      double getIntensity(double t)
      Returns value of demographic intensity function at time t (= integral 1/N(x) dx from 0 to t).
    • getInverseIntensity

      double getInverseIntensity(double x)
      Returns value of inverse demographic intensity function (returns time, needed for simulation of coalescent intervals).
    • hasIntegral

      boolean hasIntegral()
      returns whether an analytical expression for the integral is implemented
      Returns:
      a boolean
    • getIntegral

      double getIntegral(double start, double finish)
      Calculates the integral 1/N(x) dx between start and finish
    • getArgumentCount

      int getArgumentCount()
      Returns the number of arguments for this function.
    • getArgumentName

      String getArgumentName(int n)
      Returns the name of the nth argument of this function.
    • getArgument

      double getArgument(int n)
      Returns the value of the nth argument of this function.
    • setArgument

      void setArgument(int n, double value)
      Sets the value of the nth argument of this function.
    • getLowerBound

      double getLowerBound(int n)
      Returns the lower bound of the nth argument of this function.
    • getUpperBound

      double getUpperBound(int n)
      Returns the upper bound of the nth argument of this function.