Skip to content

Implementation Documentation

This module contains information about the implementation of epiworld, and how you can extend it with your own modules and code.

Architecture and Design

  • Library Architecture — modular structure of the Agent, Entity, and Model classes, the "bones and meat" pattern, and file organization.
  • Performance Optimization — profiling, memory layout, template inlining, and OpenMP parallelization.
  • Queueing System — the Queue class that selectively activates agents for efficient per-step processing.

Extending Epiworld

Models and Simulation

Data and Analysis

Simulation Execution