[Du mottar ikke ofte e-post fra xotazu@cvc.uab.cat. Finn ut hvorfor dette er viktig på
https://aka.ms/LearnAboutSenderIdentification ]
Hi Hans,
Great news to be able to call GetConnections() just once ... it speedsA LOT my runnings (from 230-ish seconds to 90-ish) :-)
I tried the Prepare/Run/Cleanup some time ago (nice solution), but since I have to use SetStatus() to update normalized weights between Prepare() and Cleanup(), I cannot use it :-(
Best,
Xavier
Hans Ekkehard Plesser wrote:
> Hi Xavier,
>
> The result of `GetConnections()` remains valid as long as no new synapses are added or
> synapses deleted, so in your case, you only need to call it once.
> When you then do a `conn.weight`, you will get the weights at that point in time. But note
> that NEST only updates synaptic weights when a spike actually passes through the synapse,
> so you will get for each synapse the weight as it was at the end of the plasticity update
> when the most recent spike passed through that synapse.
>
> Instead of calling Simulate() repeatedly, you can also use a RunManager context for higher
> efficiency, see
>
https://nest-simulator.readthedocs.io/en/stable/nest_behavior/running_simul….
>
> In case you should be wondering why global instantaneous normalization is so cumbersome in
> NEST: We have focused on support for biologically plausible networks so far and
> instantaneous global normalization is just not biologically plausible (nor physically
> feasible with a view to causality).
>
> Best,
> Hans Ekkehard
>
> --
>
> Prof. Dr. Hans Ekkehard Plesser
>
> 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<mailto:hans.ekkehard.plesser@nmbu.no>
> Home http://arken.nmbu.no/~plesser
>
>
>
> From: Xavier Otazu <xotazu(a)cvc.uab.cat>
> Date: Thursday, 8 February 2024 at 19:46
> To: users(a)nest-simulator.org <users(a)nest-simulator.org>
> Subject: [NEST Users] Re: Weights assignment error with mpirun
> [Du mottar ikke ofte e-post fra xotazu(a)cvc.uab.cat. Finn ut hvorfor dette er viktig p?
> https://aka.ms/LearnAboutSenderIdentification ]
>
> Hi Hans,
>
> Thanks for your information. Fortunately, I do not normalize output connections (only
> input), hence, this code works for me.
>
> Another question. Take that I call nest.Simulate() inside a for loop and I want to
> normalize weights after every iteration. In order to avoid calling GetConnections() for
> every loop iteration, may I get the connections calling GetConnections() just once? May I
> safely suppose that after every Simulate() new weights of my connections (they are changed
> because I use STDP) will be available (for reading) using the same variable? An example
> code would be something like:
>
> my_conn = GetConnections(...)
>
> for iter in range(...)
> nest.Simulate(...)
> normalize_connections(my_conn) # function that normalizes weights and calls
> nest.SetStatus(my_conn, ...)
>
>
> Many thanks in advance!
>
> Xavier
> _______________________________________________
> NEST Users mailing list -- users(a)nest-simulator.org
> To unsubscribe send an email to users-leave(a)nest-simulator.org
_______________________________________________
NEST Users mailing list -- users@nest-simulator.org
To unsubscribe send an email to users-leave@nest-simulator.org