class NeuronModels::IzhikevichVariable

Overview

Izhikevich neuron with variable parameters izhikevich2003simple. More…

#include <neuronModels.h>

class IzhikevichVariable: public NeuronModels::Izhikevich
{
public:
    // typedefs

    typedef Snippet::ValueBase<0> ParamValues;
    typedef Models::VarInitContainerBase<6> VarValues;
    typedef Models::VarInitContainerBase<0> PreVarValues;
    typedef Models::VarInitContainerBase<0> PostVarValues;

    // methods

    static const NeuronModels::IzhikevichVariable* getInstance();
    virtual StringVec getParamNames() const;
    virtual VarVec getVars() const;
};

Inherited Members

public:
    // typedefs

    typedef std::vector<std::string> StringVec;
    typedef std::vector<EGP> EGPVec;
    typedef std::vector<ParamVal> ParamValVec;
    typedef std::vector<DerivedParam> DerivedParamVec;
    typedef std::vector<Var> VarVec;
    typedef Snippet::ValueBase<4> ParamValues;
    typedef Models::VarInitContainerBase<2> VarValues;
    typedef Models::VarInitContainerBase<0> PreVarValues;
    typedef Models::VarInitContainerBase<0> PostVarValues;

    // structs

    struct DerivedParam;
    struct EGP;
    struct ParamVal;
    struct Var;

    // methods

    virtual ~Base();
    virtual StringVec getParamNames() const;
    virtual DerivedParamVec getDerivedParams() const;
    virtual VarVec getVars() const;
    virtual EGPVec getExtraGlobalParams() const;
    size_t getVarIndex(const std::string& varName) const;
    size_t getExtraGlobalParamIndex(const std::string& paramName) const;
    virtual std::string getSimCode() const;
    virtual std::string getThresholdConditionCode() const;
    virtual std::string getResetCode() const;
    virtual std::string getSupportCode() const;
    virtual Models::Base::ParamValVec getAdditionalInputVars() const;
    virtual bool isAutoRefractoryRequired() const;
    static const NeuronModels::Izhikevich* getInstance();
    virtual std::string getSimCode() const;
    virtual std::string getThresholdConditionCode() const;
    virtual StringVec getParamNames() const;
    virtual VarVec getVars() const;

Detailed Documentation

Izhikevich neuron with variable parameters izhikevich2003simple.

This is the same model as Izhikevich but parameters are defined as “variables” in order to allow users to provide individual values for each individual neuron instead of fixed values for all neurons across the population.

Accordingly, the model has the Variables:

  • V - Membrane potential
  • U - Membrane recovery variable
  • a - time scale of U
  • b - sensitivity of U
  • c - after-spike reset value of V
  • d - after-spike reset value of U

and no parameters.

Methods

virtual StringVec getParamNames() const

Gets names of of (independent) model parameters.

virtual VarVec getVars() const

Gets names and types (as strings) of model variables.