Apache Airavata Cerebrum

Clone this repo:
  1. 04748ef Merge pull request #26 from srirampc/main by Dimuthu Wannipurage · 7 days ago main
  2. 296b3e0 move simulate location by Sriram P C · 4 weeks ago
  3. 5ac092b Update command-line scripts section in README by Sriram P C · 4 weeks ago
  4. 03faf32 update V1 Notebook by Sriram P C · 4 weeks ago
  5. bb60ab4 Re-organize notebooks by Sriram P C · 4 weeks ago

Apache Airavata Cerebrum, an Integrated Neuroscience Computational Framework

Introduction

Airavata Cerebrum aims to simplify building whole brain models via integration of cellular-level brain atlases with advanced computational tools. Our goal is to create a cohesive, open-source framework that allows for accelerated ‘data to model’ workflows that are flexible to update and straight-forward to reproduce.

Key Features

  • Integration of Brain Atlases: Transparently connect to publicly available cellular-level brain atlases into a single, accessible platform.
  • Model Consruction Workflows: Workflows to collect/filter/combine data from different databases and construct whole brain scale models.
  • Open-Source Framework: Developing a user-friendly, open-source environment for neuroscience research.
  • Streamlined Environment: Ensuring a lightweight, efficient framework for both beginners and advanced users alike.

Model Notebooks and Scripts

The resources directory contains the list of notebooks to demonstrate Cerebrum, and standalone batch scripts to build/simulate using cerbrum.

IPython Notebooks

ModelNotebook
Demo of Cerebrum V1L4 modelV1 L4 IPython Notebook
Demo of Cerebrum V1 modelV1 IPython Notebook
Demo of Cerebrum V1 model on CybershuttleV1 IPython Notebook
Demo of WGN Sleep modelWGN Sleep IPython Notebook

Command-line scripts

ModelScripts
Build/Simulate Cerebrum V1 modelV1 script
Simulate Cerebrum V1 model w. BMTKV1 script
Simulate Cerebrum V1 model w. NESTV1 script

Install Airavata Cerebrum

Airavata Cerebrum requires python3.10+ environment. It is currently tested only in Linux operating system.

To install locally, we recommend to create a virtual environment using conda (miniforge for a faster installation) as below:

conda config --add channels conda-forge
conda create -n cerebrum python=3.10 nest-simulator mpi4py nodejs
conda activate cerebrum

nest-simulator should be installed when creating the conda environment since there is no PyPI package available for NEST.

Cerebrum depends upon NEST and BMTK, both of which depend upon mpi4py, the python interface to MPI. In the above commands, we attempt to install via conda. However, in some cases where conda's MPI causes some errors, we recommend that MPI is installed from the OS. In case of Ubuntu, this can be accomplished by

sudo apt install openmpi-bin  libopenmpi-dev

After installing MPI libraries, mpi4py can be installed via pip manually.

To install Airavata Cerebrum into the environment created above, pip can be used with the git option as follows.

pip install git+https://github.com/apache/airavata-cerebrum.git

See INSTALL.md for details about how to install for a development environment and other issues.