laser.measles.abm.model
laser.measles.abm.model
A class to represent the agent-based model.
laser.measles.abm.model.ABMModel(scenario, params, name='abm')
Bases: BaseLaserModel
Agent-based model for measles transmission with daily timesteps (SEIR).
Both scenario and params are required positional arguments.
There is no default constructor — omitting params raises TypeError.
Args:
1 2 3 4 5 6 | |
Notes:
1 2 3 4 5 6 7 8 9 10 | |
Initialize the disease model with the given scenario and parameters.
Args:
1 2 3 | |
Returns:
1 | |
laser.measles.abm.model.ABMModel.from_snapshot(path, params, components=None, verbose=True)
classmethod
Restore an ABMModel from an HDF5 snapshot file.
Convenience wrapper around
load_snapshot. Use
this to resume a simulation from a checkpoint saved with
save_snapshot.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
path
|
Path to the HDF5 file written by
|
required | |
params
|
ABMParams
|
|
required |
components
|
list | None
|
Ordered list of component classes — same as the original model. |
None
|
verbose
|
bool
|
Print a loading summary. |
True
|
Returns:
| Type | Description |
|---|---|
ABMModel
|
A configured |
Example:
1 2 3 4 5 6 7 8 9 10 11 | |
laser.measles.abm.model.ABMModel.infect(indices, num_infected)
Infect agents by moving them from Susceptible to Exposed state.
This method finds the transmission component and delegates to its infect method, which handles both individual agent state updates and patch counter updates.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
indices
|
int | ndarray
|
The indices of the agents to infect. |
required |
num_infected
|
int | ndarray
|
The number of agents to infect (for API consistency). Note: In ABM, this should match the length of indices. |
required |
laser.measles.abm.model.ABMModel.initialize_people_capacity(capacity, initial_count=-1)
Initialize the people LaserFrame with a new capacity while preserving all properties.
This method uses the factory method from BasePeopleLaserFrame to create a new instance of the same type with the specified capacity, copying all properties from the existing instance.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
capacity
|
int
|
The new capacity for the people LaserFrame |
required |
laser.measles.abm.model.ABMModel.plot(fig=None)
Plots various visualizations related to the scenario and population data.
Parameters:
1 | |
Yields:
1 | |
The function generates three plots:
1 2 3 | |
laser.measles.abm.model.ABMModel.setup_patches()
Setup the patches for the model.
laser.measles.abm.model.ABMModel.setup_people()
Placeholder for people - sets the data types for patch_id and susceptibility.