#include <LifNeuron.h>
Public Member Functions | |
CbLifNeuron (float Rm=1e6, float Cm=3e-8, float Vresting=-0.06, float Vthresh=-0.045, float Vreset=-0.06, float Vinit=-0.06, float Trefract=3e-3, float Inoise=0.0, float Iinject=0.0) | |
virtual | ~CbLifNeuron () |
virtual int | adjust (double dt) |
Recalculate exp. Euler constants. | |
virtual int | advance (AdvanceInfo const &) |
Advance the leaky I&F neuron. | |
virtual void | clearSynapticInput (void) |
virtual void | currentInput (double Isyn) |
virtual void | conductanceInput (double g, double Erev) |
virtual double | getVm () |
Get the current membrane voltage. | |
virtual double | conductanceNoiseInput () |
A standard leaky-integrate-and-fire neuron model is implemented where the membrane potential of a neuron is given by
where is the membrane time constant, is the membrane resistance, is the current supplied by the synapses, is a non-specific background current and is a Gaussion random variable with zero mean and a given variance noise.
At time ist set to . If exceeds the threshold voltage it is reset to and hold there for the length of the absolute refractory period.
The exponential Euler method is used for numerical integration.
Definition at line 243 of file LifNeuron.h.
CbLifNeuron::CbLifNeuron | ( | float | Rm = 1e6 , |
|
float | Cm = 3e-8 , |
|||
float | Vresting = -0.06 , |
|||
float | Vthresh = -0.045 , |
|||
float | Vreset = -0.06 , |
|||
float | Vinit = -0.06 , |
|||
float | Trefract = 3e-3 , |
|||
float | Inoise = 0.0 , |
|||
float | Iinject = 0.0 | |||
) |
Definition at line 118 of file LifNeuron.cpp.
virtual CbLifNeuron::~CbLifNeuron | ( | ) | [inline, virtual] |
Definition at line 259 of file LifNeuron.h.
Recalculate exp. Euler constants.
Reimplemented from SimObject.
Definition at line 125 of file LifNeuron.cpp.
References LifNeuronBase::_dt, LifNeuronBase::C1, LifNeuronBase::C2, LifNeuronBase::Cm, LifNeuronBase::I0, LifNeuronBase::Iinject, LifNeuronBase::noise_gen, LifNeuronBase::Rm, ThreadSpecificRandomDistribution< Dist >::set(), and LifNeuronBase::Vresting.
int CbLifNeuron::advance | ( | AdvanceInfo const & | ai | ) | [virtual] |
Advance the leaky I&F neuron.
Reimplemented from SimObject.
Reimplemented in CompositeNeuron< CbLifNeuron >.
Definition at line 147 of file LifNeuron.cpp.
References LifNeuronBase::_dt, ADVANCEFLAG_HASSPIKED, LifNeuronBase::C1, clearSynapticInput(), LifNeuronBase::Cm, conductanceNoiseInput(), LifNeuronBase::currentNoiseInput(), AdvanceInfo::dt, LifNeuronBase::I0, Time::in_sec(), LifNeuronBase::Inoise, LifNeuronBase::noise_gen, LifNeuronBase::nStepsInRefr, SingleOutputSpikeSender::out_port, LifNeuronBase::Rm, SpikeOutputPort::setSpike(), LifNeuronBase::Trefract, LifNeuronBase::Vm, LifNeuronBase::Vreset, and LifNeuronBase::Vthresh.
void CbLifNeuron::clearSynapticInput | ( | void | ) | [inline, virtual] |
void CbLifNeuron::currentInput | ( | double | Isyn | ) | [inline, virtual] |
virtual double CbLifNeuron::getVm | ( | ) | [inline, virtual] |
Get the current membrane voltage.
Reimplemented from ConductanceInputTarget.
Definition at line 275 of file LifNeuron.h.
References LifNeuronBase::Vm.
virtual double CbLifNeuron::conductanceNoiseInput | ( | ) | [inline, virtual] |