Class SIRModel

java.lang.Object
org.episteme.natural.medicine.epidemiology.SIRModel
All Implemented Interfaces:
UniversalDataModel

public class SIRModel extends Object implements UniversalDataModel
SIR (Susceptible-Infected-Recovered) epidemic model. *

Reference:
Zeigler, B. P., Praehofer, H., invalid input: '&' Kim, T. G. (2000). Theory of Modeling and Simulation. Academic Press.

Since:
1.0
Author:
Silvere Martin-Michiellot, Gemini AI (Google DeepMind)
  • Constructor Details

  • Method Details

    • getR0

      public Real getR0()
      Basic reproduction number R₀ = β/γ
    • getHerdImmunityThreshold

      public Real getHerdImmunityThreshold()
      Herd immunity threshold (1 - 1/Râ‚€)
    • step

      public void step(Quantity<Time> dt)
      Advance simulation by dt using Euler method
    • simulate

      public Real[][] simulate(Quantity<Time> duration, Quantity<Time> dt)
      Run simulation for duration
    • reset

      public void reset()
    • getPeakTime

      public Quantity<Time> getPeakTime()
      Peak time estimation
    • getFinalSize

      public Real getFinalSize()
      Final epidemic size (fraction infected)
    • getSusceptible

      public Real getSusceptible()
    • getInfected

      public Real getInfected()
    • getRecovered

      public Real getRecovered()
    • getTime

      public Quantity<Time> getTime()
    • getPopulation

      public int getPopulation()
    • getBeta

      public Quantity<Frequency> getBeta()
    • getGamma

      public Quantity<Frequency> getGamma()
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • covid19Like

      public static SIRModel covid19Like(int population, int initialCases)
    • influenzaLike

      public static SIRModel influenzaLike(int population, int initialCases)
    • measlesLike

      public static SIRModel measlesLike(int population, int initialCases)
    • getModelType

      public String getModelType()
      Description copied from interface: UniversalDataModel
      Returns a unique identifier for the type of data model. Examples: "SPATIAL_GEOMETRY", "ECONOMIC_PORTFOLIO", "ARCHITECTURAL_PLAN".
      Specified by:
      getModelType in interface UniversalDataModel
    • getQuantities

      public Map<String, Quantity<?>> getQuantities()
      Description copied from interface: UniversalDataModel
      Returns the primary physical values associated with this model. This allows generic tools to extract and convert measurements.
      Specified by:
      getQuantities in interface UniversalDataModel