![]() |
GeNN
4.9.0
GPU enhanced Neuronal Networks (GeNN)
|
#include <neuronModels.h>
Public Types | |
typedef Snippet::ValueBase< 4 > | ParamValues |
typedef Models::VarInitContainerBase< 2 > | VarValues |
typedef Models::VarInitContainerBase< 0 > | PreVarValues |
typedef Models::VarInitContainerBase< 0 > | PostVarValues |
![]() | |
typedef std::vector< Var > | VarVec |
typedef std::vector< VarRef > | VarRefVec |
typedef std::vector< EGPRef > | EGPRefVec |
![]() | |
typedef std::vector< std::string > | StringVec |
typedef std::vector< EGP > | EGPVec |
typedef std::vector< ParamVal > | ParamValVec |
typedef std::vector< DerivedParam > | DerivedParamVec |
Public Member Functions | |
virtual std::string | getSimCode () const override |
Gets the code that defines the execution of one timestep of integration of the neuron model. More... | |
virtual std::string | getThresholdConditionCode () const override |
Gets code which defines the condition for a true spike in the described neuron model. More... | |
virtual StringVec | getParamNames () const override |
Gets names of of (independent) model parameters. More... | |
virtual VarVec | getVars () const override |
Gets names and types (as strings) of model variables. More... | |
virtual EGPVec | getExtraGlobalParams () const override |
![]() | |
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... | |
![]() | |
size_t | getVarIndex (const std::string &varName) const |
Find the index of a named variable. More... | |
![]() | |
virtual | ~Base () |
virtual DerivedParamVec | getDerivedParams () const |
size_t | getExtraGlobalParamIndex (const std::string ¶mName) const |
Find the index of a named extra global parameter. More... | |
Static Public Member Functions | |
static const NeuronModels::Poisson * | getInstance () |
Additional Inherited Members | |
![]() | |
void | updateHash (boost::uuids::detail::sha1 &hash) const |
void | validate () const |
Validate names of parameters etc. More... | |
![]() | |
void | updateHash (boost::uuids::detail::sha1 &hash) const |
void | validate () const |
Validate names of parameters etc. More... | |
![]() | |
template<typename T > | |
static size_t | getNamedVecIndex (const std::string &name, const std::vector< T > &vec) |
Poisson neurons.
Poisson neurons have constant membrane potential (Vrest
) unless they are activated randomly to the Vspike
value if (t- spikeTime
) > trefract
.
It has 2 variables:
V
- Membrane potential (mV)spikeTime
- Time at which the neuron spiked for the last time (ms)and 4 parameters:
trefract
- Refractory period (ms)tspike
- duration of spike (ms)Vspike
- Membrane potential at spike (mV)Vrest
- Membrane potential at rest (mV)Poisson
type needs two entries for V
, and spikeTime
and the parameter array needs four entries for trefract
, tspike
, Vspike
and Vrest
, in that order. It has two extra global parameters:
firingProb
- an array of firing probabilities/ average rates; this can extend to offset
- an unsigned integer that points to the start of the currently used input pattern; typically taking values of DT
, i.e. the probability of firing is DT
: firingProb
. This approximation is usually very good, especially for typical, quite small time steps and moderate firing rates. However, it is worth noting that the approximation becomes poor for very high firing rates and large time steps. typedef Snippet::ValueBase< 4 > NeuronModels::Poisson::ParamValues |
|
inlineoverridevirtual |
Gets names and types (as strings) of additional per-population parameters for the snippet
Reimplemented from Snippet::Base.
|
inlinestatic |
|
inlineoverridevirtual |
Gets names of of (independent) model parameters.
Reimplemented from Snippet::Base.
|
inlineoverridevirtual |
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 from NeuronModels::Base.
|
inlineoverridevirtual |
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 from NeuronModels::Base.
|
inlineoverridevirtual |
Gets names and types (as strings) of model variables.
Reimplemented from Models::Base.