LeakyIntFire Class Reference

A leaky integrate & fire neuron, used by standard winner-take-all (WTA). More...

#include <Neuro/LeakyIntFire.H>

Collaboration diagram for LeakyIntFire:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 LeakyIntFire (const SimTime timeStep=SimTime::SECS(0.0001), const float El=0.0F, const float Ee=100.0e-3F, const float Ei=-20.0e-3F, const float Gl=5.0e-8F, const float Ge=0.0F, const float Gi=0.0F, const float Vth=0.001F, const float C=1.0E-9F)
 constructor
void input (const float current)
 set input current (A)
void setV (const double val)
 set membrane potential to given value relative to Ei (in Volts)
bool integrate (const SimTime &t)
 integrate for up to given time (in s)
float getV () const
 get current membrane potential (in V)
void setG (const float Exc, const float Inh)
 set excitatory and inhibitory conductances (S)
void setGleak (const float Leak)
 set leak conductance (S)
SimTime getTimeStep () const
 return our internal time step:

Detailed Description

A leaky integrate & fire neuron, used by standard winner-take-all (WTA).

This is the integrate & fire neuron used in conjunction with WTA which is a 2D array of LeakyIntFire. It has a slightly more complicated Euler equation then LeakyIntegrator used by SM but the basic idea is the same. All parameters are in MKSA (SI) units (i.e., volts, amperes, siemens, etc). This neuron uses an Euler integration of the following form:

At each time step,

\[ V \leftarrow V + \frac{\delta t}{C} \left(I - G_{leak}(V - E_{leak}) - G_{ex}(V - E_{ex}) - G_{inh}(V - E_{inh})\right) \]

V is also clamped to never become smaller than $E_{inh}$ and a spike is generated when $V \ge V_{th}$ (and V is then reset to zero).

Definition at line 60 of file LeakyIntFire.H.


Constructor & Destructor Documentation

LeakyIntFire::LeakyIntFire ( const SimTime  timeStep = SimTime::SECS(0.0001),
const float  El = 0.0F,
const float  Ee = 100.0e-3F,
const float  Ei = -20.0e-3F,
const float  Gl = 5.0e-8F,
const float  Ge = 0.0F,
const float  Gi = 0.0F,
const float  Vth = 0.001F,
const float  C = 1.0E-9F 
) [inline]

constructor

Constructor with default params

Parameters:
timeStep is the integration time step, in s. See the general description for the other params.

Definition at line 120 of file LeakyIntFire.H.


Member Function Documentation

SimTime LeakyIntFire::getTimeStep (  )  const [inline]

return our internal time step:

Definition at line 188 of file LeakyIntFire.H.

Referenced by WinnerTakeAllGreedy::integrate(), WinnerTakeAllTempNote::integrate(), and WinnerTakeAllStd::integrate().

float LeakyIntFire::getV (  )  const [inline]

get current membrane potential (in V)

Definition at line 172 of file LeakyIntFire.H.

void LeakyIntFire::input ( const float  current  )  [inline]

set input current (A)

Definition at line 134 of file LeakyIntFire.H.

bool LeakyIntFire::integrate ( const SimTime t  )  [inline]

integrate for up to given time (in s)

Returns true if a spike was generated.

Definition at line 138 of file LeakyIntFire.H.

References SimTime::computeDeltaT(), and SimTime::secs().

Referenced by WinnerTakeAllGreedy::integrate(), WinnerTakeAllTempNote::integrate(), and WinnerTakeAllStd::integrate().

void LeakyIntFire::setG ( const float  Exc,
const float  Inh 
) [inline]

set excitatory and inhibitory conductances (S)

Definition at line 176 of file LeakyIntFire.H.

Referenced by WinnerTakeAllGreedy::integrate(), WinnerTakeAllTempNote::integrate(), and WinnerTakeAllStd::integrate().

void LeakyIntFire::setGleak ( const float  Leak  )  [inline]

set leak conductance (S)

Definition at line 180 of file LeakyIntFire.H.

Referenced by WinnerTakeAllStd::WinnerTakeAllStd(), and WinnerTakeAllTempNote::WinnerTakeAllTempNote().

void LeakyIntFire::setV ( const double  val  )  [inline]

set membrane potential to given value relative to Ei (in Volts)

Definition at line 168 of file LeakyIntFire.H.


The documentation for this class was generated from the following file:
Generated on Sun May 8 08:22:59 2011 for iLab Neuromorphic Vision Toolkit by  doxygen 1.6.3