A more detailed analysis of Auryn's sparse matrix generation algorithm (details in: http://journal.frontiersin.org/article/ ... 76/full#h3, Section 2.4) revealed that there is a small systematic error which makes the matrices sparser than they should be. One source of error in the current implementation (which essentially draws exponential inter-connection-intervals in matrix element space, when building the sparse matrix) is the fact that intervals have to be >=1. i.e. we only allow one connection between two neurons. This introduces a small deviation in the connection rate which can be fixed easily by positively adjusting the mean of the exponential random number generator. The corrected rate lambda has to be: 1/(1/sparseness-1), and 1/(1/rate-dt) for PoissonGroup.

In the following I am plotting the number of EE connections in the example sim_isp_orig for 500 different random seeds as well as a Gaussian with the expected mean (black) and the expected variance for vanishingly low connection probabilities. Red shows the spike counts for the original simulation and in gray I am showing the patched code.
The plots illustrates that the effect is small, but measurable. The mean of the red data is significantly lower than the expected mean of 8000^2-8000=1.27984e6 (p=0.0006, T-test) whereas the patched version (gray) shows no significant deviation (p>0.8).

Because the effect is small and decreases with network size it won't matter in most practical cases. Since both distributions have significant overlap, existing studies looking at a small subset of networks will hardly be affected by this effect. For PoissonGroup or any groups derived from it the effect is even smaller due to the small time step. A fix will be included in the next Auryn release.