Simulation Functions

Below are example simulation functions available in libEnsemble. Most of these demonstrate an inexpensive algorithm and do not launch tasks (user applications). To see an example of a simulation function launching tasks, see the Electrostatic Forces tutorial.

Important

See the API for simulation functions here.

Simple simulation functions

Ideal for simple debugging of generator processes or system testing.

Functions that run user applications

These use the executor to launch applications and in some cases handle dynamic CPU/GPU allocation.

The Variable resources module contains basic examples, while the Template examples use a simple MPI/OpenMP (with GPU offload option) application (forces) to demonstrate libEnsemble’s capabilities on various HPC systems. The build_forces.sh file gives compile lines for building the simple forces application on various platforms (use -DGPU to build for GPU).

Special simulation functions