CSIM_LIFNET
CSIM_LIFNET is a simulator for networks of leaky-integrate-and-fire
neurons. This simulator is written in C with a MEX interface to
Matlab. To learn more about mex files click
here.
The Implemented Model
It implements the standard leaky-integrate-and-fire neuron model where
the membrane potential V of a neuron is given by
tau dV/dt = -(V-Vrest) + R (Isyn(t)+Iback)
where tau is the membrane time constant, Vrest is the
resting membrane potential, R is the input resistance,
Isyn(t) is the current supplied by the synapses and
Iback is a non-specific background current. In CSIM_LIFNET we
have chosen the fixed values Vrest=0.0 mV and
R=1.0 Ohm (This means that you have to
offset your voltages (if you like) and scale the currents by the
actual input resistance). If V exceeds the threshold
voltage Vthresh it is reset to
Vreset < Vthresh and hold there for the
length tau_refr of the absolute refractory period.
It implements two types of synapses: static and
dynamic synapses. While for static synapses the amplitude of
each postsynaptic current (PSC) is constant the amplitude of ans PSC
in the case of a dynamic synapse depends on the spikes seen so far
(see [Markram, Wang and Tsodyks. PNAS 95:5323-5328, 1998] for
details). The time course of a PSCs is modeled as
exp(-t/tau_s) where tau_s is the synaptic time constant.
There are two forms of input which can be supplied to the simulated
network: spike trains and analog currents (see csim_lifnet.m for details).
The Package
Contents
The gzipped tar archive csim_lifnet.tar.gz
contains the following files:
- csim_lifnet.c ... the C source code of the simulator
- randgen.c, randgen.h ... the C source code of a random number
generator (taken from Numerical Recipes in C)
- csim_lifnet.mexglx ... a
pre-compiled mex-file for Matlab 6.1 / Redhat 7.1
- csim_lifnet.dll ... a
pre-compiled mex-file for Matlab 6.1 / Windows 98
- csim_lifnet.html ... this file
- csim_lifnet.m ... the help file ( you can also display this from within Matlab with the command
"help csim_lifnet")
- lifnet_demo.m ... a short demo how to use
csim_lifnet
- exponentialrnd.m ... a generator for exponential distributed
random numbers
- csim_defs.m ... some definitions needed (see lifnet_demo.m)
Installation / Usage
- Download the gzipped tar archive csim_lifnet.tar.gz (30kB).
- Unpack the archive.
- If you have Linux a command (at
the shell level) like
tar xvzf csim_lifnet.tar.gz
will do the job (and create a sub-directory named csim_lifnet).
- If you have Windows use something like WinZip to extract the files
- If you do
not have Linux (Redhat 7.1) or Windows 9x with Matlab 6.1 installed you have to compile
csim_lifnet.c with a command like
mex
csim_lifnet.c randgen.c
To learn more about mex files click
here
- Run lifnet_demo from within Matlab
- Read csim_lifnet.m (you can also display this from within Matlab with a command like
"helpwin csim_lifnet")
- Have fun using CSIM_LIFNET ;)
Thomas Natschläger, Nov. 16, 2001