Home
Contact
Short CV
Research
Publications
Software
Links
Impressum

 

University of Plymouth | Centre for Theoret. and Comput. Neuroscience | Home   

 

Example 2: Integrate and Fire Neurons

This page provides a simple example program comprising randomly connected noisy integrate and fire neurons. The example demonstrates some more properties of felix than the previous coupled map lattice program. A brief explanation of integrate and fire neurons can be found HERE.

The figure below displays a snapshot of the running simulation program. Explanations can be found below the figure.

         

At the bottom of the figure you see the main control window as in the coupled map lattice and all other examples. It now contains specific sliders for parameters to control the spiking neuron network. These sliders can be declared in a simple way in the source code of the simulation (as downloadable below): "Noise" is the strength of independent white noise fed into each neuron in every step, "Input" is an externally supplied constant input, and "Coupling" sets the strength of synapses between neurons. For sufficiently strong couplings you can observe (more or less) synchronous firing of the cells.

The upper right frame in the figure displays various views on the dynamic variables of the simulation. The first three plots (from top to bottom) all display the potential of cells, though in different ways. There is a total of 25 connected cells. The first plot shows 3*5 of the respective potential values as an "image", where the grey-level codes for the numerical value of the variables. This image is updated in every display step. The second plot shows all 25 potentials as a raster plot; here, time runs from left to right, and units from top to bottom. Grey-level again corresponds with the precise potential value and as time goes on new values are filled in on the right side until the window finally starts scrolling when the right edge of the plot is reached. The third plot in the upper right frame shows the potential of a single unit over time. This unit can be easily selected by pressing on the button above the plot. Similar buttons appear above all data views. They show the name of the view (can be abritrary) and bring up windows to select displayed elements in case of vector or matrix valued variables as well as controls to set the range of the grey-level scale used in the plots. Two such control windows are shown in the figure left to the window showing the data views. The lowest plot in the upper right frame, finally, is a raster plot displaying the spikes of the 25 units. Here, again, time runs from let to right and units from top to bottom. Each view requires only a single line of code in the program.

The "Windows", "Save", and "Environment" buttons at the upper edge of the main control frame bring up popup windows for further control elements. "Windows" presents a menu of all declared windows: There can be any number of windows comprising any number of views. "Save" switches file-output on and off. "Environment" allows to save and load settings of parameters of the simulation and the graphical user interface.

Downloads

Statically linked executable (Right-click and store using "Save Link Target .." or similar. Start by clicking on it after download.)

Environment file (Put this file into a subdirectory "env" in the directory of the executable, which will then start with appropriate parameters.)

Source code

Shared library executable (Right-click and store using "Save Link Target .." or similar.)


Note 1: If the statically linked executable does not start, you might need to make it executable by setting the right permissions. It might also be that you don't have all necessary libraries (none of which is, however, very exotic). Try "ldd inf" on the command line to see if something is missing.

Note 2: To run the shared library executable you need to install the felix runtime libraries; to compile the source code you need to install in addition the felix development tools. See HERE for more info.
 
   

   © 2004 by -thowe-