aEIFNeuronBase Class Reference

An aEIF (adaptive Exponential Integrate and Fire) neuron. More...

#include <aEIFNeuron.h>

Inheritance diagram for aEIFNeuronBase:

Inheritance graph
[legend]
Collaboration diagram for aEIFNeuronBase:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 aEIFNeuronBase (double a=4e-9, double b=0.0805e-9, double Vt=-50.6e-3, double Vr=-70.4e-3, double El=-70.4e-3, double gl=30e-9, double Cm=281e-12, double tau_w=144e-3, double slope=2e-3, double Vpeak=20.0e-3, double Vinit=-60.0e-3, double Inoise=0.0, double Iinject=0.0)
virtual ~aEIFNeuronBase ()
virtual int adjust (double dt)
 This tells the object that it should adjust to a new simulation time step width.
virtual int advance (AdvanceInfo const &)
 Advance the neuron.
virtual int reset (double dt)
 Reset the Izhi-Neuron.
bool refractoryQ ()
 Returns true iff the neuron is in its absolute refactory period.
virtual void clearSynapticInput (void)
virtual double getManagedDelay () const
virtual int nSpikeInputPorts () const
virtual int nSpikeOutputPorts () const
virtual int nAnalogInputPorts () const
virtual int nAnalogOutputPorts () const
virtual PortType outputPortType (port_t o) const
virtual PortType inputPortType (port_t i) const

Public Attributes

double a
 A constant (0.02, 01) describing the coupling of variable u to Vm; [units=D; range=(0,10);].
double b
 A constant controlling sensitivity of u. [units=D; range=(0,10);].
double Vt
 The instantaneous treshold of membrane voltage. [units=V; range=(-1,1);].
double Vr
 The reset membrane voltage. [units=V; range=(-1,1);].
double El
 The leak reversal potentail $C_m$ [range=(-1,1); units=V;].
double gl
 The leak conductance $C_m$ [range=(-1,1); units=S;].
double Cm
 The membrane capacity $C_m$ [range=(0,1); units=F;].
double tau_w
 The adaptation time constant $C_m$ [range=(0,1); units=s;].
double slope
 slope factor $C_m$ [range=(0,1); units=V;]
double Vpeak
 If $V_m$ exceeds the Value of $V_m$ is resetet to d. [units=V; range=(-10,100);].
double Vinit
 The initial condition for $V_m$ at time $t=0$. [units=V; range=(-1,1);].
double Inoise
 The standard deviation of the noise to be added each integration time constant. [range=(0,1); units=A;].
double Iinject
 A constant current to be injected into the LIF neuron. [units=A; range=(-1,1);].

Protected Attributes

double Vm
 The membrane voltage $V_m$ [readonly; units=V;].
double w
 internal variable [readonly; units=V;]
double _dt
 The time step [readonly; units=s;].
int noiseType
 noise type (0.,,gaussian Noise, 1...pink noise, 3...Ornstein Uhlenbeck noise) [range=(0,2); units=;]
double Isyn
 Summation point for all synaptic input currents.
double factI

Static Protected Attributes

static
ThreadSpecificRandomDistribution
< NormalDistribution
white_noise
 Random number generator for white noise.


Detailed Description

An aEIF (adaptive Exponential Integrate and Fire) neuron.

see ''Adaptive Exponential Integrate-and-Fire Model as an Effective Description of Neuronal Activity'' Romain Brette and Wulfram Gerstner, J.Neurophysiology 94, 2005

Model

Definition at line 24 of file aEIFNeuron.h.


Constructor & Destructor Documentation

aEIFNeuronBase::aEIFNeuronBase ( double  a = 4e-9,
double  b = 0.0805e-9,
double  Vt = -50.6e-3,
double  Vr = -70.4e-3,
double  El = -70.4e-3,
double  gl = 30e-9,
double  Cm = 281e-12,
double  tau_w = 144e-3,
double  slope = 2e-3,
double  Vpeak = 20.0e-3,
double  Vinit = -60.0e-3,
double  Inoise = 0.0,
double  Iinject = 0.0 
)

