Hi Ryan,


Sorry for taking so long to respond. A rebound current of the type you describe is probably better implemented in the neuron model itself than via synaptic input. Two NEST models you may want to consider are the amat2_psc_exp model based on the work by Yamauchi et al (https://doi.org/10.3389/fncom.2011.00042) or the glif_psc model family from the Allen Institute (DOI: 10.1038/s41467-017-02717-4).



Hans Ekkehard






Prof. Dr. Hans Ekkehard Plesser

Head, Department of Data Science


Faculty of Science and Technology

Norwegian University of Life Sciences

PO Box 5003, 1432 Aas, Norway


Phone +47 6723 1560

Email hans.ekkehard.plesser@nmbu.no

Home http://arken.nmbu.no/~plesser




On 02/05/2021, 09:18, "Charl Linssen" <nest-users@turingbirds.com> wrote:


Dear Ryan,


Two approaches spring to mind:


1. You can simulate your network up until the time that you want the weights to change, update the weights manually, then continue simulating. Something like:



nest.SetStatus(my_connections, {"w": 1.})



2. You can write a custom synapse model that is based on a simple existing model, for example, models/static_synapse.h. The send() method is where presynaptic spikes arriving at the synapse are handled and sent on to the postsynaptic partner; this is (probably) the only function that you need to modify. You can inspect the time of the spike in this context by


SpikeEvent e_spike = static_cast< SpikeEvent& >( e );

const Time& t_spike = e.get_stamp();


Then you can simply do an if..then..else on t_spike, and set the weight on the event (e.set_weight()) according to your desired function.


Hope this helps, otherwise do let us know!


Kind regards,

Charl Linssen



On Thu, Apr 29, 2021, at 19:40, Ryan Rahy wrote:

Dear all,


I am trying to build a network where one of the connection weights changes according to a given function. I'm specifically looking for a step function, such that the weight would stay constant at a negative value until a given time point, where it would suddenly change to positive value. As far as I can tell, the existing synaptic models with plasticity cannot do this.


I'm trying to do this in order to model a rebound effect, where a neuron fires after being released form an inhibitory current. This effect takes place over a time scale of seconds in the circuit I'm studying, so using an existing model with built-in GABA-mediated rebound doesn't do the trick.


So is there a way to manually change a connection weight during the simulation? If not, is there some other way I could achieve the same effect in NEST?


Thanks in advance!





NEST Users mailing list -- users@nest-simulator.org

To unsubscribe send an email to users-leave@nest-simulator.org