The Vivarium Engine

The engine houses the SimulationContext – the key vivarium object for running and interacting with simulations. It is the top level manager for all state information in vivarium. By intention, it exposes a very simple interface for managing the simulation lifecycle.

Also included here is the simulation Builder, which is the main interface that components use to interact with the simulation framework. You can read more about how the builder works and what services is exposes here.

Finally, there are a handful of wrapper methods that allow a user or user tools to easily setup and run a simulation.

class vivarium.framework.engine.SimulationContext(model_specification=None, components=None, configuration=None, plugin_configuration=None)[source]
name
setup()[source]
initialize_simulants()[source]
step()[source]
run()[source]
finalize()[source]
report()[source]
add_components(component_list)[source]

Adds new components to the simulation.

get_population(untracked=True)[source]
class vivarium.framework.engine.Builder(configuration, plugin_manager)[source]

Toolbox for constructing and configuring simulation components.

vivarium.framework.engine.run_simulation(model_specification=None, components=None, configuration=None, plugin_configuration=None)[source]