Beispiel #1
0
# simulation parameters/initial conditions
# [beta, betap, betapp, beta_1, beta_1p, beta_1pp, \
# beta_2, beta_2p, beta_2pp, nu_1, nu_2, eta_1, eta_2, \
# gamma, gammap, gammapp, sigma, sigma_1, sigma_2, IFR, IFR1, IFR2]
params = [0.15, 0.01, 0.001, 0.005, 0.001, 0.0001, 0.01, 0.001, 0.0001, \
0.01/2, 0.01/2, 0.001, 0.001, 0.05, 0.1, 0.15, 0.01, 0.01, 0.01, \
1e-2, 1e-3, 1e-4, 21]

# [S0, S0p, S0pp, E0, E0p, E0pp, I0, I0p, I0pp, R0, D0]
I0 = 1e-2
initial_conditions = [1 - I0, 0, 0, 0, 0, 0, I0, 0, 0, 0, 0]

model = epidemic_model(params,
                       initial_conditions,
                       time_step=1e-1,
                       Euler=False,
                       duration=200)
model.simulate()

fig, ax = plt.subplots()

#plt.plot(model.t_arr, model.S_arr, label = r"$S(t)$")
#plt.plot(model.t_arr, model.Sp_arr, label = r"$S^{\star}(t)$")
#plt.plot(model.t_arr, model.Spp_arr, label = r"$S^{\star \star}(t)$")
#plt.plot(model.t_arr, model.E_arr, label = r"$E(t)$")
#plt.plot(model.t_arr, model.Ep_arr, label = r"$E^{\star}(t)$")
#plt.plot(model.t_arr, model.Epp_arr, label = r"$E^{\star \star}(t)$")
#plt.plot(model.t_arr, model.I_arr, label = r"$I(t)$")
#plt.plot(model.t_arr, model.Ip_arr, label = r"$I^{\star}(t)$")
#plt.plot(model.t_arr, model.Ipp_arr, label = r"$I^{\star \star}(t)$")
    # beta_2, beta_2p, beta_2pp, nu_1, nu_2, eta_1, eta_2, \
    # gamma, gammap, gammapp, sigma, sigma_1, sigma_2, IFR, IFR1, IFR2, td]
    params1 = [beta, beta/10, beta/20, beta/2, beta/10/2, beta/20/2, \
    beta/10, beta/10/10, beta/20/10, nu, 0, \
    eta_diff+eta2, eta2, 1/14, 2/14, 4/14, 1/5, 1/5, 1/5, 1e-2, 1e-3, 1e-3, 21]

    params2 = [beta, beta/10, beta/20, beta/2, beta/10/2, beta/20/2, \
    beta/10, beta/10/10, beta/20/10, nu/2, nu/2, \
    eta_diff+eta2, eta2, 1/14, 2/14, 4/14, 1/5, 1/5, 1/5, 1e-2, 1e-3, 1e-3, 21]

    # [S0, S0p, S0pp, E0, E0p, E0pp, I0, I0p, I0pp, R0, D0]
    initial_conditions = [1 - I0, 0, 0, 0, 0, 0, I0, 0, 0, 0, 0]

    model1 = epidemic_model(params1,
                            initial_conditions,
                            time_step=1e-1,
                            duration=300,
                            Euler=False)
    model1.simulate()

    model2 = epidemic_model(params2,
                            initial_conditions,
                            time_step=1e-1,
                            duration=300,
                            Euler=False)
    model2.simulate()

    if model1.reproduction_number >= 1e2 and eta_diff >= 1e2:

        print(model2.delta_d, model1.delta_d)
        print(model2.D_tot, model1.D_tot)