Skip to content

Commit 78caf5f

Browse files
authored
Merge pull request #3759 from jessica-mitchell/fix-sli
Remove last mentions of SLI
2 parents 8a59255 + 37eebd9 commit 78caf5f

11 files changed

Lines changed: 38 additions & 56 deletions

File tree

cmake/ProcessOptions.cmake

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -173,9 +173,8 @@ function( NEST_PROCESS_STATIC_LIBRARIES )
173173

174174
# Note: "$ORIGIN" (on Linux) and "@loader_path" (on MacOS) are not CMake variables, but special keywords for the
175175
# Linux resp. the macOS dynamic loader. They refer to the path in which the object is located, e.g.
176-
# ``${CMAKE_INSTALL_PREFIX}/bin`` for the nest and sli executables, ``${CMAKE_INSTALL_PREFIX}/lib/nest`` for all
177-
# dynamic libraries except PyNEST (libnestkernel.so, etc.), and something like
178-
# ``${CMAKE_INSTALL_PREFIX}/lib/python3.x/site-packages/nest`` for ``pynestkernel.so``. The RPATH is relative to
176+
# ``${CMAKE_INSTALL_PREFIX}/bin`` for helper scripts and something like
177+
# ``${CMAKE_INSTALL_PREFIX}/lib/python3.x/site-packages/nest`` for ``nestkernel_api.so``. The RPATH is relative to
179178
# this origin, so the binary ``bin/nest`` can find the files in the relative location ``../lib/nest``, and
180179
# similarly for PyNEST and the other libraries. For simplicity, we set all the possibilities on all generated
181180
# objects.

doc/fulldoc.conf.in

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -746,13 +746,11 @@ WARN_LOGFILE = doxygen.log
746746
INPUT = @PROJECT_SOURCE_DIR@/README.md \
747747
@PROJECT_SOURCE_DIR@/doc \
748748
@PROJECT_SOURCE_DIR@/examples \
749-
@PROJECT_SOURCE_DIR@/lib \
750749
@PROJECT_SOURCE_DIR@/libnestutil \
751750
@PROJECT_SOURCE_DIR@/models \
752751
@PROJECT_SOURCE_DIR@/nest \
753752
@PROJECT_SOURCE_DIR@/nestkernel \
754753
@PROJECT_SOURCE_DIR@/pynest \
755-
@PROJECT_SOURCE_DIR@/sli \
756754
@PROJECT_SOURCE_DIR@/testsuite
757755

758756
# This tag can be used to specify the character encoding of the source files

doc/htmldoc/tutorials/music_tutorial/music_tutorial_1.rst

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,14 +29,14 @@ A Quick Introduction to NEST and MUSIC
2929
--------------------------------------
3030

3131
In this tutorial, we will show you how to use the MUSIC library together
32-
with NEST. We will cover how to use the library from PyNEST and from the
33-
SLI language interface. In addition, we'll introduce the use of MUSIC in
32+
with NEST. We will cover how to use the library from PyNEST. In addition,
33+
we'll introduce the use of MUSIC in
3434
a C++ application and how to connect such an application to a NEST
3535
simulation.
3636

3737
Our aim is to show practical examples of how to use MUSIC, and
3838
highlight common pitfalls that can trip the unwary. Also, we assume only
39-
a minimal knowledge of Python, C++ and (especially) SLI, so the examples
39+
a minimal knowledge of Python and C++, so the examples
4040
will favour clarity and simplicity over elegance and idiomatic
4141
constructs.
4242

libnestutil/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
# `libnestutil` folder
22

3-
General purpose auxiliary library used by SLI and NEST. This library contains the memory allocator and helpers for handling threads, debugging, numerics and reference counted pointers. This directory basically contains all files that do not fit anywhere else.
3+
General-purpose auxiliary library used by NEST. This library provides the `Dictionary` class, the memory allocator and helpers for handling numerics, strings and debugging.

