Skip to content

laser.measles.biweekly.components.process_sia_calendar

laser.measles.biweekly.components.process_sia_calendar

laser.measles.biweekly.components.process_sia_calendar.SIACalendarParams

Bases: BaseModel

Parameters specific to the SIA calendar component.

laser.measles.biweekly.components.process_sia_calendar.SIACalendarProcess(model, verbose=False, params=None)

Bases: BasePhase

Phase for implementing Supplementary Immunization Activities (SIAs) based on a calendar schedule.

This component: 1. Groups nodes by geographic level using the same aggregation schema as CaseSurveillanceTracker 2. Implements SIAs at scheduled times by moving susceptibles to recovered state 3. Uses the model's current_date to determine when to implement SIAs 4. Applies vaccination with configurable efficacy rate

Parameters

model : object The simulation model containing nodes, states, and parameters verbose : bool, default=False Whether to print verbose output during simulation params : Optional[SIACalendarParams], default=None Component-specific parameters. If None, will use default parameters

Notes
  • SIA efficacy determines the fraction of susceptibles that get vaccinated
  • Vaccination is simulated using a binomial distribution
  • SIAs are implemented when the model's current_date has passed the scheduled date
  • Since the model steps in 14-day increments, SIAs are implemented on the first step after their scheduled date
  • Each SIA is implemented exactly once

laser.measles.biweekly.components.process_sia_calendar.SIACalendarProcess.get_sia_schedule()

Get the SIA schedule.

Returns

pl.DataFrame DataFrame with columns: - {group_column}: Group identifier - {date_column}: Scheduled date for SIA