CovidSIRDMixture

class aftercovid.models.CovidSIRDMixture[source]

The model extends model @see cl CovidSIRD and assumes there are two variants of the same virus. The term beta1 * beta2 * S * I1 / N * I2 / N means that for all people being in contact with both virus, the second one wins as it is more contagious.

<<<

from aftercovid.models import CovidSIRDMixture

model = CovidSIRDMixture()
print(model.to_rst())

>>>

CovidSIRDMixture

Quantities

  • S: personnes non contaminées

  • I1: nombre de personnes malades ou contaminantes pour le premier variant

  • I2: nombre de personnes malades ou contaminantes pour le second variant

  • R: personnes guéries (recovered)

  • D: personnes décédées

Constants

  • N: population

Parameters

  • beta1: taux de transmission dans la population

  • beta2: second taux de transmission dans la population

  • mu: 1/. : durée moyenne jusque la guérison

  • nu: 1/. : durée moyenne jusqu’au décès

Equations

\[\begin{split}\begin{array}{l} \frac{dD}{dt} = \nu \left(I_{1} + I_{2}\right) \\ \frac{dI1}{dt} = - \frac{I_{1} I_{2} S \beta_{1} \beta_{2}}{N^{2}} - I_{1} \mu - I_{1} \nu + \frac{I_{1} S \beta_{1}}{N} \\ \frac{dI2}{dt} = - I_{2} \mu - I_{2} \nu + \frac{I_{2} S \beta_{2}}{N} \\ \frac{dR}{dt} = \mu \left(I_{1} + I_{2}\right) \\ \frac{dS}{dt} = \frac{I_{1} I_{2} S \beta_{1} \beta_{2}}{N^{2}} - \frac{I_{1} S \beta_{1}}{N} - \frac{I_{2} S \beta_{2}}{N} \end{array}\end{split}\]

Mixture of SIRD simulation and plotting

(Source code, png, hires.png, pdf)

_images/model_covidsir_mixture-1.png

Visual representation:

See Base implementation for SIR models to get the methods common to SIRx models.

R0(t=0)[source]

Returns R0 coefficient.

Parameters:

t – unused

static add_noise(X, epsilon=1.0)[source]

Tries to add reasonable noise to the quantities stored in X.

Parameters:

epsilon – amplitude

Returns:

new X

correctness(X=None)[source]

Unused.

rnd()[source]

Draws random parameters. Not perfect.