Skip to main content

banner

Neurodamus

https://zenodo.org/badge/640796304.svg

Neurodamus is a BBP Simulation Control application for Neuron.

The Python implementation offers a comprehensive Python API for fine tuning of the simulation, initially defined by a BlueConfig file.

Description

Neurodamus is the BBP in-house developed application for setting up large-scale neuronal simulations. It has traditionally been implemented as a set of extensions to Neuron, in the form of .hoc and .mod files. The parameters of the simulation are loaded from a configuration file, by default BlueConfig.

To address several limitations of the Hoc implementation, including development effort, the high-level layers of Neurodamus have been reimplemented in Python. Such implementation effectively makes available to the user a Python module with a comprehensive API, suitable to fine control simulation aspects, as well as inspect and eventually adapt the simulations as intended.

Install

Prerequisites

Install neurodamus

git clone https://github.com/openbraininstitute/neurodamus.git
cd neurodamus
pip install .

Build special with mod files

Once neuron and neurodamus are installed, you can build special with your mod files:

mkdir mods
cp -r <your-mod-files> mods/
export DATADIR=$(python -c "import neurodamus; from pathlib import Path; print(Path(neurod)mus.__file__).parent / 'data')")
cp -L $DATADIR/mod/* mods/
nrnivmodl -incflags '-I <include-paths-of-our-dependencies>' -loadflags '-L <libs-paths-for-linking>' mods

To use the Blue Brain open models, you can build neurodamus-models rel 2.4.4. It will also produce a handy build_neurodamus.sh script that calls nrnivmodl with all dependencies to compile your future mod files

build_neurodamus mods/

Examples

Once neurodamus is installed, you should be able to find the executable neurodamus in your path:

$ neurodamus
  Usage:
      neurodamus <ConfigFile> [options]
      neurodamus --help

Among the options you will find flags to tune run behavior.

Neurodamus explicitly depends on MPI libraries for parallel execution. Therefore please use “srun” or “mpiexec” to launch it, according to your platform. If you don’t, complicated error messages may show up. Please remember it.

Even though a neurodamus launcher is provided, for production runs we suggest using special instead. This way has proven to take advantage of optimized math libraries. We hope to bring the same advantages to the launcher script soon.

export NEURODAMUS_PYTHON=$(python -c "import neurodamus; from pathlib import Path; print(Path(neurod)mus.__file__).parent / 'data')")
export HOC_LIBRARY_PATH=<hoc_files_folder>
srun <srun params> <your_built_special> -mpi -python $NEURODAMUS_PYTHON/init.py <neurodamus params>

An example of a full installation with a simulation run can be found in the workflow test simulation_test.yml.

Docker container

Alternatively, you can start directly a neurodamus docker container where all the packages are built. With the container, you can build your mod files and run simulations.

Building the docker container

The docker images will be built in the regular github action - it is built on tags.

Docker container

With the docker image, you can start a neurodamus container with an interactive Bash shell and meanwhile mount your local folder which contains your mod files and the circuit data.

docker run --rm -it -v <full path of your folder_mods_circuit>:/mnt/mydata ghcr.io/openbraininstitute/neurodamus:$TAG /bin/bash

To build new models, one can use the script in /opt/obi/build-neurodamus-models.sh. One can also examine the /opt/obi/env-neocortex.sh file to see how neocortext environment variables are setup so that the models are loaded. NEURON is installed, so by activating the virtual environment with source $USER_VENV/bin/activate one gets access to neuron and neurodamus

Acknowledgment

The development of this software was supported by funding to the Blue Brain Project, a research center of the École polytechnique fédérale de Lausanne (EPFL), from the Swiss government’s ETH Board of the Swiss Federal Institutes of Technology.

Copyright (c) 2005-2024 Blue Brain Project/EPFL

Copyright (c) 2025-2026 Open Brain Institute

Metadata

Release files for neurodamus 4.2.8

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

Source distribution (sdist)

Source distribution for neurodamus 4.2.8
File Size Uploaded
neurodamus-4.2.8.tar.gz 202.2 kB Details

Built distribution (wheel)

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

Total release size: 439.7 kB

Release files / neurodamus-4.2.8.tar.gz

Download URL neurodamus-4.2.8.tar.gz
Size 202.2 kB
Tags Source
SHA-256 checksum
How to use checksums
095a1d78e967e323b71b2d836832c20cf3b19d3afefacfb8e66d0dc27115ad2d
BLAKE2b-256 checksum
How to use checksums
80e08a8c82c1375c3c8dd449d82d6fd9e3bc936906568d3349f2c65954cb6844
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 14, 2026.

Transparency log

Release files / neurodamus-4.2.8-py3-none-any.whl

Download URL neurodamus-4.2.8-py3-none-any.whl
Size 237.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
eb6d90a0c581cbb58d053710aecfae78b62b62b7da57d95a5a1601998d28b16b
BLAKE2b-256 checksum
How to use checksums
d6ac9744a49d1c9a437a8158b3579fa746df0a3e765888c7cabb6c4c08a2a8c9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 14, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

4.2.8 This release

2 release files

4.2.7

2 release files

4.2.6

2 release files

4.2.5

2 release files

4.2.4

2 release files

4.2.3

2 release files

4.2.2

2 release files

4.2.1

2 release files

4.2.0

2 release files

4.1.1

2 release files

4.1.0

2 release files

4.0.0

2 release files

3.10.0

2 release files

3.9.0

2 release files

3.8.0

2 release files

3.7.2

2 release files

3.7.1

1 release file

3.6.0

2 release files

3.5.0

2 release files

3.4.0

2 release files

3.3.0

2 release files

3.2.1

2 release files

3.2.0

2 release files

3.1.1

2 release files

3.0.0

2 release files

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