GeNN
4.9.0
GPU enhanced Neuronal Networks (GeNN)
|
Base class for all neuron models. More...
#include <neuronModels.h>
Public Member Functions | |
virtual std::string | getSimCode () const |
Gets the code that defines the execution of one timestep of integration of the neuron model. More... | |
virtual std::string | getThresholdConditionCode () const |
Gets code which defines the condition for a true spike in the described neuron model. More... | |
virtual std::string | getResetCode () const |
Gets code that defines the reset action taken after a spike occurred. This can be empty. More... | |
virtual std::string | getSupportCode () const |
Gets support code to be made available within the neuron kernel/funcion. More... | |
virtual Models::Base::ParamValVec | getAdditionalInputVars () const |
virtual bool | isAutoRefractoryRequired () const |
Does this model require auto-refractory logic? More... | |
boost::uuids::detail::sha1::digest_type | getHashDigest () const |
Update hash from model. More... | |
void | validate () const |
Validate names of parameters etc. More... | |
Public Member Functions inherited from Models::Base | |
virtual VarVec | getVars () const |
Gets names and types (as strings) of model variables. More... | |
size_t | getVarIndex (const std::string &varName) const |
Find the index of a named variable. More... | |
Public Member Functions inherited from Snippet::Base | |
virtual | ~Base () |
virtual StringVec | getParamNames () const |
Gets names of of (independent) model parameters. More... | |
virtual DerivedParamVec | getDerivedParams () const |
virtual EGPVec | getExtraGlobalParams () const |
size_t | getExtraGlobalParamIndex (const std::string ¶mName) const |
Find the index of a named extra global parameter. More... | |
Additional Inherited Members | |
Public Types inherited from Models::Base | |
typedef std::vector< Var > | VarVec |
typedef std::vector< VarRef > | VarRefVec |
typedef std::vector< EGPRef > | EGPRefVec |
Public Types inherited from Snippet::Base | |
typedef std::vector< std::string > | StringVec |
typedef std::vector< EGP > | EGPVec |
typedef std::vector< ParamVal > | ParamValVec |
typedef std::vector< DerivedParam > | DerivedParamVec |
Protected Member Functions inherited from Models::Base | |
void | updateHash (boost::uuids::detail::sha1 &hash) const |
void | validate () const |
Validate names of parameters etc. More... | |
Protected Member Functions inherited from Snippet::Base | |
void | updateHash (boost::uuids::detail::sha1 &hash) const |
void | validate () const |
Validate names of parameters etc. More... | |
Static Protected Member Functions inherited from Snippet::Base | |
template<typename T > | |
static size_t | getNamedVecIndex (const std::string &name, const std::vector< T > &vec) |
Base class for all neuron models.
|
inlinevirtual |
Gets names, types (as strings) and initial values of local variables into which the 'apply input code' of (potentially) multiple postsynaptic input models can apply input
boost::uuids::detail::sha1::digest_type NeuronModels::Base::getHashDigest | ( | ) | const |
Update hash from model.
|
inlinevirtual |
Gets code that defines the reset action taken after a spike occurred. This can be empty.
Reimplemented in NeuronModels::SpikeSourceArray, and NeuronModels::LIF.
|
inlinevirtual |
Gets the code that defines the execution of one timestep of integration of the neuron model.
The code will refer to for the value of the variable with name "NN". It needs to refer to the predefined variable "ISYN", i.e. contain , if it is to receive input.
Reimplemented in NeuronModels::TraubMilesNStep, NeuronModels::TraubMilesAlt, NeuronModels::TraubMilesFast, NeuronModels::TraubMiles, NeuronModels::PoissonNew, NeuronModels::Poisson, NeuronModels::SpikeSourceArray, NeuronModels::LIF, NeuronModels::Izhikevich, and NeuronModels::RulkovMap.
|
inlinevirtual |
Gets support code to be made available within the neuron kernel/funcion.
This is intended to contain user defined device functions that are used in the neuron codes. Preprocessor defines are also allowed if appropriately safeguarded against multiple definition by using ifndef; functions should be declared as "__host__ __device__" to be available for both GPU and CPU versions.
|
inlinevirtual |
Gets code which defines the condition for a true spike in the described neuron model.
This evaluates to a bool (e.g. "V > 20").
Reimplemented in NeuronModels::TraubMiles, NeuronModels::PoissonNew, NeuronModels::Poisson, NeuronModels::SpikeSourceArray, NeuronModels::SpikeSource, NeuronModels::LIF, NeuronModels::Izhikevich, and NeuronModels::RulkovMap.
|
inlinevirtual |
Does this model require auto-refractory logic?
void NeuronModels::Base::validate | ( | ) | const |
Validate names of parameters etc.