New alpha version of Brian 2

We are happy to announce another alpha release of Brian2 (version number 2.0a8). A significant amount of internal refactoring work has been done since the previous release and many bugs (in particular related to the new "standalone" mode) have been fixed. The release also adds the following user-visible changes:

  • The definition of variable namespaces is now finalized and follows a consistent approach, see the documentation for details
  • A variable marked as "unless refractory" in the equations is now completely clamped during refractoriness, i.e. it also ignores synaptic input, for example
  • Pre-defined constants (e.g. "e" or "pi") are now correctly understood in the symbolic analysis of equations
  • Parameters and subexpressions can be declared as "scalar", meaning that they should be stored/calculated as a single value for a whole group
  • Exact integration can now take place even for equations referring to a TimedArray, if the timestep of the TimedArray is a multiple of the simulation timestep
  • The internal calculation of TimedArray values is now more robust. The new approach entails a change in the semantics of TimedArray when its timestep is bigger than the simulation timestep. For more details see the documentation
  • Performance improvement for the Python-based SpikeQueue

Brian 2 is stabilizing and can already be used for quite a variety of network simulations. We ported a rather complex example from Brian 1 (synapses_barrelcortex.py) that shows a lot of Brian2's features in use.

As always, please report any comments to the brian-development mailing list or open an issue on the github repository.

How to get Brian2?

Brian2 is available on the python package index, therefore you can install it using easy_install or pip:

easy_install brian2 pip install brian 2 # for older versions of pip pip install --pre brian2 # for newer versions of pip Alternatively, you can directly download the package from the package index and install it yourself using python setup.py install (if you are using Python 2.x, simply running it from the source directory also works).

Finally, you can also clone the git repository at:
https://github.com/brian-team/brian2

Note that the package is called brian2, not brian, therefore it does not interfere with an existing Brian installation and trying out Brian2 will not affect your existing Brian simulations.

Documentation

You can find documentation for Brian2 at readthedocs: http://brian2.readthedocs.org

Note that the user documentation is still quite incomplete, you'll find a lot of information in the reference documentation, though.