= PyNN = PyNN (''pronounced 'pine' '') is a is a simulator-independent language for building neuronal network models. In other words, you can write the code for a model once, using the PyNN API and the [http://www.python.org Python] programming language, and then run it without modification on any simulator that PyNN supports (currently [http://www.neuron.yale.edu/neuron/ NEURON], [http://www.nest-initiative.org/?page=Software NEST], [http://sourceforge.net/projects/pcsim/ PCSIM] and [http://briansimulator.org/ Brian]). The [wiki:API] has two parts, a '''[wiki:LowLevelAPI low-level, procedural API]''', similar to that in PyNEST (functions create(), connect(), set(), record(), record_v()), and a '''[wiki:HighLevelAPI high-level, object-oriented API]''' (classes Population and Projection, which have methods like set(), record(), setWeights(), etc.). The low-level API is good for small networks, and perhaps gives more flexibility. The high-level API is good for hiding the details and the book-keeping, allowing you to concentrate on the overall structure of your model. The other thing that is required to write a model once and run it on multiple simulators is '''[wiki:StandardModels standard cell models]'''. PyNN translates standard cell-model names and parameter names into simulator-specific names, e.g. standard model `IF_curr_alpha` is `iaf_neuron` in NEST and `StandardIF` in NEURON, while `SpikeSourcePoisson` is a `poisson_generator` in NEST and a `NetStim` in NEURON. Only a few cell models have been implemented so far. Even if you don't wish to run simulations on multiple simulators, you may benefit from writing your simulation code using PyNN's powerful, high-level interface. In this case, you can use any neuron or synapse model supported by your simulator, and are not restricted to the standard models. PyNN is a work in progress, but is already being used for several large-scale simulation projects. '''[wiki:Download Download]''' the current stable release of the API (0.6), or get the development version from the [https://neuralensemble.org/svn/PyNN/trunk Subversion repository]. The code is released under the [http://www.cecill.info/ CeCILL licence]. == [wiki:UsersGuide Users' Guide] == * [wiki:Installation Download and Install] * [wiki:LowLevelAPI Neurons and Connections] * [wiki:HighLevelAPI Populations and Projections] * [wiki:StandardModels Standardised neuron models] * [wiki:DynamicSynapses Synaptic plasticity] * [wiki:Parallel Running parallel simulations] * [wiki:FileFormats File formats] * [wiki:Examples] * [wiki:API API documentation] == Citing PyNN == If you publish work using or mentioning PyNN, we would appreciate it if you would cite the following paper: Davison AP, BrĂ¼derle D, Eppler JM, Kremkow J, Muller E, Pecevski DA, Perrinet L and Yger P (2008) PyNN: a common interface for neuronal network simulators. Front. Neuroinform. doi:10.3389/neuro.11.011.2008 http://www.frontiersin.org/neuroinformatics/paper/10.3389/neuro.11/011.2008/ == Presentations and Posters == * [https://neuralensemble.org/trac/PyNN/browser/doc/poster/tags/INCF2008/poster_PyNN_incf2008.pdf?format=raw Poster] presented at [http://www.neuroinformatics2008.org/ Neuroinformatics 2008] * [https://neuralensemble.org/meetings/talks/CodeJam2_Davison_PyNN.pdf Presentation] given at [https://neuralensemble.org/meetings/CodeJam2.html FACETS CodeJam #2] also see the [wiki:Publications list of publications] about, relating to or using PyNN. == Questions/Bugs/Enhancements == If you find a bug in PyNN, or wish to request a new feature, please click on "New Ticket" in the menu above and fill in the form. If you have questions or comments about PyNN, please post a message in the "pynn-users" or "pynn-developers" forums in the [http://groups.google.com/group/neuralensemble NeuralEnsemble Google group]. You can also e-mail [http://www.andrewdavison.info Andrew Davison], but it is better to post on the forums. If you are not a member of !NeuralEnsemble, go to http://groups.google.com/group/neuralensemble and click on the "Apply for membership" link. Information about this Trac server: * TracGuide -- Built-in Documentation * [http://trac.edgewall.org/ The Trac project] -- Trac Open Source Project * [http://trac.edgewall.org/wiki/TracFaq Trac FAQ] -- Frequently Asked Questions * TracSupport -- Trac Support * For a complete list of local wiki pages, see TitleIndex. == The Neural Ensemble Ring == Related projects at http://neuralensemble.org: * [http://neuralensemble.org/trac/NeuroTools NeuroTools] -- a set of tools written in Python to manage, store and analyze computational neuroscience simulations. == Acknowledgments == [[Image(FACETS:facetslogoweb.gif)]] PyNN development is supported in part by the EU under the grant IST-2005-15879 ([http://www.facets-project.org FACETS]) .