Skip to content

NESTML 8.0.0

Latest
Compare
Choose a tag to compare
@clinssen clinssen released this 18 Dec 10:59
· 2 commits to master since this release

NESTML 8.0.0 contains simplifications in the language syntax and a more unambiguous definition of the semantics of language elements. It includes many improvements in documentation, bug fixes, as well as new tutorials.

  • Neuron and synapse models were combined into just "models". This means that the top-level keywords neuron and synapse should be replaced by model. In order to distinguish which is which, the model names should either end in the suffixes _neuron and _synapse, or alternatively, be passed in a list of neuron_models and synapse_models in the NEST code generator options (see https://nestml.readthedocs.io/en/latest/pynestml.codegeneration.html#pynestml.codegeneration.nest_code_generator.NESTCodeGenerator).
  • The deliver_spike() built-in function was replaced by emit_spike(), which is now used both by neuron and synapse.
  • Add explicit output parameters to spiking output ports: if emit_spike(foo, bar) is called, then the spiking output port should be parameterised by two parameters with types equal to (or castable to) those of foo and bar. (#1124)
  • Synapse models should also call integrate_odes() explicitly in the update block if ODEs are defined in the synapse model.
  • Variables corresponding to synaptic weight and delay should now be specified as code generator options rather than @nest::name annotations in the synapse model itself (#1044)
  • NEST Desktop is added as a new target platform (#802)
  • Improved third-factory plasticity using a more efficient spike-based buffer (#1078)
  • Add predefined timestep() function (#1100)
  • A new "pretty" code rendering feature (#1081)
  • Small improvements in use interface and error reporting (#1098, #1086)
  • Fix for STDP buffer logic (#1061, #1089)
  • Fix for spike threshold check in aeif models (#1096)
  • Compartmental neuron model vectorisation for improved runtime performance (#989)
  • integrate_odes() automatically integrates the dynamics for higher-order ODEs (#1139, #1147)
  • Added Bouhadjar sequence learning network tutorial (#1026)
  • Minimum Python version requirement is now 3.9 (#1138)