CANNs Documentation¶
Welcome to CANNs!¶
CANNs (Continuous Attractor Neural Networks toolkit) is a Python library built on BrainPy, a powerful framework for brain dynamics programming. It streamlines experimentation with continuous attractor neural networks and related brain-inspired models. The library delivers ready-to-use models, task generators, analysis tools, and pipelines—enabling neuroscience and AI researchers to move quickly from ideas to reproducible simulations.
Visualizations¶
1D CANN Smooth Tracking
Real-time dynamics during smooth tracking
2D CANN Population Encoding
Spatial information encoding patterns
🔬 Theta Sweep Analysis
Theta rhythm modulation in grid and direction cell networks
Bump Analysis
1D bump fitting and analysis
Torus Topology Analysis
3D torus visualization and decoding
Quick Start¶
Install CANNs:
# Using uv (recommended for faster installs)
uv pip install canns
# Or use pip
pip install canns
# For GPU support
pip install canns[cuda12]
pip install canns[cuda13]
Community and Support¶
GitHub Repository: https://github.com/routhleck/canns
Issue Tracker: https://github.com/routhleck/canns/issues
Discussions: https://github.com/routhleck/canns/discussions
Documentation: https://canns.readthedocs.io/
Contributing¶
Contributions are welcome! Please check our Contribution Guidelines.
Citation¶
If you use CANNs in your research, please cite:
@software{he_2025_canns,
author = {He, Sichao},
title = {CANNs: Continuous Attractor Neural Networks Toolkit},
year = 2025,
publisher = {Zenodo},
version = {v0.9.0},
doi = {10.5281/zenodo.17412545},
url = {https://github.com/Routhleck/canns}
}