Miind
Public Member Functions | Protected Attributes | List of all members
GeomLib::SpikingQifNeuralDynamics Class Referenceabstract

#include <libs/GeomLib/SpikingQifNeuralDynamics.hpp>

Inheritance diagram for GeomLib::SpikingQifNeuralDynamics:
Inheritance graph
Collaboration diagram for GeomLib::SpikingQifNeuralDynamics:
Collaboration graph

Public Member Functions

 SpikingQifNeuralDynamics (const OdeParameter &, const QifParameter &)
 
 SpikingQifNeuralDynamics (const SpikingQifNeuralDynamics &)
 
virtual ~SpikingQifNeuralDynamics ()
 
virtual SpikingQifNeuralDynamicsClone () const
 
virtual Potential EvolvePotential (Potential, MPILib::Time) const =0
 
virtual Potential EvolvePotential (Potential, Time) const
 
virtual std::vector< PotentialInterpretationArray () const
 
const OdeParameterPar () const
 
const CurrentCompensationParameterParCur () const
 
const QifParameterParQif () const
 
virtual Time TimeToInf (Potential) const
 
virtual Time TPeriod () const
 
virtual Time TStep () const
 

Protected Attributes

const OdeParameter _par
 
const CurrentCompensationParameter _par_current
 
const QifParameter _par_qif
 

Detailed Description

This class models the dynamics of of Quadratic Integrate and Fire (QIF) neurons.

This model is discussed extensively in Izhikevich's book 'Dynamical Systems in Neuroscience'. By a suitable choice of units a more complex equation can be simplified to a 'topological normal form':

\[ \frac{dV}{dt} = I + V^2 \]

Under this equation V may reach infinity in finite time. It is assumed that the neuron's potential will be reset to \( V_{reset} \) after this time. In simulations it is necessary to chose a finite value \( V_{peak} \) as the maximum that a neuron's membrane potential can attain. In the QIF model an instantaneous reset to \( V_{reset} \) will occur. Configuration requires a QIFParameter and an OdeParameter.

Definition at line 43 of file SpikingQifNeuralDynamics.hpp.

Constructor & Destructor Documentation

SpikingQifNeuralDynamics::SpikingQifNeuralDynamics ( const OdeParameter par_ode,
const QifParameter par_qif 
)

Standard constructor.

Parameters
par_odegeneral parameters
par_qifparameter specific to QIF dynamics

Definition at line 26 of file SpikingQifNeuralDynamics.cpp.

Referenced by Clone().

SpikingQifNeuralDynamics::SpikingQifNeuralDynamics ( const SpikingQifNeuralDynamics dyn)

Definition at line 39 of file SpikingQifNeuralDynamics.cpp.

SpikingQifNeuralDynamics::~SpikingQifNeuralDynamics ( )
virtual

Definition at line 47 of file SpikingQifNeuralDynamics.cpp.

Member Function Documentation

SpikingQifNeuralDynamics * SpikingQifNeuralDynamics::Clone ( ) const
virtual

virtual construction mechanism

Implements GeomLib::SpikingNeuralDynamics.

Definition at line 69 of file SpikingQifNeuralDynamics.cpp.

References SpikingQifNeuralDynamics().

virtual Potential GeomLib::AbstractNeuralDynamics::EvolvePotential ( Potential  ,
MPILib::Time   
) const
pure virtualinherited

Given a potential, specify how it evolves over a given time step The range of validity of this function is determined by the overloaded function.

Potential SpikingQifNeuralDynamics::EvolvePotential ( Potential  V,
Time  t 
) const
virtual
std::vector< Potential > SpikingNeuralDynamics::InterpretationArray ( ) const
virtualinherited

Generate the bin boundaries for geometric binning based on the dyn.

Implements GeomLib::AbstractNeuralDynamics.

Definition at line 45 of file SpikingNeuralDynamics.cpp.

References i.

const OdeParameter& GeomLib::AbstractNeuralDynamics::Par ( ) const
inlineinherited

Provide efficient access. For use in time critical code.

Definition at line 65 of file AbstractNeuralDynamics.hpp.

References GeomLib::AbstractNeuralDynamics::_par.

const CurrentCompensationParameter& GeomLib::AbstractNeuralDynamics::ParCur ( ) const
inlineinherited

Return the current compensation object; can be used to test whether current compensation is applied.

Definition at line 78 of file AbstractNeuralDynamics.hpp.

References GeomLib::AbstractNeuralDynamics::_par_current.

const QifParameter& GeomLib::SpikingQifNeuralDynamics::ParQif ( ) const
inline

Definition at line 77 of file SpikingQifNeuralDynamics.hpp.

References _par_qif.

Time SpikingQifNeuralDynamics::TimeToInf ( Potential  V) const
virtual
Time SpikingQifNeuralDynamics::TPeriod ( ) const
virtual

time it takes for a neuron to traverse from V_min to threshold

Implements GeomLib::AbstractNeuralDynamics.

Definition at line 75 of file SpikingQifNeuralDynamics.cpp.

References GeomLib::AbstractNeuralDynamics::_par, GeomLib::OdeParameter::_V_min, and TimeToInf().

Referenced by TStep().

Time SpikingQifNeuralDynamics::TStep ( ) const
virtual

time it takes to move density one grid forwards

Implements GeomLib::AbstractNeuralDynamics.

Definition at line 81 of file SpikingQifNeuralDynamics.cpp.

References GeomLib::OdeParameter::_nr_bins, GeomLib::AbstractNeuralDynamics::_par, and TPeriod().

Member Data Documentation

const OdeParameter GeomLib::AbstractNeuralDynamics::_par
protectedinherited
const CurrentCompensationParameter GeomLib::AbstractNeuralDynamics::_par_current
protectedinherited

For use in the concrete dynamics instantiation.

Definition at line 86 of file AbstractNeuralDynamics.hpp.

Referenced by GeomLib::AbstractNeuralDynamics::ParCur().

const QifParameter GeomLib::SpikingQifNeuralDynamics::_par_qif
protected

Definition at line 81 of file SpikingQifNeuralDynamics.hpp.

Referenced by EvolvePotential(), ParQif(), and TimeToInf().


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