nest / nestml

A domain specific language for neuron and synapse models in spiking neural network simulation
GNU General Public License v2.0
46 stars 45 forks source link

Remove "inhibitory" and "excitatory" spiking input port specifiers #944

Open clinssen opened 1 year ago

clinssen commented 1 year ago

Depends on #938.

"Excitatory" and "inhibitory" input port specifiers are confusing and should be eliminated.

Current sitation: if specifiers are present, spikes get "routed" to the right buffer depending on weight of the incoming event.

exc_spikes <- excitatory spike
inh_spikes <- inhibitory spike

(this example: actually only one in-port (one rport)

Behaviour is such that:

w < 0:
    gets routed to inh_spikes
w > 0:
    gets routed to exc_spikes

Proposal: change to multisynapse model (behavioural/API change), or preserve current situation by putting the check for the sign of the weight inside the onEvent() handler function.

in_spikes <- spikes

onEvent(in_spikes):
    if in_spikes < 0:
        g_syn_inh += 1
    else:
        g_syn_exc += 1