![]() |
GeNN
4.9.0
GPU enhanced Neuronal Networks (GeNN)
|
#include <neuronGroup.h>
Classes | |
| struct | SpikeEventThreshold |
| Structure used for storing spike event data. More... | |
Public Member Functions | |
| NeuronGroup (const NeuronGroup &)=delete | |
| NeuronGroup ()=delete | |
| void | setSpikeLocation (VarLocation loc) |
| Set location of this neuron group's output spikes. More... | |
| void | setSpikeEventLocation (VarLocation loc) |
| Set location of this neuron group's output spike events. More... | |
| void | setSpikeTimeLocation (VarLocation loc) |
| Set location of this neuron group's output spike times. More... | |
| void | setPrevSpikeTimeLocation (VarLocation loc) |
| Set location of this neuron group's previous output spike times. More... | |
| void | setSpikeEventTimeLocation (VarLocation loc) |
| Set location of this neuron group's output spike-like-event times. More... | |
| void | setPrevSpikeEventTimeLocation (VarLocation loc) |
| Set location of this neuron group's previous output spike-like-event times. More... | |
| void | setVarLocation (const std::string &varName, VarLocation loc) |
| Set variable location of neuron model state variable. More... | |
| void | setExtraGlobalParamLocation (const std::string ¶mName, VarLocation loc) |
| Set location of neuron model extra global parameter. More... | |
| void | setSpikeRecordingEnabled (bool enabled) |
| Enables and disable spike recording for this population. More... | |
| void | setSpikeEventRecordingEnabled (bool enabled) |
| Enables and disable spike event recording for this population. More... | |
| const std::string & | getName () const |
| unsigned int | getNumNeurons () const |
| Gets number of neurons in group. More... | |
| const NeuronModels::Base * | getNeuronModel () const |
| Gets the neuron model used by this group. More... | |
| const std::vector< double > & | getParams () const |
| const std::vector< Models::VarInit > & | getVarInitialisers () const |
| bool | isSpikeTimeRequired () const |
| bool | isPrevSpikeTimeRequired () const |
| bool | isSpikeEventTimeRequired () const |
| bool | isPrevSpikeEventTimeRequired () const |
| bool | isTrueSpikeRequired () const |
| bool | isSpikeEventRequired () const |
| unsigned int | getNumDelaySlots () const |
| bool | isDelayRequired () const |
| bool | isZeroCopyEnabled () const |
| VarLocation | getSpikeLocation () const |
| Get location of this neuron group's output spikes. More... | |
| VarLocation | getSpikeEventLocation () const |
| Get location of this neuron group's output spike events. More... | |
| VarLocation | getSpikeTimeLocation () const |
| Get location of this neuron group's output spike times. More... | |
| VarLocation | getPrevSpikeTimeLocation () const |
| Get location of this neuron group's previous output spike times. More... | |
| VarLocation | getSpikeEventTimeLocation () const |
| Get location of this neuron group's output spike-like-event times. More... | |
| VarLocation | getPrevSpikeEventTimeLocation () const |
| Get location of this neuron group's previous output spike-like-event times. More... | |
| VarLocation | getVarLocation (const std::string &varName) const |
| Get location of neuron model state variable by name. More... | |
| VarLocation | getVarLocation (size_t index) const |
| Get location of neuron model state variable by index. More... | |
| VarLocation | getExtraGlobalParamLocation (const std::string ¶mName) const |
| Get location of neuron model extra global parameter by name. More... | |
| VarLocation | getExtraGlobalParamLocation (size_t index) const |
| Get location of neuron model extra global parameter by omdex. More... | |
| bool | isSpikeRecordingEnabled () const |
| Is spike recording enabled for this population? More... | |
| bool | isSpikeEventRecordingEnabled () const |
| Is spike event recording enabled for this population? More... | |
| bool | isSimRNGRequired () const |
| Does this neuron group require an RNG to simulate? More... | |
| bool | isInitRNGRequired () const |
| Does this neuron group require an RNG for it's init code? More... | |
| bool | isRecordingEnabled () const |
| Does this neuron group require any sort of recording? More... | |
Protected Member Functions | |
| NeuronGroup (const std::string &name, int numNeurons, const NeuronModels::Base *neuronModel, const std::vector< double > ¶ms, const std::vector< Models::VarInit > &varInitialisers, VarLocation defaultVarLocation, VarLocation defaultExtraGlobalParamLocation) | |
| void | checkNumDelaySlots (unsigned int requiredDelay) |
| Checks delay slots currently provided by the neuron group against a required delay and extends if required. More... | |
| void | updatePreVarQueues (const std::string &code) |
| Update which presynaptic variables require queues based on piece of code. More... | |
| void | updatePostVarQueues (const std::string &code) |
| Update which postsynaptic variables require queues based on piece of code. More... | |
| void | addSpkEventCondition (const std::string &code, SynapseGroupInternal *synapseGroup) |
| void | addInSyn (SynapseGroupInternal *synapseGroup) |
| void | addOutSyn (SynapseGroupInternal *synapseGroup) |
| void | initDerivedParams (double dt) |
| void | fusePrePostSynapses (bool fusePSM, bool fusePrePostWUM) |
| Fuse incoming postsynaptic models. More... | |
| void | injectCurrent (CurrentSourceInternal *source) |
| add input current source More... | |
| const std::vector< SynapseGroupInternal * > & | getInSyn () const |
| Gets pointers to all synapse groups which provide input to this neuron group. More... | |
| const std::vector< SynapseGroupInternal * > & | getFusedPSMInSyn () const |
| const std::vector< SynapseGroupInternal * > & | getFusedWUPostInSyn () const |
| const std::vector< SynapseGroupInternal * > & | getOutSyn () const |
| Gets pointers to all synapse groups emanating from this neuron group. More... | |
| const std::vector< SynapseGroupInternal * > & | getFusedWUPreOutSyn () const |
| const std::vector< SynapseGroupInternal * > & | getFusedPreOutputOutSyn () const |
| const std::vector< CurrentSourceInternal * > & | getCurrentSources () const |
| Gets pointers to all current sources which provide input to this neuron group. More... | |
| const std::vector< double > & | getDerivedParams () const |
| const std::set< SpikeEventThreshold > & | getSpikeEventCondition () const |
| std::vector< SynapseGroupInternal * > | getFusedInSynWithPostCode () const |
| Helper to get vector of incoming synapse groups which have postsynaptic update code. More... | |
| std::vector< SynapseGroupInternal * > | getFusedOutSynWithPreCode () const |
| Helper to get vector of outgoing synapse groups which have presynaptic update code. More... | |
| std::vector< SynapseGroupInternal * > | getFusedInSynWithPostVars () const |
| Helper to get vector of incoming synapse groups which have postsynaptic variables. More... | |
| std::vector< SynapseGroupInternal * > | getFusedOutSynWithPreVars () const |
| Helper to get vector of outgoing synapse groups which have presynaptic variables. More... | |
| bool | isVarQueueRequired (const std::string &var) const |
| bool | isVarQueueRequired (size_t index) const |
| boost::uuids::detail::sha1::digest_type | getHashDigest () const |
| Updates hash with neuron group. More... | |
| boost::uuids::detail::sha1::digest_type | getInitHashDigest () const |
| Updates hash with neuron group initialisation. More... | |
| boost::uuids::detail::sha1::digest_type | getSpikeQueueUpdateHashDigest () const |
| boost::uuids::detail::sha1::digest_type | getPrevSpikeTimeUpdateHashDigest () const |
| boost::uuids::detail::sha1::digest_type | getVarLocationHashDigest () const |
|
delete |
|
delete |
|
protected |
|
inlineprotected |
|
inlineprotected |
|
protected |
|
protected |
Checks delay slots currently provided by the neuron group against a required delay and extends if required.
|
protected |
Fuse incoming postsynaptic models.
|
inlineprotected |
Gets pointers to all current sources which provide input to this neuron group.
|
inlineprotected |
| VarLocation NeuronGroup::getExtraGlobalParamLocation | ( | const std::string & | paramName | ) | const |
Get location of neuron model extra global parameter by name.
This is only used by extra global parameters which are pointers
|
inline |
Get location of neuron model extra global parameter by omdex.
This is only used by extra global parameters which are pointers
|
protected |
Helper to get vector of incoming synapse groups which have postsynaptic update code.
|
protected |
Helper to get vector of incoming synapse groups which have postsynaptic variables.
|
protected |
Helper to get vector of outgoing synapse groups which have presynaptic update code.
|
protected |
Helper to get vector of outgoing synapse groups which have presynaptic variables.
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
protected |
Updates hash with neuron group.
NOTE: this can only be called after model is finalized
|
protected |
Updates hash with neuron group initialisation.
NOTE: this can only be called after model is finalized
|
inlineprotected |
Gets pointers to all synapse groups which provide input to this neuron group.
|
inline |
|
inline |
Gets the neuron model used by this group.
|
inline |
|
inline |
Gets number of neurons in group.
|
inlineprotected |
Gets pointers to all synapse groups emanating from this neuron group.
|
inline |
|
inline |
Get location of this neuron group's previous output spike-like-event times.
|
inline |
Get location of this neuron group's previous output spike times.
|
protected |
|
inlineprotected |
|
inline |
Get location of this neuron group's output spike events.
|
inline |
Get location of this neuron group's output spike-like-event times.
|
inline |
Get location of this neuron group's output spikes.
|
protected |
|
inline |
Get location of this neuron group's output spike times.
|
inline |
| VarLocation NeuronGroup::getVarLocation | ( | const std::string & | varName | ) | const |
Get location of neuron model state variable by name.
|
inline |
Get location of neuron model state variable by index.
|
protected |
|
protected |
|
protected |
add input current source
|
inline |
| bool NeuronGroup::isInitRNGRequired | ( | ) | const |
Does this neuron group require an RNG for it's init code?
| bool NeuronGroup::isPrevSpikeEventTimeRequired | ( | ) | const |
| bool NeuronGroup::isPrevSpikeTimeRequired | ( | ) | const |
| bool NeuronGroup::isRecordingEnabled | ( | ) | const |
Does this neuron group require any sort of recording?
| bool NeuronGroup::isSimRNGRequired | ( | ) | const |
Does this neuron group require an RNG to simulate?
|
inline |
Is spike event recording enabled for this population?
| bool NeuronGroup::isSpikeEventRequired | ( | ) | const |
| bool NeuronGroup::isSpikeEventTimeRequired | ( | ) | const |
|
inline |
Is spike recording enabled for this population?
| bool NeuronGroup::isSpikeTimeRequired | ( | ) | const |
| bool NeuronGroup::isTrueSpikeRequired | ( | ) | const |
|
protected |
|
inlineprotected |
| bool NeuronGroup::isZeroCopyEnabled | ( | ) | const |
| void NeuronGroup::setExtraGlobalParamLocation | ( | const std::string & | paramName, |
| VarLocation | loc | ||
| ) |
Set location of neuron model extra global parameter.
This is ignored for simulations on hardware with a single memory space and only applies to extra global parameters which are pointers.
|
inline |
Set location of this neuron group's previous output spike-like-event times.
This is ignored for simulations on hardware with a single memory space
|
inline |
Set location of this neuron group's previous output spike times.
This is ignored for simulations on hardware with a single memory space
|
inline |
Set location of this neuron group's output spike events.
This is ignored for simulations on hardware with a single memory space
|
inline |
Enables and disable spike event recording for this population.
|
inline |
Set location of this neuron group's output spike-like-event times.
This is ignored for simulations on hardware with a single memory space
|
inline |
Set location of this neuron group's output spikes.
This is ignored for simulations on hardware with a single memory space
|
inline |
Enables and disable spike recording for this population.
|
inline |
Set location of this neuron group's output spike times.
This is ignored for simulations on hardware with a single memory space
| void NeuronGroup::setVarLocation | ( | const std::string & | varName, |
| VarLocation | loc | ||
| ) |
Set variable location of neuron model state variable.
This is ignored for simulations on hardware with a single memory space
|
protected |
Update which postsynaptic variables require queues based on piece of code.
|
protected |
Update which presynaptic variables require queues based on piece of code.