Installation

This emulsim package is developed for python 3.10+ and should run on all common platforms. The code is tested under Linux, Windows, and macOS. The code is available on pip, so one could simply install it using

pip install emulsim

In order to have all features of the package available, you might also want to install the following optional packages:

pip install networkx numba-scipy

Moreover, ffmpeg needs to be installed and for creating movies.

Installing from source

Prerequisites

The code builds on other python packages, which need to be installed for this package to function properly. The required packages are listed in the table below:

Package

Version

Usage

matplotlib

>=3.1

Visualizing results

numba

>=0.49

Just-in-time compilation to accelerate numerics

numpy

>=1.22

Array library used for storing data

py-droplets

>=0.23

Represent droplets

py-modelrunner

>=0.19,<0.20

Storage of numerical data

py-pde

>=0.57

Solving partial differential equations

scipy

>=1.4

Miscellaneous scientific functions

sympy

>=1.5

Dealing with user-defined mathematical expressions

zarr

>=2.16

Storage of numerical data

These package can be installed via your operating system’s package manager, e.g. using macports, homebrew, conda, or pip. The package versions given above are minimal requirements, although this is not tested systematically. Generally, it should help to install the latest version of the package.

Optionally, the following packages should be installed to use some miscellaneous features:

Package

Usage

networkx

Representing simulation as a graph

numba-scipy

Accelerated scientific functions

pydot

Nicer plot of the graph representation

pytest

Running tests

sphinx

Building the documentation

Additionally, ffmpeg should be installed for making movies and the packages sphinx-autodoc-annotation and sphinx_rtd_theme are required for building the documentation.

Downloading the package

The package can be simply checked out from github.com/zwicker-group/emulsim. To import the package from any python session, it might be convenient to include the root folder of the package into the PYTHONPATH environment variable.

This documentation can be built by calling the make html in the docs folder. The final documentation will be available in docs/build/html. Note that a LaTeX documentation can be build using make latexpdf.