Skip to content

Commit

Permalink
v2.4.1
Browse files Browse the repository at this point in the history
  • Loading branch information
jougs committed Sep 30, 2015
1 parent dfa61d4 commit 8d9c02e
Show file tree
Hide file tree
Showing 31 changed files with 281 additions and 49 deletions.
4 changes: 2 additions & 2 deletions configure.ac.in
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
#

AC_PREREQ(2.52)
AC_INIT([nest], [2.4.0], [nest_user@nest-initiative.org])
AC_INIT([nest], [2.4.1], [nest_user@nest-initiative.org])

# Prevent automatic rebuilding of Makefile.ins and configure if their
# content or timestamp changes. Not doing this lead to failing builds
Expand All @@ -20,7 +20,7 @@ AM_MAINTAINER_MODE([disable])
# releasetools/buildnest
SLI_MAJOR=2
SLI_MINOR=4
SLI_PATCHLEVEL=0
SLI_PATCHLEVEL=1

SLI_PRGNAME="nest-$SLI_MAJOR.$SLI_MINOR.$SLI_PATCHLEVEL"
SLI_VERSION=$SLI_MAJOR.$SLI_MINOR.$SLI_PATCHLEVEL
Expand Down
2 changes: 1 addition & 1 deletion conngen/sli/conngen-interface.sli
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ def
} def

/CGConnect [/anytype] {
/Connect /synapse_model GetOption
/Connect /syn_spec GetOption /model get
CGConnect_main
} def

Expand Down
4 changes: 2 additions & 2 deletions examples/nest/Potjans_2014/README.txt
Original file line number Diff line number Diff line change
Expand Up @@ -23,9 +23,9 @@
Cortical microcircuit simulation: SLI version

This is an implementation of the multi-layer microcircuit model of early
sensory cortex published by Potjans and Diesmann (2012) The cell-type specific
sensory cortex published by Potjans and Diesmann (2014) The cell-type specific
cortical microcircuit: relating structure and activity in a full-scale spiking
network model. Cereb Cortex, online first.
network model. Cerebral Cortex: doi:10.1093/cercor/bhs358.


Files:
Expand Down
2 changes: 1 addition & 1 deletion models/iaf_chs_2007.h
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ namespace nest
References:
[1] Carandini M, Horton JC, Sincich LC (2007) Thalamic filtering of retinal
spike trains by postsynaptic summation. J Vis 7(14):20,1Ð11.
spike trains by postsynaptic summation. J Vis 7(14):20,1-11.
[2] Rotter S & Diesmann M (1999) Exact simulation of time-invariant linear
systems with applications to neuronal modeling. Biologial Cybernetics
81:381-402.
Expand Down
13 changes: 13 additions & 0 deletions pynest/nest/hl_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -420,6 +420,19 @@ def NumProcesses():
sr("NumProcesses")
return spp()

@check_stack
def SetNumRecProcesses(nrp):
"""
Set the number of recording MPI processes to nrp. Usually,
spike detectors are distributed over all processes and record
from local neurons only. If a number of processes is dedicated to
spike detection, each spike detector is hosted on one of these
processes and records globally from all simulating processes.
"""

sr("%d SetNumRecProcesses" % nrp)

