Skip to main content

emulsim

Framework for simulating physical systems consisting of multiple, interacting entities. The current focus of the package lies on simulating interacting droplets in a common environment, but the framework is extensible and flexible.

Main idea

The main idea is that the physical system consists of multiple elements, which together describe the state of the system. The dynamical rules are encoded in actors, which either act on individual elements, encoding their autonomous dynamics, or on multiple elements, introducing couplings.

Installation

The package is not yet available on pip and must thus be cloned from Github. The necessary python packages can be installed using pip. To install the package together with the requirements, the following commands can be used:

git clone https://github.com/david-zwicker/emulsim.git
pip install -r emulsim/requirements.txt

Documentation

The documentation for this package is available online

Running tests

The package comes with automated tests that reside in tests directory. The purpose of these tests is to ensure some basic functionality of the package. Consequently, it is good practice to run the tests and fix problems before committing to the repository. To run tests, first install the the necessary python modules:

pip install -r tests/requirements.txt

The tests can be run using pytest or using the convenient scripts collected in the scripts directory:

  • tests_run.sh runs all tests in sequential order. The script takes an optional argument that selects which tests are run: Only test files or methods that match the argument will be run.
  • tests_parallel.sh runs all tests in parallel. Also takes a pattern argument.
  • tests_coverage.sh checks how much of the code is covered by tests.
  • tests_types.sh tests the type annotations in the python files. Type annotations are optional in python, but they can be helpful to spot subtle programming problems.
  • format_code.sh enforces the code style on all files.

Metadata

Release files for emulsim 0.5.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for emulsim 0.5.0
File Size Uploaded Provenance Actions
emulsim-0.5.0.tar.gz 568.1 kB Without provenance Details for emulsim-0.5.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for emulsim 0.5.0
File Interpreter ABI Platform Actions
emulsim-0.5.0-py3-none-any.whl Python 3 none any Details for emulsim-0.5.0-py3-none-any.whl

Total release size: 668.1 kB

Release files / emulsim-0.5.0.tar.gz

Download URL emulsim-0.5.0.tar.gz
Size 568.1 kB
Tags Source
SHA-256 checksum
How to use checksums
e15dda2ec8dc2b951628dd872f31b009acd70a32b1d709b4568beaf65f08acad
BLAKE2b-256 checksum
How to use checksums
89a2151efd5b8956ec7f8bebbba5b36e625f8e22ad2dd5702a7d5b825f8f8454
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.13

Release files / emulsim-0.5.0-py3-none-any.whl

Download URL emulsim-0.5.0-py3-none-any.whl
Size 100.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7c8446f2ba9a43793d608ce7cb481c50f34ea713f41f835cd83e73d2743963b3
BLAKE2b-256 checksum
How to use checksums
9fb5689931394f4eb4195b70f795ca7cee14751ca848f386947994813c5bd8b5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.13

Security for emulsim 0.5.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.5.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page