Skip to content

Commit 3392560

Browse files
author
Andrew Davison
committed
...aaand forgot to add this too.
1 parent cf9ae86 commit 3392560

1 file changed

Lines changed: 105 additions & 0 deletions

File tree

doc/releases/0.9.3.txt

Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,105 @@
1+
========================
2+
PyNN 0.9.3 release notes
3+
========================
4+
5+
December 4th 2018
6+
7+
Welcome to PyNN 0.9.3!
8+
9+
10+
NEST 2.16.0
11+
-----------
12+
13+
PyNN 0.9.3 now supports the latest version of NEST.
14+
15+
16+
Array-valued parameters
17+
-----------------------
18+
19+
The generalized integrate-and-fire model (:class:`GIF_cond_exp`) was added in version 0.8.3.
20+
This model has multiple mechanisms, each with multiple time constants,
21+
e.g. `tau_eta1`, `tau_eta2`, `tau_eta3`.
22+
To simplify parameterisation of such models, we now allow array-valued parameters,
23+
specified as a tuple, e.g. instead of:
24+
25+
.. code-block:: python
26+
27+
GIF_cond_exp(
28+
...
29+
tau_eta1=1.0, tau_eta2=10.0, tau_eta3=100.0
30+
...
31+
)
32+
33+
we now write:
34+
35+
.. code-block:: python
36+
37+
GIF_cond_exp(
38+
...
39+
tau_eta=(1.0, 10.0, 100.0)
40+
)
41+
42+
As for other parameter types, we can also specify inhomogeneous values across a population
43+
using lists of tuples, or generator functions.
44+
45+
Project governance and code of conduct
46+
--------------------------------------
47+
48+
In an attempt to follow best practices in the governance of open source software projects,
49+
we have adopted some :doc:`rules and guidelines </developers/governance>` concerning the rights
50+
and obligations of contributors and of maintainers, and of how we decide who will be a maintainer.
51+
52+
This includes a code of conduct for contributors and maintainers,
53+
aimed at fostering an open and welcoming environment.
54+
55+
Simplified use of random number generators
56+
------------------------------------------
57+
58+
Previously, a random number generator with `parallel_safe=False`
59+
would always draw a reduced number of values when run with >1 MPI processes,
60+
according to the number of processes, unless the `mask_local` parameter was set to False.
61+
62+
Now, a mask must be explicitly provided if you want to draw a reduced number of values
63+
(i.e. only those values consumed on that node).
64+
65+
If provided, the `mask` parameter (renamed from `mask_local`) should be a boolean or
66+
integer NumPy array, indicating that only a subset of the random numbers should be returned.
67+
68+
Example::
69+
70+
rng.next(5, mask=np.array([True, False, True, False, True]))
71+
72+
or::
73+
74+
rng.next(5, mask=np.array([0, 2, 4]))
75+
76+
will each return only three values.
77+
78+
If the rng is "parallel safe", an array of `n` values will be drawn from the rng,
79+
and the mask applied.
80+
If the rng is not parallel safe, the contents of the mask are disregarded, only its
81+
size (for an integer mask) or the number of True values (for a boolean mask)
82+
is used in determining how many values to draw.
83+
84+
85+
Support for NEURON "ARTIFICIAL_CELL" models
86+
-------------------------------------------
87+
88+
When using the NEURON simulator through PyNN, it is now possible to use "ARTIFICIAL_CELL" models,
89+
such as :class:`IntFire1`, :class:`IntFire2` and :class:`IntFire4`:
90+
91+
.. testcode:: nativemodel
92+
93+
from pyNN.neuron import setup, Population, IntFire1
94+
95+
setup()
96+
p1 = Population(10, IntFire1(tau=10.0, refrac=2.5))
97+
p1.record('m')
98+
99+
100+
Bug fixes and performance improvements
101+
--------------------------------------
102+
103+
A `number of bugs`_ have been fixed, and some performance optimizations have been made.
104+
105+
.. _`number of bugs`: https://github.com/NeuralEnsemble/PyNN/issues?q=is%3Aissue+milestone%3A0.9.3+is%3Aclosed

0 commit comments

Comments
 (0)