-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Modular neuron model #50
base: master
Are you sure you want to change the base?
Conversation
* Neurons are split into dynamics, input and threshold * Combined together using something resembling policy design pattern into ModularNeuron * Implemented if_curr_exp and if_cond_exp in this way
* In C++ member functions which are SYNTACTICALLY inline are inline * Static inline deprecated in C++
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM - just one comment regarding the merging of the currents (assume this will be shown).
static inline bool Update(MutableState &mutableState, const ImmutableState &immutableState, | ||
S1615 excInput, S1615 inhInput, S1615 extCurrent) | ||
static S1615 Update(MutableState &mutableState, const ImmutableState &immutableState, | ||
S1615 inputCurrent) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not sure that I would merge these currents prior to this point. Keeping them separate allows the possibility of having a merged-in-conductance model for example (we would have to provide a Raw input type which would look very like the Curr, and a Passive synapse type)
@rowleya this is my reimagining of the modular neuron stuff using templates. I'm pretty happy with it aside from the fact that it seems to be making the adaptive neuron way slower for no reason I can yet understand.