Skip to main content

Tools for robust dynamics in Nengo

Project description

Nengolib Logo Build Status Code Coverage

import nengolib

Additional extensions and tools for modelling dynamical systems in Nengo.


This project’s documentation is hosted on GitHub.IO:


To install the development version of nengolib:

git clone
cd nengolib
python develop

Notebooks can be run manually in docs/notebooks by running:

pip install jupyter
jupyter notebook

Release History

0.5.2 (September 10, 2019)


  • Solved an issue where scipy.misc imports were relocated. (#182)

0.5.1 (April 17, 2019)

Tested against Nengo versions 2.2.0-2.8.0. Requires nengo<3.0.


  • A variety of miscellaneous fixes were made to the documentation. The nengolib.networks.RollingWindow documentation references the shifted Legendre polynomial equations for legendre == True. (#176)

0.5.0 (March 9, 2019)

Tested against Nengo versions 2.2.0-2.8.0. We now require numpy>=1.13.0, scipy>=0.19.0, and nengo>=2.2.0.


  • Added the nengolib.RLS() recursive least-squares (RLS) learning rule. This can be substituted for nengo.PES(). See notebooks/examples/full_force_learning.ipynb for an example that uses this to implement spiking FORCE in Nengo. (#133)

  • Added the nengolib.stats.Rd() method for quasi-random sampling of arbitrarily high-dimensional vectors. It is now the default method for scattered sampling of encoders and evaluation points. The method can be manually switched back to nengolib.stats.Sobol(). (#153)

  • Added the nengolib.neuron.init_lif(sim, ens) helper function for initializing the neural state of a LIF ensemble, from within a simulator block, to represent 0 uniformly at the start. (#156)

  • Added nengolib.synapses.LegendreDelay as an alternative to nengolib.synapses.PadeDelay – it has an equivalent transfer function but a state-space realization corresponding to the shifted Legendre basis. The network nengolib.networks.RollingWindow support legendre=True to make this system the default realization. (#161)


  • Release no longer requires pytest. (#156)

0.4.2 (May 18, 2018)

Tested against Nengo versions 2.1.0-2.7.0.


  • Solving for connection weights by accounting for the neural dynamics. To use, pass in nengolib.Temporal() to nengo.Connection for the solver parameter. Requires nengo>=2.5.0. (#137)

0.4.1 (December 5, 2017)

Tested against Nengo versions 2.1.0-2.6.0.


  • Compatible with newest SciPy release (1.0.0). (#130)

0.4.0b (June 7, 2017)

Initial beta release of nengolib. Tested against Nengo versions 2.1.0-2.4.0.

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

nengolib-0.5.2.tar.gz (4.5 MB view hashes)

Uploaded Source

Built Distribution

nengolib-0.5.2-py2.py3-none-any.whl (117.7 kB view hashes)

Uploaded Python 2 Python 3

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