DynamicStdpSynapse Class Reference

Dynamic synapse implementing STDP plasticity. More...

#include <StdpSynapse.h>

Inheritance diagram for DynamicStdpSynapse:

Inheritance graph
[legend]
Collaboration diagram for DynamicStdpSynapse:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 DynamicStdpSynapse (const float Winit=1e-9, const float tau=3e-3, const float delay=1e-3, const float U=0.2, const float D=0.1, const float F=0.4, const float u0=0.2, const float r0=1.0, const float f0=-1.0, const bool useFroemkeDanSTDP=true, const float tauspost=50e-3, const float tauspre=50e-3, const float taupos=50e-3, const float tauneg=50e-3, const float STDPgap=2e-3, const int activeSTDP=1, const float Wex=10e-9, const float Aneg=-0.2e-9, const float Apos=0.2e-9, const float mupos=0.0, const float muneg=0.0, const float back_delay=0.0)


Detailed Description

Dynamic synapse implementing STDP plasticity.

STDP is due to Froemke and Dan Nature 416 (3/2002). Implements the basic weight update for a time difference $Delta = t_{post}-t_{pre}$ with presynaptic spike at time $t_{pre}$ and postsynaptic spike at time $t_{post}$. Then, the weight update is given by $dw = Apos * exp(-Delta/taupos)$ for $Delta > 0$, and $dw = Aneg * exp(-Delta/tauneg)$ for $Delta < 0$. (set $useFroemkeDanSTDP=0$ and $mupos=muneg=0$ for this basic update rule).

It is also possible to use an extended multiplicative update by changing mupos and muneg. Then $dw = (Wex-W)^{mupos} * Apos * exp(-Delta/taupos)$ for $Delta > 0$ and $dw = W^{mupos} * Aneg * exp(Delta/tauneg)$ for $Delta < 0$. (see Guetig, Aharonov, Rotter and Sompolinsky (2003). Learning input correlations through non-linear asymmetric Hebbian plasticity. Journal of Neuroscience 23. pp.3697-3714.)

Set $useFroemkeDanSTDP=1$ (this is the default value) and use $tauspost$ and $tauspre$ for the rule given in Froemke and Dan (2002). Spike-timing-dependent synaptic modification induced by natural spike trains. Nature 416 (3/2002).

Definition at line 101 of file StdpSynapse.h.


Constructor & Destructor Documentation

DynamicStdpSynapse::DynamicStdpSynapse ( const float  Winit = 1e-9,
const float  tau = 3e-3,
const float  delay = 1e-3,
const float  U = 0.2,
const float  D = 0.1,
const float  F = 0.4,
const float  u0 = 0.2,
const float  r0 = 1.0,
const float  f0 = -1.0,
const bool  useFroemkeDanSTDP = true,
const float  tauspost = 50e-3,
const float  tauspre = 50e-3,
const float  taupos = 50e-3,
const float  tauneg = 50e-3,
const float  STDPgap = 2e-3,
const int  activeSTDP = 1,
const float  Wex = 10e-9,
const float  Aneg = -0.2e-9,
const float  Apos = 0.2e-9,
const float  mupos = 0.0,
const float  muneg = 0.0,
const float  back_delay = 0.0 
) [inline]

Definition at line 106 of file StdpSynapse.h.

References GenericEachPairStdpSynapse< GenericDynamicSpikingSynapse< GenericCurrentBasedSpikingSynapse< ExponentialDecaySpikeResponse > > >::activeSTDP, GenericFroemkeDanStdpSynapse< GenericEachPairStdpSynapse< GenericDynamicSpikingSynapse< GenericCurrentBasedSpikingSynapse< ExponentialDecaySpikeResponse > > > >::Aneg, GenericFroemkeDanStdpSynapse< GenericEachPairStdpSynapse< GenericDynamicSpikingSynapse< GenericCurrentBasedSpikingSynapse< ExponentialDecaySpikeResponse > > > >::Apos, GenericEachPairStdpSynapse< GenericDynamicSpikingSynapse< GenericCurrentBasedSpikingSynapse< ExponentialDecaySpikeResponse > > >::back_delay, GenericDynamicSpikingSynapse< GenericCurrentBasedSpikingSynapse< ExponentialDecaySpikeResponse > >::D, GenericDynamicSpikingSynapse< GenericCurrentBasedSpikingSynapse< ExponentialDecaySpikeResponse > >::delay, GenericDynamicSpikingSynapse< GenericCurrentBasedSpikingSynapse< ExponentialDecaySpikeResponse > >::F, GenericDynamicSpikingSynapse< GenericCurrentBasedSpikingSynapse< ExponentialDecaySpikeResponse > >::f0, GenericFroemkeDanStdpSynapse< GenericEachPairStdpSynapse< GenericDynamicSpikingSynapse< GenericCurrentBasedSpikingSynapse< ExponentialDecaySpikeResponse > > > >::muneg, GenericFroemkeDanStdpSynapse< GenericEachPairStdpSynapse< GenericDynamicSpikingSynapse< GenericCurrentBasedSpikingSynapse< ExponentialDecaySpikeResponse > > > >::mupos, GenericDynamicSpikingSynapse< GenericCurrentBasedSpikingSynapse< ExponentialDecaySpikeResponse > >::r0, GenericFroemkeDanStdpSynapse< GenericEachPairStdpSynapse< GenericDynamicSpikingSynapse< GenericCurrentBasedSpikingSynapse< ExponentialDecaySpikeResponse > > > >::STDPgap, ExponentialDecaySpikeResponse::tau, GenericFroemkeDanStdpSynapse< GenericEachPairStdpSynapse< GenericDynamicSpikingSynapse< GenericCurrentBasedSpikingSynapse< ExponentialDecaySpikeResponse > > > >::tauneg, GenericFroemkeDanStdpSynapse< GenericEachPairStdpSynapse< GenericDynamicSpikingSynapse< GenericCurrentBasedSpikingSynapse< ExponentialDecaySpikeResponse > > > >::taupos, GenericFroemkeDanStdpSynapse< GenericEachPairStdpSynapse< GenericDynamicSpikingSynapse< GenericCurrentBasedSpikingSynapse< ExponentialDecaySpikeResponse > > > >::tauspost, GenericFroemkeDanStdpSynapse< GenericEachPairStdpSynapse< GenericDynamicSpikingSynapse< GenericCurrentBasedSpikingSynapse< ExponentialDecaySpikeResponse > > > >::tauspre, GenericDynamicSpikingSynapse< GenericCurrentBasedSpikingSynapse< ExponentialDecaySpikeResponse > >::U, GenericDynamicSpikingSynapse< GenericCurrentBasedSpikingSynapse< ExponentialDecaySpikeResponse > >::u0, GenericFroemkeDanStdpSynapse< GenericEachPairStdpSynapse< GenericDynamicSpikingSynapse< GenericCurrentBasedSpikingSynapse< ExponentialDecaySpikeResponse > > > >::useFroemkeDanSTDP, GenericFroemkeDanStdpSynapse< GenericEachPairStdpSynapse< GenericDynamicSpikingSynapse< GenericCurrentBasedSpikingSynapse< ExponentialDecaySpikeResponse > > > >::Wex, and GenericEachPairStdpSynapse< GenericDynamicSpikingSynapse< GenericCurrentBasedSpikingSynapse< ExponentialDecaySpikeResponse > > >::Winit.


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

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