Skip to main content

Tools for making neural simulations using the methods of the Neural Engineering Framework

Project description

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

Installation

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 https://github.com/nengo/nengo.git
cd nengo
python setup.py 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.

Anaconda

Numpy is included as part of the [Anaconda](https://store.continuum.io/cshop/anaconda/) Python distribution. This is a straightforward solution to get Numpy working on Windows, Mac, or Linux.

Ubuntu

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](http://hunseblog.wordpress.com/2014/09/15/installing-numpy-and-openblas/).

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 https://pythonhosted.org/nengo/.

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/test_node.py

will run all the tests in test_node.py.

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/test_node.py -k test_circular

will run any tests with test_circular in the name, in the file test_node.py.

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 environment variable NENGO_TEST_PLOT=1, for example:

NENGO_TEST_PLOT=1 py.test --pyargs nengo

Or, for the current terminal session:

export NENGO_TEST_PLOT=1
py.test --pyargs nengo

Plots are placed in nengo.simulator.plots in whatever directory py.test is invoked from.

Contributing

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.

Release History

2.0.2 (October 13, 2015)

2.0.2 is a bug fix release to ensure that Nengo continues to work with more recent versions of Jupyter (formerly known as the IPython notebook).

Behavioural changes

  • The IPython notebook progress bar has to be activated with %load_ext nengo.ipynb. (#693)

Improvements

  • Added [progress] section to nengorc which allows setting progress_bar and updater. (#693)

Bug fixes

  • Fix compatibility issues with newer versions of IPython, and Jupyter. (#693)

2.0.1 (January 27, 2015)

Behavioural changes

  • Node functions receive t as a float (instead of a NumPy scalar) and x as a readonly NumPy array (instead of a writeable array). (#626, #628)

Improvements

  • rasterplot works with 0 neurons, and generates much smaller PDFs. (#601)

Bug fixes

  • Fix compatibility with NumPy 1.6. (#627)

2.0.0 (January 15, 2015)

Initial release of Nengo 2.0! Supports Python 2.6+ and 3.3+. Thanks to all of the contributors for making this possible!

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

nengo-2.0.2.tar.gz (271.4 kB view details)

Uploaded Source

File details

Details for the file nengo-2.0.2.tar.gz.

File metadata

  • Download URL: nengo-2.0.2.tar.gz
  • Upload date:
  • Size: 271.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for nengo-2.0.2.tar.gz
Algorithm Hash digest
SHA256 70c12a645aa7ee31e9ca5bad5ffef85b5791ab73e16b55648e5cd30e5cb9f5f7
MD5 6d7de0b1fe79051398f4832153984a69
BLAKE2b-256 a74e39b9d6b7ba63b2af314089289d0ca9ca70522674bf5130e9b642f879ef50

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page