A cerebral cortex simulation framework
Project description
CxSystem2, A Flexible Cortical Simulation Framework
Warning: CxSystem2 BUI is developed for using in a local environment and should not be installed on a publicly accessible server unless extra security measures are added on top of it
Table of Contents
Synopsis
CxSystem is a cerebral cortex simulation framework, which operates on personal computers. We have tested the simulation software with a simplified version of a comprehensive cortical microcircuit model [1], which is available as configuration file.
The CxSystem aims at easy testing and buildup of diverse models at single cell resolution. Implemented on the top of the Python-based Brian2 simulator, CxSystem supports the main goal of Brian, i.e. minimizing development time, by providing the user with a simplified interface.
The preliminary version of this software has been developed at Aalto University 2012-2015 [2], and the full version at the Hospital District of Helsinki and Uusimaa and University of Helsinki 2013-2017. The software is distributed under the terms of the GNU General Public License, Copyright 2017 Vafa Andalibi, Henri Hokkanen and Simo Vanni.
Installation
We highly recommend installing CxSystem2
on a virtual environment. Use the following commands to install a Python3 virtual environment and install CxSystem:
Windows
Make sure you have python 3.5 or above. To create activate a venv
in windows at ~/CX2
(you can deactivate the environment with the command deactivate
and reactivate later by running the second command):
C:\> python --version
Python 3.7.4
C:\> python3 -m venv %userprofile%\CX2
C:\> %userprofile%\CX2\Scripts\activate
(CX2) C:\> pip install --upgrade setuptools
(CX2) C:\> pip install -U cxsystem2
Moreover, to use the C++ standalone device on Windows, install the Visual C++ Build Tools 2015.
Linux/Mac
Make sure you have python 3.5 or above. To create activate a venv
in Linux/Mac at ~/CX2
(you can deactivate the environment with the command deactivate
and reactivate later by running the second command):
$ python --version
Python 3.7.4
$ python3 -m venv ~/CX2
$ source ~/CX2/bin/activate
(CX2) $ pip install --upgrade setuptools
(CX2) $ pip install -U cxsystem2
Development
To develop CxSystem2
, after cloning the repository install it with the following commands:
(CX2) $ git clone https://github.com/VisualNeuroscience-UH/CxSystem2
(CX2) $ cd CxSystem2
(CX2) $ pip install --upgrade setuptools
(CX2) $ pip install -r requirements.txt
(CX2) $ pip install -U -e .
With this method any change to the code will be reflected on the package immediately.
Interfaces
CxSystem2
comes with two interfaces:
Browser User Interface (BUI)
CxSystem's BUI is built to provide users with an interactive environment for changing the parameters for simulations.
Command Line Interface (CLI)
Beside the BUI, Some of the main functionalities of the CxSystem2
are available in terminal, including the BUI itself. All of the following commands have built-in documentations available with -h
or --help
flags:
cxsystem2
This command (all in lower letters and case sensitive) can be used to run a simulation locally using anatomy and physiology configuration files.
cxserver
This command will run the CxSystem2
BUI django server.
cxconfig
CxSystem2 supports csv
and json
for importing/exporting configuration files. To convert the configuration files, use the cxconfig
and pass the path to the configuration file path as its argument. This command recognizes the file type and convert it to the alternative extension.
cxcluster
Use cxcluster
to download the results from the cluster. cxcluster
takes in one argument which is the path to the metadata file saved as a result of cluster-run submission. For convenience, at the end of a cluster-run job submission, CxSystem2
prints the command that should be run to retrieve the result.
cxvisualize
This command can be used to visualize the result of the simulation using visimpl
visualizer. ViSimpl binaries are available at the Modeling and Virtual Reality Group download page at Universidad Rey Juan Carlos and Universidad Politécnica de Madrid. This command can also be used to generate a pdf of rasterplots from a set of simulations.
Documentation
You can access the documentation of the CxSystem2 at cxsystem2.readthedocs.io.
Citation
If you use CxSystem2 for your work, we kindly ask you to cite any of our related articles:
Andalibi, V., Hokkanen, H., Vanni, S., Controlling complexity of cerebral cortex simulations—I: CxSystem, a flexible cortical simulation framework, 2019, Neural computation
Hokkanen, H., Andalibi, V., Vanni, S., Controlling complexity of cerebral cortex simulations—II: Streamlined microcircuits, 2019, Neural computation
Support
You are encouraged to use Github's Issues to report bugs, or request enhancements or new features.
Team
License
- GPL-3-Clause
- Copyright 2019 © HUS Helsinki University Hospital.
[1] Markram, H., Muller, E., Ramaswamy, S., Reimann, M. W., Abdellah, M., Sanchez, C. A., … Schürmann, F. (2015). Reconstruction and Simulation of Neocortical Microcircuitry. Cell, 163(2), 456–492. http://doi.org/10.1016/j.cell.2015.09.029
[2]Heikkinen, H., Sharifian, F., Vigário, R., & Vanni, S. (2015). Feedback to distal dendrites links fMRI signals to neural receptive fields in a spiking network model of the visual cortex. Journal of Neurophysiology, 114(1), 57–69. http://doi.org/10.1152/jn.00169.2015
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for cxsystem2-2.1.2.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0cf1a515e17c07f8cb71430bf14a4c2736d82ad0dc13abfa2dfc1c599271f9bb |
|
MD5 | 23b9430b723408b536cc7b05c9f16995 |
|
BLAKE2b-256 | 65b45b196d7a26d75569999d6f618f2f549f8ba1a342b6bcf1526d2d59632e0d |