From 37c5a8271a1ed8e8d9fd42ed4d1410435beb6c37 Mon Sep 17 00:00:00 2001 From: Sebastian Funk Date: Fri, 14 Jul 2023 14:52:06 +0100 Subject: [PATCH] Revert "initialise vectors to zero" This reverts commit dcbd3ae389e47ac8087fec21cfea26b015af3e07. --- inst/stan/functions/infections.stan | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/inst/stan/functions/infections.stan b/inst/stan/functions/infections.stan index c02d9e22e..7e5330081 100644 --- a/inst/stan/functions/infections.stan +++ b/inst/stan/functions/infections.stan @@ -27,9 +27,9 @@ vector generate_infections(vector oR, int uot, vector gt_rev_pmf, int t = ot + uot; vector[ot] R = oR; real exp_adj_Rt; - vector[t] infections = rep_vector(0, t); - vector[ot] cum_infections; - vector[ot] infectiousness; + vector[t] infections = rep_vector(1e-5, t); + vector[ot] cum_infections = rep_vector(0, ot); + vector[ot] infectiousness = rep_vector(1e-5, ot); // Initialise infections using daily growth infections[1] = exp(initial_infections[1]); if (uot > 1) { @@ -44,13 +44,13 @@ vector generate_infections(vector oR, int uot, vector gt_rev_pmf, } // iteratively update infections for (s in 1:ot) { - infectiousness[s] = update_infectiousness(infections, gt_rev_pmf, uot, s); + infectiousness[s] += update_infectiousness(infections, gt_rev_pmf, uot, s); if (pop && s > nht) { exp_adj_Rt = exp(-R[s] * infectiousness[s] / (pop - cum_infections[nht])); exp_adj_Rt = exp_adj_Rt > 1 ? 1 : exp_adj_Rt; infections[s + uot] = (pop - cum_infections[s]) * (1 - exp_adj_Rt); }else{ - infections[s + uot] = R[s] * infectiousness[s]; + infections[s + uot] += R[s] * infectiousness[s]; } if (pop && s < ot) { cum_infections[s + 1] = cum_infections[s] + infections[s + uot];