-
Peter Jentsch authoredPeter Jentsch authored
abm_fit_parameters.jl 1.64 KiB
using CovidAlertVaccinationModel
using OnlineStats
using Plots
using StatsBase
const parameters = (
sim_length = 600,
num_households = 5000,
I_0_fraction = 0.005,
base_transmission_probability = 0.001,
recovery_rate = 1/7,
immunization_loss_prob = 0.0055, #mean time of 6 months
π_base = -4.0,
η = 0.0,
κ = 1.0,
ω = 0.001,
ρ = [0.0,0.0,0.0],
ω_en = 0.00,
ρ_en = [0.0,0.0,0.0],
γ = 0.0,
β = 5.0,
notification_parameter = 0.001,
vaccinator_prob = 0.2,
app_user_fraction = 0.4,
notification_threshold = 2,
immunizing = true,
immunization_delay = 14,
immunization_begin_day = 50,
infection_introduction_day = 100
)
# seasonal_transmission_dist = CovidAlertVaccinationModel.fit_epi_parameters(parameters,0.073) ##seasonal
# outbreak_transmission_dist = CovidAlertVaccinationModel.fit_epi_parameters(parameters,0.241) ##outbreak
function plot_max_posterior(fname,particles)
samples = 5
base_transmission = mode(particles.P.particles)
p_tuple_without_vac = merge(parameters,
(
sim_length = 150,
immunization_begin_day = 0,
infection_introduction_day = 1,
immunizing = false,
)
)
new_params = merge(p_tuple_without_vac, (base_transmission_probability = base_transmission,))
out = mean_solve(samples, new_params ,DebugRecorder)
p = plot_model(nothing,[nothing],[out],new_params.infection_introduction_day,new_params.immunization_begin_day)
savefig(p,"$fname.pdf")
end
plot_max_posterior("seasonal", seasonal_transmission_dist)
plot_max_posterior("outbreak", outbreak_transmission_dist)