Remove the workaround in the test suite that was necessary because numpy
1.7.0 did not play nicely with Python 2, numpy 1.7.1 has been released.
Use the newest numpy version available (some travis instances seem to
still have 1.7.0 preinstalled).
Start implementing a linear state updater
Give state updaters access to namespace and specifiers
Add a "constant" attribute to some specifiers to distinguish for example
dt (which does not change during a run) from t (which changes every
timestep).
Determine whether linear integration can be used, make sure that the
coefficient matrix only contains constants.
Update tests to include the linear state updater
Rename "integration" module to "explicit" -- all state updaters
integrate the equations
Add some docstrings to the "exact" module
Correct a Brian1 import that sneaked in.
Correct linear state updater for equations with multiple state
variables: Do not update the true state variables until all update steps
are calculated
Added analyse_identifiers
Simplify namespace handling by using analyse_identifiers
Rename internally used functions to make clear they are not for general
use.
Add more tests for the linear state updater.
Start implementing the new run system, prepare() is replaced by
pre_run() and post_run()
New namespace system: If a NeuronGroup does not have an explicit
namespace defined during its creation, the namespace surrounding or
provided to the run function will be used.
Fix a couple of small issues and adapt the test suite.
Add some documentation of the new namespace system.
Let functions and units take precedence over all other namespaces