Join GitHub today
Extended rate-model framework #858
This PR extends the functionality of the rate-model framework by several options that are needed to for more complex rate models. All extensions and changes are implement such that previous simulation scripts do not need to be adjusted and all added models are actually needed in ongoing projects. The credit of this PR mostly belongs to @MSenden
I have a few minor suggestions regarding naming of models and definitions of parameters and their defaults.
In addition, I have two main points concerning this PR (details: see comments in files):
Is the new model 'parrot_rate_neuron' necessary as a separate class? Is the name maybe misleading as its output is a transformed version of its input? I would also like to see what @heplesser thinks about this issue.
I have the feeling that the splitting into excitatory and inhibitory inputs in rate_neuron_ipn/opn changes the neuron behavior for linear_summation=True with respect to the implementation in nest::master. Please check whether my intuition is correct. If so, you would need to find another way of implementing this, as your proposal is a bit unintuitive because excitatory and inhibitory inputs would not be summed linearly for linear_summation=True. This actually would mean that many neuron models would not be captured anymore by the template class. I hope that I am wrong ;)
@ddahmen Thank you for the careful review. I resolved some of your requests with the two new commits. Regarding some other points I replied to your comments and wait for further input from you, the second reviewer @heplesser or @MSenden.
I will think about how to resolve the inconsistency/loss of functionality due to the input splitting/multiplicative coupling.
@heplesser Thank you for the careful review! I addressed all your comments, please have another look.
The inconsistency was removed with one of the commits following on Davids suggestion: Now the behavior is completely consistent with NEST 2.14.0 (in case of non-multiplicative coupling - which is the only coupling available in 2.14.0 - the exc+inh input is summed up before the nonlinearity is applied).