laser.measles.compartmental.components.process_sia_calendar
process_sia_calendar
Component for implementing Supplementary Immunization Activities (SIAs) based on a calendar schedule.
SIACalendarParams
Bases: BaseModel
Parameters specific to the SIA calendar component.
Examples:
1 2 3 | |
SIACalendarProcess(model, 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:
| Name | Type | Description | Default |
|---|---|---|---|
model
|
object
|
The simulation model containing nodes, states, and parameters |
required |
params
|
Optional[SIACalendarParams], default=None
|
Component-specific parameters. If None, will use default parameters |
None
|
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
Examples:
1 2 3 4 5 6 7 8 9 | |
get_sia_schedule()
Get the SIA schedule.
Returns:
| Type | Description |
|---|---|
DataFrame
|
pl.DataFrame: DataFrame with columns: - {group_column}: Group identifier - {date_column}: Scheduled date for SIA |
initialize(model)
No-op; SIA calendar state is set up during construction.