@check_stack
def SetAcceptableLatency(port, latency):
"""
Expand Down
4 changes: 2 additions & 2 deletions releasetools/buildnest.sh
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ if ( $#argv != 0 ) then
exit 0
endif
else
set svndir="branches/nest-2.4/2.4.0"
set svndir="branches/nest-2.4/2.4.1"
set branch=""
endif

Expand Down Expand Up @@ -118,7 +118,7 @@ svn --quiet checkout $svn_id $nest_srcdir

# add svn revision number to tarball name
set svnver=`svnversion $nest_srcdir`
set patchlevel = "0"
set patchlevel = "1"

# move to nest_srcdir
cd $nest_srcdir
Expand Down
102 changes: 102 additions & 0 deletions testsuite/regressiontests/ticket-881.sli
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
/*
* ticket-881.sli
*
* This file is part of NEST.
*
* Copyright (C) 2004 The NEST Initiative
*
* NEST is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* NEST is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with NEST. If not, see <http://www.gnu.org/licenses/>.
*
*/

/* BeginDocumentation

Name: testsuite::ticket-881 - ConnectLayers creates too few connections under some conditions when running on multiple threads

Synopsis: (ticket-881) run -> NEST exits if test fails

Description:
This tests creates a small layer, connects it all-to-all and checks if all expected connections have been created.

This is a regression from nest-2.2.2 to 10kproject@r11284 (precise location unknown so far)
Author: Hans Ekkehard Plesser
*/


(unittest) run
/unittest using

/topology lookup not { exit_test_gracefully } if
using

M_ERROR setverbosity

/num_threads 4 def
/node_pos [ [0.0 0.0] [0.0 0.0] [0.0 0.0] [0.0 0.0] ] def
/num_nodes node_pos length def

/num_expected num_nodes dup mul def % all to all

% Test 1: pairwise convergent
{
ResetKernel
0 << /local_num_threads num_threads >> SetStatus

<< /elements /iaf_neuron /positions node_pos >> CreateLayer
dup
<< /connection_type (convergent) >> ConnectLayers

<< >> GetConnections length num_expected eq
} assert_or_die

% Test 2: pairwise divergent
{
ResetKernel
0 << /local_num_threads num_threads >> SetStatus

<< /elements /iaf_neuron /positions node_pos >> CreateLayer
dup
<< /connection_type (divergent) >> ConnectLayers

<< >> GetConnections length num_expected eq
} assert_or_die

% Test 3: fixed fan-in
{
ResetKernel
0 << /local_num_threads num_threads >> SetStatus

<< /elements /iaf_neuron /positions node_pos >> CreateLayer
dup
<< /connection_type (convergent) /number_of_connections num_nodes >> ConnectLayers

<< >> GetConnections length num_expected eq
} assert_or_die

% Test 4: fixed fan-out
{
ResetKernel
0 << /local_num_threads num_threads >> SetStatus

<< /elements /iaf_neuron /positions node_pos >> CreateLayer
dup
<< /connection_type (divergent) /number_of_connections num_nodes >> ConnectLayers

<< >> GetConnections length num_expected eq
} assert_or_die



endusing
endusing
18 changes: 9 additions & 9 deletions topology/connection_creator_impl.h
Original file line number Diff line number Diff line change
Expand Up @@ -266,7 +266,7 @@ namespace nest
if (rng->drand() < kernel_->value(target.compute_displacement(iter->first, target_pos), rng)) {
double w, d;
get_parameters_(target.compute_displacement(iter->first, target_pos), rng, w, d);
connect_(iter->second, target_id, *tgt_it, target_thread, w, d, synapse_model_);
net_.connect(iter->second, target_id, *tgt_it, target_thread, w, d, synapse_model_);
}

}
Expand All @@ -281,7 +281,7 @@ namespace nest
continue;
double w, d;
get_parameters_(target.compute_displacement(iter->first,target_pos), rng, w, d);
connect_(iter->second, target_id, *tgt_it, target_thread, w, d, synapse_model_);
net_.connect(iter->second, target_id, *tgt_it, target_thread, w, d, synapse_model_);
}

}
Expand Down Expand Up @@ -315,7 +315,7 @@ namespace nest
if (rng->drand() < kernel_->value(target.compute_displacement(iter->first,target_pos), rng)) {
double w,d;
get_parameters_(target.compute_displacement(iter->first,target_pos), rng, w, d);
connect_(iter->second, target_id, *tgt_it, target_thread, w, d, synapse_model_);
net_.connect(iter->second, target_id, *tgt_it, target_thread, w, d, synapse_model_);
}
}

Expand All @@ -327,7 +327,7 @@ namespace nest
continue;
double w,d;
get_parameters_(target.compute_displacement(iter->first,target_pos), rng, w, d);
connect_(iter->second, target_id, *tgt_it, target_thread, w, d, synapse_model_);
net_.connect(iter->second, target_id, *tgt_it, target_thread, w, d, synapse_model_);
}

}
Expand Down Expand Up @@ -422,7 +422,7 @@ namespace nest
}
double w,d;
get_parameters_(source.compute_displacement(target_pos,positions[random_id].first), rng, w,d);
connect_(source_id, target_id, *tgt_it, target_thread, w, d, synapse_model_);
net_.connect(source_id, target_id, *tgt_it, target_thread, w, d, synapse_model_);
is_selected[random_id] = true;
}

Expand Down Expand Up @@ -451,7 +451,7 @@ namespace nest
index source_id = positions[random_id].second;
double w,d;
get_parameters_(source.compute_displacement(target_pos,positions[random_id].first), rng, w,d);
connect_(source_id, target_id, *tgt_it, target_thread, w, d, synapse_model_);
net_.connect(source_id, target_id, *tgt_it, target_thread, w, d, synapse_model_);
is_selected[random_id] = true;
}

Expand Down Expand Up @@ -520,7 +520,7 @@ namespace nest
Position<D> source_pos = (*positions)[random_id].first;
double w,d;
get_parameters_(source.compute_displacement(target_pos,source_pos), rng, w,d);
connect_(source_id, target_id, *tgt_it, target_thread, w, d, synapse_model_);
net_.connect(source_id, target_id, *tgt_it, target_thread, w, d, synapse_model_);
is_selected[random_id] = true;
}

Expand Down Expand Up @@ -549,7 +549,7 @@ namespace nest
Position<D> source_pos = (*positions)[random_id].first;
double w,d;
get_parameters_(source.compute_displacement(target_pos,source_pos), rng, w,d);
connect_(source_id, target_id, *tgt_it, target_thread, w, d, synapse_model_);
net_.connect(source_id, target_id, *tgt_it, target_thread, w, d, synapse_model_);
is_selected[random_id] = true;
}

Expand Down Expand Up @@ -627,7 +627,7 @@ namespace nest
Node* target_ptr = net_.get_node(target_id);
double w,d;
get_parameters_(target_displ, net_.get_grng(), w,d);
connect_(source_id, target_id, target_ptr, target_ptr->get_thread(), w, d, synapse_model_);
net_.connect(source_id, target_id, target_ptr, target_ptr->get_thread(), w, d, synapse_model_);
is_selected[random_id] = true;
}

Expand Down
Binary file modified topology/doc/Topology_UserManual.pdf
Binary file not shown.
11 changes: 6 additions & 5 deletions topology/doc/Topology_UserManual.tex
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@
Håkon Enger\\[1ex]
\normalsize Department of Mathematical Sciences and Technology\\\normalsize Norwegian University of Life Sciences\\
\normalsize 1432 Ås, Norway}
\date{NEST 2.2 (r9977 or later)\\[8cm]
\date{NEST 2.2 and 2.4 (r9977 or later)\\[8cm]
\centerline{\includegraphics{nest-initiative-logo}}}


Expand All @@ -106,14 +106,15 @@
For NEST 2.2, Håkon Enger rewrote most of the Topology library code,
thereby improving performance considerably.

This User Manual describes the NEST 2.2 version of the NEST Topology
Library. Please see Chapter~\ref{sec:changes} for a summary of changes.
This User Manual describes the NEST 2.2 and 2.4 versions of the NEST Topology
Library. Please see Chapter~\ref{sec:changes} for a summary of
changes to 2.2. There are no changes in Topology from 2.2 to 2.4.

We plan further improvements to the Topology Module in the future,
which may include changes to the API to remove some of the remaining
inconsistencies and provide a cleaner user interface.

\vspace*{\fill}{\centerline{\footnotesize{Copyright \copyright{} 2010 The NEST Initiative}}}
\vspace*{\fill}{\centerline{\footnotesize{Copyright \copyright{} 2004 The NEST Initiative}}}
\end{abstract}

\tableofcontents
Expand All @@ -138,7 +139,7 @@ \chapter{Introduction}\label{sec:intro}
for details; where appropriate, that documentation also points to
relevant SLI documentation.

This manual describes the Topology Module included with NEST~2.2, code
This manual describes the Topology Module included with NEST~2.2 and~2.4, code
revision 9977 or later. This version differs from older ones in some
important aspects as detailed in Section~\ref{sec:changes}. In our
experience, though, most scripts using the Topology Module can be
Expand Down
8 changes: 4 additions & 4 deletions topology/doc/make_manual.sh
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,10 @@ rm -f ${fname}.{aux,bbl,blg,idx,ilg,ins,lof,log,lot,pdf,synctex.gz,toc}
rm -f user_manual_figures/*
rm -f user_namual_scripts/*.log

# Run scripts
# Run scripts / -u ensures unbuffered output
cd user_manual_scripts
${PYTHON} layers.py > layers.log
${PYTHON} connections.py > connections.log
${PYTHON} -u layers.py > layers.log
${PYTHON} -u connections.py > connections.log
cd ..

# Do the LaTeX Dance
Expand All @@ -31,4 +31,4 @@ ${LATEX} ${fname}
${LATEX} ${fname}

# remove temporary files
rm -f ${fname}.{aux,bbl,blg,idx,ilg,ind,ins,lof,log,lot,synctex.gz,toc}
rm -f ${fname}.{aux,bbl,blg,idx,ilg,ind,ins,lof,log,lot,synctex.gz,toc}
Binary file modified topology/doc/user_manual_figures/conn1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified topology/doc/user_manual_figures/conn2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified topology/doc/user_manual_figures/conn3.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified topology/doc/user_manual_figures/conn4.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified topology/doc/user_manual_figures/conn5.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified topology/doc/user_manual_figures/conn6.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified topology/doc/user_manual_figures/conn_3d.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified topology/doc/user_manual_figures/layer1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified topology/doc/user_manual_figures/layer2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified topology/doc/user_manual_figures/layer3.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified topology/doc/user_manual_figures/layer3a.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified topology/doc/user_manual_figures/layer4.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified topology/doc/user_manual_figures/layer4_3d.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified topology/doc/user_manual_figures/player.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified topology/doc/user_manual_figures/vislayer.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit 8d9c02e

Please sign in to comment.