InstituteforDiseaseModeling/covasim

No impact from changing the “nab_eff” parameter

EMDominic opened this issue · 1 comments

Describe the bug

The docstring for the probability-based vaccination function states that if ‘vaccine’ is supplied as a dictionary, it must have the following parameters: nab_eff, nab_init, nab_boost, doses, interval and entries for efficacy against each of the strains. In implementing a custom vaccine, we included the parameter ‘nab_eff’. However, we found that changing the ‘nab_eff’ parameter values made no difference to the simulation results.

To reproduce

Steps to reproduce the behavior:

  1. Define a custom vaccine. 2. Configure the simulation 3. Run the simulation
import covasim as cv

custom_vaccine1 = dict(nab_eff=dict(alpha_inf=1.08,
                                                                 alpha_inf_diff=1.812,
                                                                 beta_inf=0.967,
                                                                 alpha_symp_inf=-0.739, beta_symp_inf=0.038,
                                                                 alpha_sev_symp=-0.014, beta_sev_symp=0.079),
                                         nab_init=dict(dist='normal', par1=-1, par2=2),
                                         nab_boost=4,
                                         doses=2,
                                         interval=21)

custom_vaccine2 = dict(nab_eff=dict(alpha_inf=2,
                                                                 alpha_inf_diff=2,
                                                                 beta_inf=2,
                                                                 alpha_symp_inf=-1, beta_symp_inf=1,
                                                                 alpha_sev_symp=-0.1, beta_sev_symp=1),
                                         nab_init=dict(dist='normal', par1=-1, par2=2),
                                         nab_boost=4,
                                         doses=2,
                                         interval=21)

# Define probability based vaccination
vaccinate1 = cv.vaccinate_prob(vaccine=custom_vaccine1, days=[range(20,100)], prob=0.8)
vaccinate2= cv.vaccinate_prob(vaccine=custom_vaccine2, days=[range(20,100)], prob=0.8)

pars = dict(
    pop_size = 50e3,
    pop_infected = 100,
    start_day = '2020-04-01',
    end_day = '2021-04-01')

sim1 = cv.Sim(pars=pars, interventions=vaccinate1)
sim2 = cv.Sim(pars=pars, interventions=vaccinate2)
msim = cv.MultiSim([sim1, sim2])
msim.run()

Platform:

  • Covasim version: 3.1.2 (2022-01-16)

Thanks @EMDominic and sorry for the extremely slow reply! We'll take a look at this in the 3.1.5 release of Covasim.