Definition at line 20 of file aEIFNeuron.cpp.

virtual aEIFNeuronBase::~aEIFNeuronBase (  )  [inline, virtual]

Definition at line 41 of file aEIFNeuron.h.


Member Function Documentation

int aEIFNeuronBase::adjust ( double  dt  )  [virtual]

This tells the object that it should adjust to a new simulation time step width.

Reimplemented from SimObject.

Definition at line 73 of file aEIFNeuron.cpp.

References _dt, and clearSynapticInput().

Referenced by reset().

Here is the call graph for this function:

int aEIFNeuronBase::advance ( AdvanceInfo const &  ai  )  [virtual]

Advance the neuron.

Reimplemented from SimObject.

Reimplemented in CompositeNeuron< CbaEIFNeuron >.

Definition at line 28 of file aEIFNeuron.cpp.

References _dt, a, ADVANCEFLAG_HASSPIKED, b, clearSynapticInput(), Cm, El, gl, Iinject, Inoise, Isyn, SingleOutputSpikeSender::out_port, SpikeOutputPort::setSpike(), slope, tau_w, Vm, Vpeak, Vr, Vt, w, and white_noise.

Here is the call graph for this function:

int aEIFNeuronBase::reset ( double  dt  )  [virtual]

Reset the Izhi-Neuron.

Reimplemented from SimObject.

Reimplemented in aEIFCondAlphaNeuron, and CompositeNeuron< CbaEIFNeuron >.

Definition at line 84 of file aEIFNeuron.cpp.

References adjust(), clearSynapticInput(), SingleOutputSpikeSender::reset(), Vinit, Vm, and w.

Here is the call graph for this function:

bool aEIFNeuronBase::refractoryQ (  )  [inline]

Returns true iff the neuron is in its absolute refactory period.

Definition at line 55 of file aEIFNeuron.h.

void aEIFNeuronBase::clearSynapticInput ( void   )  [inline, virtual]

Definition at line 67 of file aEIFNeuron.cpp.

References Isyn.

Referenced by adjust(), advance(), and reset().

virtual double aEIFNeuronBase::getManagedDelay (  )  const [inline, virtual]

Reimplemented from SimObject.

Definition at line 91 of file aEIFNeuron.h.

virtual int aEIFNeuronBase::nSpikeInputPorts (  )  const [inline, virtual]

Reimplemented from SimObject.

Reimplemented in CompositeNeuron< CbaEIFNeuron >.

Definition at line 92 of file aEIFNeuron.h.

virtual int aEIFNeuronBase::nSpikeOutputPorts (  )  const [inline, virtual]

Reimplemented from SimObject.

Reimplemented in CompositeNeuron< CbaEIFNeuron >.

Definition at line 93 of file aEIFNeuron.h.

virtual int aEIFNeuronBase::nAnalogInputPorts (  )  const [inline, virtual]

Reimplemented from SimObject.

Reimplemented in CompositeNeuron< CbaEIFNeuron >.

Definition at line 94 of file aEIFNeuron.h.

virtual int aEIFNeuronBase::nAnalogOutputPorts (  )  const [inline, virtual]

Reimplemented from SimObject.

Reimplemented in CompositeNeuron< CbaEIFNeuron >.

Definition at line 95 of file aEIFNeuron.h.

virtual PortType aEIFNeuronBase::outputPortType ( port_t  o  )  const [inline, virtual]

Reimplemented from SimObject.

Reimplemented in CompositeNeuron< CbaEIFNeuron >.

Definition at line 97 of file aEIFNeuron.h.

References SimObject::spiking, and SimObject::undefined.

virtual PortType aEIFNeuronBase::inputPortType ( port_t  i  )  const [inline, virtual]

Reimplemented from SimObject.

Definition at line 102 of file aEIFNeuron.h.

References SimObject::undefined.


Member Data Documentation

A constant (0.02, 01) describing the coupling of variable u to Vm; [units=D; range=(0,10);].

Definition at line 64 of file aEIFNeuron.h.

Referenced by advance(), and aEIFCondAlphaNeuron::aEIFCondAlphaNeuron().

