Skip to content

ESCAPE: Epidemic Simulator Compiler and Programming Environment

License

Notifications You must be signed in to change notification settings

NSSAC/escape-abm

Repository files navigation

ESCAPE: Epidemic Simulator Compiler and Programming Environment

A man running away from a virus

The Epidemic Simulator Compiler and Programming Environment or ESCAPE is a framework for efficiently developing high-performance agent based epidemic simulators.

ESCAPE uses a domain specific language called the Epidemic Simulator Language or ESL, which users have to use to define the epidemic simulations. The ESL language provides domain specific constructs to define compartmental disease models and the structure of the contact networks on top of which the disease propagate. Additionally, ESL also includes general purpose programming constructs — conditionals, loops, functions, variables, etc. — and parallel constructs — select, sample, apply, and reduce — for describing interventions.

ESCAPE provides a compiler that converts the epidemic simulators written in ESL into C++ or CUDA programs. Simulators created with ESCAPE are high performance parallel programs that run on multi-core CPU systems or GPU based systems. The ESCAPE compiler itself is written in Python.

Documentation

About

ESCAPE: Epidemic Simulator Compiler and Programming Environment

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published