models/iaf_psc_alpha_ps.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -359,7 +359,7 @@ nest::iaf_psc_alpha_ps::update( Time const& origin, const long from, const long
359359
{
360360
// If we use S_.V_m_ * std::exp( -V_.h_ms_ / P_.tau_m_ ) instead of
361361
// V_.expm1_tau_m_ * S_.V_m_ + S_.V_m_ here, the accuracy decreases,
362-
// see test_iaf_ps_dc_t_accuracy.sli for details.
362+
// see test_iaf_ps_dc_t_accuracy.py for details.
363363
S_.V_m_ = V_.P30_ * ( P_.I_e_ + S_.y_input_ ) + V_.P31_ex_ * S_.dI_ex_ + V_.P32_ex_ * S_.I_ex_
364364
+ V_.P31_in_ * S_.dI_in_ + V_.P32_in_ * S_.I_in_ + V_.expm1_tau_m_ * S_.V_m_ + S_.V_m_;
365365

models/iaf_psc_exp_ps.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -328,7 +328,7 @@ nest::iaf_psc_exp_ps::update( const Time& origin, const long from, const long to
328328
{
329329
// If we use S_.y2_ * std::exp( -V_.h_ms_ / P_.tau_m_ ) instead of
330330
// V_.expm1_tau_m_ * S_.y2_ + S_.y2_ here, the accuracy decreases,
331-
// see test_iaf_ps_dc_t_accuracy.sli for details.
331+
// see test_iaf_ps_dc_t_accuracy.py for details.
332332
S_.y2_ = V_.P20_ * ( P_.I_e_ + S_.y0_ ) + V_.P21_ex_ * S_.y1_ex_ + V_.P21_in_ * S_.y1_in_
333333
+ V_.expm1_tau_m_ * S_.y2_ + S_.y2_;
334334

models/iaf_psc_exp_ps_lossless.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -365,7 +365,7 @@ nest::iaf_psc_exp_ps_lossless::update( const Time& origin, const long from, cons
365365
{
366366
// If we use S_.y2_ * std::exp( -V_.h_ms_ / P_.tau_m_ ) instead of
367367
// V_.expm1_tau_m_ * S_.y2_ + S_.y2_ here, the accuracy decreases,
368-
// see test_iaf_ps_dc_t_accuracy.sli for details.
368+
// see test_iaf_ps_dc_t_accuracy.py for details.
369369
S_.y2_ = V_.P20_ * ( P_.I_e_ + S_.y0_ ) + V_.P21_ex_ * S_.I_syn_ex_ + V_.P21_in_ * S_.I_syn_in_
370370
+ V_.expm1_tau_m_ * S_.y2_ + S_.y2_;
371371

nestkernel/node.h

Lines changed: 21 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -80,23 +80,19 @@ class WeightOptimizer;
8080
* @ingroup user_interface
8181
*/
8282

83-
/** @BeginDocumentation
84-
85-
Name: Node - General properties of all nodes.
86-
87-
Parameters:
88-
frozen booltype - Whether the node is updated during simulation
89-
global_id integertype - The node ID of the node (cf. local_id)
90-
local booltype - Whether the node is available on the local process
91-
model literaltype - The model type the node was created from
92-
state integertype - The state of the node (see the help on elementstates
93-
for details)
94-
thread integertype - The id of the thread the node is assigned to (valid
95-
locally)
96-
vp integertype - The id of the virtual process the node is assigned
97-
to (valid globally)
98-
99-
SeeAlso: GetStatus, SetStatus, elementstates
83+
/**
84+
* General properties of all nodes.
85+
*
86+
* Parameters:
87+
* - frozen (bool) - Whether the node is updated during simulation
88+
* - global_id (int) - The node ID of the node (cf. local_id)
89+
* - local (bool) - Whether the node is available on the local process
90+
* - model (string) - The model type the node was created from
91+
* - state (int) - The state of the node (see elementstates for details)
92+
* - thread (int) - The id of the thread the node is assigned to (valid locally)
93+
* - vp (int) - The id of the virtual process the node is assigned to (valid globally)
94+
*
95+
* @see GetStatus, SetStatus
10096
*/
10197

10298
class Node
@@ -172,7 +168,7 @@ class Node
172168
*
173169
* Returns name of node model (e.g. "iaf_psc_alpha") as string.
174170
* This name is identical to the name that is used to identify
175-
* the model in the interpreter's model dictionary.
171+
* the model in the NEST model registry.
176172
*/
177173
std::string get_name() const;
178174

@@ -319,14 +315,13 @@ class Node
319315
* @defgroup status_interface Configuration interface.
320316
*
321317
* Functions and infrastructure, responsible for the configuration
322-
* of Nodes from the SLI Interpreter level.
323-
*
324-
* Each node can be configured from the SLI level through a named
325-
* parameter interface. In order to change parameters, the user
326-
* can specify name value pairs for each parameter. These pairs
327-
* are stored in a data structure which is called Dictionary.
328-
* Likewise, the user can query the configuration of any node by
329-
* requesting a dictionary with name value pairs.
318+
* of Nodes via the PyNEST API.
319+
*
320+
* Each node can be configured through a named parameter interface.
321+
* In order to change parameters, the user can specify name-value pairs
322+
* for each parameter. These pairs are stored in a data structure which
323+
* is called Dictionary. Likewise, the user can query the configuration
324+
* of any node by requesting a dictionary with name-value pairs.
330325
*
331326
* The configuration interface consists of four functions which
332327
* implement storage and retrieval of named parameter sets.

pynest/nest/lib/README.md

Lines changed: 5 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -3,24 +3,14 @@
33
Definition of high-level API of PyNEST.
44

55
This file defines the user-level functions of NEST's Python interface
6-
by mapping NEST/SLI commands to Python. Please try to follow these
6+
by mapping NEST commands to Python. Please try to follow these
77
rules:
88

9-
1. SLI commands have the same name in Python. This means that most
10-
function names are written in camel case, although the Python
11-
guidelines suggest to use lower case for function names. However,
12-
this way, it is easier for users to migrate from SLI to Python.
9+
1. Nodes are identified by their global IDs (node ID) by default.
1310

14-
2. Nodes are identified by their global IDs (node ID) by default.
15-
16-
3. node IDs are always represented by a NodeCollection, e.g.
11+
2. node IDs are always represented by a NodeCollection, e.g.
1712
NodeCollection(metadata=None, model=iaf_psc_alpha, size=10, first=1, last=10)
1813

19-
4. Commands that return a node ID must return it as NodeCollection.
20-
21-
5. When possible, loops over nodes should be propagated down to the
22-
SLI level. This minimizes the number of Python<->SLI conversions
23-
and increases performance. Loops in SLI are also faster than in
24-
Python.
14+
3. Commands that return a node ID must return it as NodeCollection.
2515

26-
6. If you have a *very* good reason, you may deviate from these guidelines.
16+
4. If you have a *very* good reason, you may deviate from these guidelines.

pynest/nest/lib/hl_api_connection_helpers.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ def _process_syn_spec(syn_spec, conn_spec, prelength, postlength, use_connect_ar
141141
def _process_spatial_projections(conn_spec, syn_spec):
142142
"""
143143
Processes the connection and synapse specifications to a single dictionary
144-
for the SLI function `ConnectLayers`.
144+
for the spatial ``connect_layers`` C++ function.
145145
"""
146146
allowed_conn_spec_keys = [
147147
"mask",
@@ -212,7 +212,7 @@ def _process_spatial_projections(conn_spec, syn_spec):
212212

213213

214214
def _connect_layers_needed(conn_spec, syn_spec):
215-
"""Determins if connection has to be made with the SLI function `ConnectLayers`."""
215+
"""Determines if the connection must use the spatial ``connect_layers`` path."""
216216
if isinstance(conn_spec, dict):
217217
# If a conn_spec entry is based on spatial properties, we must use ConnectLayers.
218218
for key, item in conn_spec.items():

0 commit comments

Comments
 (0)