sT_pre,prev_sT_pre and sT_post, prev_sT_post in GeNN seem strange! #614
Replies: 2 comments 4 replies
-
I'm afraid they are indeed a bit strange. Key things are:
Hope that makes sense - I'm afraid this bit of GeNN is complex and a little confusing! |
Beta Was this translation helpful? Give feedback.
-
They are actually both updated after all synapse code has run but, yes, this is basically correct.
I'm not quite sure what you mean. The key thing to remember is that each of the code strings in the weight update model is intended to update the synapse variables from the time of the last event of any kind to the current time. Specifically (and assuming you're talking about the code in https://github.com/BrainsOnBoard/pygenn_paper ):
This will be the case if a presynaptic spike hasn't occured in the current timestep
What exactly is "that problem"? |
Beta Was this translation helpful? Give feedback.
-
Hello!
I'm trying to understand your pavlovian conditioning code and I have a question in sT_pre,prev_sT_pre,sT_post,and prev_sT_post, the values used in the GeNN model.
According to my understanding, sT_pre and sT_post mean latest spiking time in presynaptic neuron and postsynaptic neuron respectively, and prev_sT_pre and prev_sT_post means previous spiking time.
But, when I tried to see the value of them using "std::cout<<$(sT_pre)<<std::endl;" in sim_code and learn_post_code in "create_custom_weight_update_class", I found the values seemed stranged.(I used pygenn)
To be specific, when I checked the value of "sT_pre" and "prev_sT_pre" in "learn_post_code", the two values were same. Also, when I checked the value of "sT_post" and "prev_sT_post" in "sim_code", the two values were same!(I mean sT_pre and prev_sT_pre had same value and similar for post)
I thought using std::cout can influence the value saved in sT_pre or other.
So I checked the values of them directly by using "pull_spike_times_from_device()" and "pull_prev_spike_times_from_device()".
And by seeing them, I could know error can happen when we called the values of sT_pre and prev_sT_pre in learn_post_code and vice versa(sT_post and prev_sT_post in sim_code).
Besides, another problem happened. When I gave nonzero axonal time delay in "add_synapse_population" and tried to check the value of sT_pre and prev_sT_pre in sim_code, where no error happened in no time delay situation, the two values were same!.
What is the problem and can't I use this code for time delay situation?
(At first, I thought my simulation setting can be the reason, but the same error happened when I did same for other neural network system)
Beta Was this translation helpful? Give feedback.
All reactions