Differentiable neuron simulations.
Project description
Jaxley
is a differentiable simulator for biophysical neuron models in JAX. Its key features are:
- automatic differentiation, allowing gradient-based optimization of thousands of parameters
- support for CPU, GPU, or TPU without any changes to the code
jit
-compilation, making it as fast as other packages while being fully written in python- backward-Euler solver for stable numerical solution of multicompartment neurons
- elegant mechanisms for parameter sharing
Tutorials
Tutorials are available on our website. We currently have tutorials on how to:
- simulate morphologically detailed neurons
- simulate networks of such neurons
- set parameters of cells and networks
- speed up simulations with jit and vmap
- define your own channels and synapses
- define groups
- read and handle SWC files
- train biophysical models
Units
Jaxley
uses the same units as NEURON
.
Installation
Jaxley
is available on pypi
:
pip install jaxley
This will install Jaxley
with CPU support. If you want GPU support, follow the instructions on the JAX
github repository to install JAX
with GPU support (in addition to installing Jaxley
). For example, for NVIDIA GPUs, run
pip install -U "jax[cuda12]"
Feedback and Contributions
We welcome any feedback on how Jaxley is working for your neuron models and are happy to receive bug reports, pull requests and other feedback (see contribute). We wish to maintain a positive community, please read our Code of Conduct.
Acknowledgements
We greatly benefited from previous toolboxes for simulating multicompartment neurons, in particular NEURON.
License
Project details
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
File details
Details for the file jaxley-0.1.2.tar.gz
.
File metadata
- Download URL: jaxley-0.1.2.tar.gz
- Upload date:
- Size: 87.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.11.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3917ffc2fc4a824464b661cd0b2ba31bfa821550a8301090999b097e74327173 |
|
MD5 | 35fe357a550d4602cffa6d14ebe34657 |
|
BLAKE2b-256 | 162429bac9bc012a472c23910a14977fee2b62e0ce646c998778a4fb5f77eb2e |
File details
Details for the file jaxley-0.1.2-py3-none-any.whl
.
File metadata
- Download URL: jaxley-0.1.2-py3-none-any.whl
- Upload date:
- Size: 122.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.11.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a90cd19e8d893a0e160ab2da7590ca042805bba25e4f434d5f4a18499ed12a51 |
|
MD5 | 983a9b1cbf1b0e3992792f71e5bfee09 |
|
BLAKE2b-256 | 3b7b6bae78b2259ca7a0bd3f0718d35dc45d795609bb243d4360429aad013b09 |