#include <aEIFNeuron.h>
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 [range=(-1,1); units=V;]. | |
double | gl |
The leak conductance [range=(-1,1); units=S;]. | |
double | Cm |
The membrane capacity [range=(0,1); units=F;]. | |
double | tau_w |
The adaptation time constant [range=(0,1); units=s;]. | |
double | slope |
slope factor [range=(0,1); units=V;] | |
double | Vpeak |
If exceeds the Value of is resetet to d. [units=V; range=(-10,100);]. | |
double | Vinit |
The initial condition for at time . [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 [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. |
see ''Adaptive Exponential Integrate-and-Fire Model as an Effective Description of Neuronal Activity'' Romain Brette and Wulfram Gerstner, J.Neurophysiology 94, 2005
Definition at line 24 of file aEIFNeuron.h.
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.
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().
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.
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.
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] |
virtual double aEIFNeuronBase::getManagedDelay | ( | ) | const [inline, virtual] |
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.
Reimplemented from SimObject.
Reimplemented in CompositeNeuron< CbaEIFNeuron >.
Definition at line 97 of file aEIFNeuron.h.
References SimObject::spiking, and SimObject::undefined.
Reimplemented from SimObject.
Definition at line 102 of file aEIFNeuron.h.
References SimObject::undefined.
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 [range=(-1,1); units=V;].
Definition at line 72 of file aEIFNeuron.h.
Referenced by advance(), and aEIFCondAlphaNeuron::aEIFCondAlphaNeuron().
The leak conductance [range=(-1,1); units=S;].
Definition at line 74 of file aEIFNeuron.h.
Referenced by advance(), and aEIFCondAlphaNeuron::aEIFCondAlphaNeuron().
The membrane capacity [range=(0,1); units=F;].
Definition at line 76 of file aEIFNeuron.h.
Referenced by advance(), and aEIFCondAlphaNeuron::aEIFCondAlphaNeuron().
The adaptation time constant [range=(0,1); units=s;].
Definition at line 78 of file aEIFNeuron.h.
Referenced by advance(), and aEIFCondAlphaNeuron::aEIFCondAlphaNeuron().
slope factor [range=(0,1); units=V;]
Definition at line 80 of file aEIFNeuron.h.
Referenced by advance(), and aEIFCondAlphaNeuron::aEIFCondAlphaNeuron().
If exceeds the Value of 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 at time . [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().
double aEIFNeuronBase::Vm [protected] |
The membrane voltage [readonly; units=V;].
Definition at line 105 of file aEIFNeuron.h.
Referenced by advance(), CbaEIFNeuron::conductanceInput(), CbaEIFNeuron::getVm(), and reset().
double aEIFNeuronBase::w [protected] |
double aEIFNeuronBase::_dt [protected] |
ThreadSpecificRandomDistribution< NormalDistribution > aEIFNeuronBase::white_noise [static, protected] |
Random number generator for white noise.
Definition at line 116 of file aEIFNeuron.h.
Referenced by advance().
int aEIFNeuronBase::noiseType [protected] |
noise type (0.,,gaussian Noise, 1...pink noise, 3...Ornstein Uhlenbeck noise) [range=(0,2); units=;]
Definition at line 122 of file aEIFNeuron.h.
double aEIFNeuronBase::Isyn [protected] |
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().
double aEIFNeuronBase::factI [protected] |
Definition at line 127 of file aEIFNeuron.h.