A constant controlling sensitivity of u. [units=D; range=(0,10);].

Definition at line 66 of file aEIFNeuron.h.

Referenced by advance(), and aEIFCondAlphaNeuron::aEIFCondAlphaNeuron().

The instantaneous treshold of membrane voltage. [units=V; range=(-1,1);].

Definition at line 68 of file aEIFNeuron.h.

Referenced by advance(), and aEIFCondAlphaNeuron::aEIFCondAlphaNeuron().

The reset membrane voltage. [units=V; range=(-1,1);].

Definition at line 70 of file aEIFNeuron.h.

Referenced by advance(), and aEIFCondAlphaNeuron::aEIFCondAlphaNeuron().

The leak reversal potentail $C_m$ [range=(-1,1); units=V;].

Definition at line 72 of file aEIFNeuron.h.

Referenced by advance(), and aEIFCondAlphaNeuron::aEIFCondAlphaNeuron().

The leak conductance $C_m$ [range=(-1,1); units=S;].

Definition at line 74 of file aEIFNeuron.h.

Referenced by advance(), and aEIFCondAlphaNeuron::aEIFCondAlphaNeuron().

The membrane capacity $C_m$ [range=(0,1); units=F;].

Definition at line 76 of file aEIFNeuron.h.

Referenced by advance(), and aEIFCondAlphaNeuron::aEIFCondAlphaNeuron().

The adaptation time constant $C_m$ [range=(0,1); units=s;].

Definition at line 78 of file aEIFNeuron.h.

Referenced by advance(), and aEIFCondAlphaNeuron::aEIFCondAlphaNeuron().

slope factor $C_m$ [range=(0,1); units=V;]

Definition at line 80 of file aEIFNeuron.h.

Referenced by advance(), and aEIFCondAlphaNeuron::aEIFCondAlphaNeuron().

If $V_m$ exceeds the Value of $V_m$ is resetet to d. [units=V; range=(-10,100);].

Definition at line 83 of file aEIFNeuron.h.

Referenced by advance(), and aEIFCondAlphaNeuron::aEIFCondAlphaNeuron().

The initial condition for $V_m$ at time $t=0$. [units=V; range=(-1,1);].

Definition at line 85 of file aEIFNeuron.h.

Referenced by aEIFCondAlphaNeuron::aEIFCondAlphaNeuron(), and reset().

The standard deviation of the noise to be added each integration time constant. [range=(0,1); units=A;].

Definition at line 87 of file aEIFNeuron.h.

Referenced by advance(), and aEIFCondAlphaNeuron::aEIFCondAlphaNeuron().

A constant current to be injected into the LIF neuron. [units=A; range=(-1,1);].

Definition at line 89 of file aEIFNeuron.h.

Referenced by advance(), and aEIFCondAlphaNeuron::aEIFCondAlphaNeuron().

The membrane voltage $V_m$ [readonly; units=V;].

Definition at line 105 of file aEIFNeuron.h.

Referenced by advance(), CbaEIFNeuron::conductanceInput(), CbaEIFNeuron::getVm(), and reset().

internal variable [readonly; units=V;]

Definition at line 111 of file aEIFNeuron.h.

Referenced by advance(), and reset().

The time step [readonly; units=s;].

Definition at line 113 of file aEIFNeuron.h.

Referenced by adjust(), and advance().

Random number generator for white noise.

Definition at line 116 of file aEIFNeuron.h.

Referenced by advance().

noise type (0.,,gaussian Noise, 1...pink noise, 3...Ornstein Uhlenbeck noise) [range=(0,2); units=;]

Definition at line 122 of file aEIFNeuron.h.

Summation point for all synaptic input currents.

Definition at line 124 of file aEIFNeuron.h.

Referenced by advance(), clearSynapticInput(), CbaEIFNeuron::conductanceInput(), CbaEIFNeuron::currentInput(), and aEIFNeuron::currentInput().

Definition at line 127 of file aEIFNeuron.h.


The documentation for this class was generated from the following files:

Generated on Wed Jul 9 16:34:46 2008 for PCSIM by  doxygen 1.5.5