22 vector gt_rev_pmf,
int smooth) {
23 int t = num_elements(infections);
24 int ot = t - seeding_time;
27 vector[ot] infectiousness = rep_vector(1e-5, ot);
31 infections, gt_rev_pmf, seeding_time, s
33 R[s] = infections[s + seeding_time] / infectiousness[s];
39 for (i in max(1, s - smooth):min(ot, s + smooth)) {
43 sR[s] = sR[s] / window;
118 int t = num_elements(infections);
119 int ot = t - seeding_time;
120 int start = 1 + seeding_time;
122 reject(
"seeding_time must >1 time step shorter than infections vector.");
125 vector[ot] infness_log = rep_vector(1e-5, ot);
128 infections, gt_rev_pmf, seeding_time, s
132 int gt_length = num_elements(gt_rev_pmf);
134 dot_product(reverse(linspaced_vector(gt_length, 1, gt_length)), gt_rev_pmf)
137 vector[ot - 1] growth = infness_log[2:ot] - infness_log[1:(ot - 1)];
139 growth[1:(ot - 1 - mean_gen)] = growth[(1 + mean_gen):(ot - 1)];
140 growth[(ot - mean_gen):(ot - 1)] = rep_vector(not_a_number(), mean_gen);