Skip to content


Subversion checkout URL

You can clone with
Download ZIP
A Python library for creating and simulating large-scale brain models
Failed to load latest commit information.
docs Reorganized examples folder
examples Insert spaces after # of markdown heading/comment.
nengo-data Change progress bar instantiation.
nengo Support slicing with numpy arrays
.coveragerc Better, faster .travis.yml
.gitignore Add vagrant files from devscripts to .gitignore.
CHANGES.rst Support slicing with numpy arrays
CITATION.rst Changed license from GPL to dual license
CONTRIBUTORS.rst Alphabetize contributor list
LICENSE.rst Updated references to git repo Minor fixes to
README.rst Refactor Plotter and Analytics Force setuptools
requirements-docs.txt More documentation updates
requirements-optional.txt Better, faster .travis.yml
requirements-test-py26.txt Change progress bar instantiation.
requirements.txt Added utils.graph which simulator uses
setup.cfg Prune fixture output directories in pytest Better, faster .travis.yml
tox.ini Prevent relative imports by py.test/tox. Force setuptools


Travis-CI build status Test coverage Requirements Status Latest PyPI version Number of PyPI downloads

Nengo: Large-scale brain modelling in Python

An illustration of the three principles of the NEF


To install Nengo, use:

pip install nengo

Nengo depends on NumPy. If you have difficulty installing, try installing NumPy first (see below).

Nengo supports Python 2.6, 2.7, and 3.3+.

Developer install

git clone
cd nengo
python develop --user

If you're using a virtualenv (recommended!) then you can omit the --user flag.

Installing requirements

Nengo's main requirement is Numpy (and optionally Scipy for better performance). Currently, installing Numpy from pip will install an unoptimized (slow) version, so it is preferable to install Numpy using one of the following methods. It is important to install Numpy before installing the other requirements.


Numpy is included as part of the [Anaconda]( Python distribution. This is a straightforward solution to get Numpy working on Windows, Mac, or Linux.


On Ubuntu and derivatives (e.g. Linux Mint), Numpy and Scipy can be installed using apt-get:

sudo apt-get install python-numpy python-scipy
From source

Numpy can be installed from source. This is the most complicated method, but is also the most flexible and results in the best performance. See the detailed instructions [here](

Other requirements

To install optional requirements to enable additional features, do

pip install -r requirements.txt
pip install -r requirements-optional.txt

The testing and documentation requirements can be found in similarly named files.

Documentation & Examples

Documentation and examples can be found at

Running tests

One way to verify that your installation is working correctly is to run the unit tests. We use py.test, so you can run the Nengo unit tests with:

py.test --pyargs nengo

Running individual tests

Tests in a specific test file can be run by calling py.test on that file. For example:

py.test nengo/tests/

will run all the tests in

Individual tests can be run using the -k EXPRESSION argument. Only tests that match the given substring expression are run. For example:

py.test nengo/tests/ -k test_circular

will run any tests with test_circular in the name, in the file

Plotting the results of tests

Many Nengo test routines have the built-in ability to plot test results for easier debugging. To enable this feature, set the --plots flag, for example:

py.test --plots --pyargs nengo

Plots are placed in nengo.simulator.plots in whatever directory py.test is invoked from. You can also set a different directory:

py.test --plots=path-to-plots --pyargs nengo


Please read the LICENSE.rst file to understand what becoming a contributor entails. Once you have read and understood the liscence agreement, add yourself to the CONTRIBUTORS.rst file. Note that all pull requests must be commited by someone else other than the original requestor.

Something went wrong with that request. Please try again.