Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/brainpy/BrainPy
Brain Dynamics Programming in Python
https://github.com/brainpy/BrainPy
brain-dynamics-modeling brain-inspired-computing brain-simulations brainpy spiking-neural-networks
Last synced: 2 months ago
JSON representation
Brain Dynamics Programming in Python
- Host: GitHub
- URL: https://github.com/brainpy/BrainPy
- Owner: brainpy
- License: gpl-3.0
- Created: 2020-07-16T02:11:23.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2024-05-15T13:04:36.000Z (8 months ago)
- Last Synced: 2024-05-21T10:15:21.573Z (8 months ago)
- Topics: brain-dynamics-modeling, brain-inspired-computing, brain-simulations, brainpy, spiking-neural-networks
- Language: Python
- Homepage: https://brainpy.readthedocs.io/
- Size: 92 MB
- Stars: 483
- Watchers: 12
- Forks: 88
- Open Issues: 34
-
Metadata Files:
- Readme: README.md
- Changelog: changes.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
Awesome Lists containing this project
- awesome-computational-neuroscience - BrainPy - A flexible, efficient, and extensible framework for computational neuroscience and brain-inspired computation based on the JIT compilation. (Package / Computational Neuroscience)
- awesome-jax - BrainPy - Brain Dynamics Programming in Python. <img src="https://img.shields.io/github/stars/brainpy/BrainPy?style=social" align="center"> (Libraries / New Libraries)
README
BrainPy is a flexible, efficient, and extensible framework for computational neuroscience and brain-inspired computation based on the Just-In-Time (JIT) compilation (built on top of [JAX](https://github.com/google/jax), [Taichi](https://github.com/taichi-dev/taichi), [Numba](https://github.com/numba/numba), and others). It provides an integrative ecosystem for brain dynamics programming, including brain dynamics **building**, **simulation**, **training**, **analysis**, etc.
- **Website (documentation and APIs)**: https://brainpy.readthedocs.io/en/latest
- **Source**: https://github.com/brainpy/BrainPy
- **Bug reports**: https://github.com/brainpy/BrainPy/issues
- **Source on OpenI**: https://git.openi.org.cn/OpenI/BrainPy## Installation
BrainPy is based on Python (>=3.8) and can be installed on Linux (Ubuntu 16.04 or later), macOS (10.12 or later), and Windows platforms.
For detailed installation instructions, please refer to the documentation: [Quickstart/Installation](https://brainpy.readthedocs.io/en/latest/quickstart/installation.html)
### Using BrainPy with docker
We provide a docker image for BrainPy. You can use the following command to pull the image:
```bash
$ docker pull brainpy/brainpy:latest
```Then, you can run the image with the following command:
```bash
$ docker run -it --platform linux/amd64 brainpy/brainpy:latest
```### Using BrainPy with Binder
We provide a Binder environment for BrainPy. You can use the following button to launch the environment:
[![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/brainpy/BrainPy-binder/main)
## Ecosystem
- **[BrainPy](https://github.com/brainpy/BrainPy)**: The solution for the general-purpose brain dynamics programming.
- **[brainpy-examples](https://github.com/brainpy/examples)**: Comprehensive examples of BrainPy computation.
- **[brainpy-datasets](https://github.com/brainpy/datasets)**: Neuromorphic and Cognitive Datasets for Brain Dynamics Modeling.
- [《神经计算建模实战》 (Neural Modeling in Action)](https://github.com/c-xy17/NeuralModeling)
- [第一届神经计算建模与编程培训班 (First Training Course on Neural Modeling and Programming)](https://github.com/brainpy/1st-neural-modeling-and-programming-course)
- [第二届神经计算建模与编程培训班 (Second Training Course on Neural Modeling and Programming)](https://github.com/brainpy/2nd-neural-modeling-and-programming-course)## Citing
BrainPy is developed by a team in Neural Information Processing Lab at Peking University, China.
Our team is committed to the long-term maintenance and development of the project.If you are using ``brainpy``, please consider citing [the corresponding papers](https://brainpy.readthedocs.io/en/latest/tutorial_FAQs/citing_and_publication.html).
## Ongoing development plans
We highlight the key features and functionalities that are currently under active development.
We also welcome your contributions
(see [Contributing to BrainPy](https://brainpy.readthedocs.io/en/latest/tutorial_advanced/contributing.html)).- [x] model and data parallelization on multiple devices for dense connection models
- [ ] model parallelization on multiple devices for sparse spiking network models
- [ ] data parallelization on multiple devices for sparse spiking network models
- [ ] pipeline parallelization on multiple devices for sparse spiking network models
- [ ] multi-compartment modeling
- [ ] measurements, analysis, and visualization methods for large-scale spiking data
- [ ] Online learning methods for large-scale spiking network models
- [ ] Classical plasticity rules for large-scale spiking network models