A new version of Klusters will soon be available
Klusters will soon become a pure Qt4 application. This means that you will again be able to easily install it on any recent GNU/Linux distribution, as well as on MacOS and Windows. Because this transition represents an enormous effort involving numerous people, it is difficult for us to estimate when the new version will actually be available — hopefully within a few weeks.

Current pre-release snapshot packages for Kubuntu 12.04: shared libraries, application and mimetypes [last update 15/10/2013]

In the meantime...
Until the new version becomes available though, an interim solution for (K)Ubuntu was provided by our users (it is described below).

Developed by Lynn Hazan in G. Buzsáki's lab (CMBN, Rutgers Newark, USA).
Distributed under the General Public License (GPL).

If you use Klusters for your analyses, please be kind enough to cite the following article in your publications:

L. Hazan, M. Zugaro, G. Buzsáki (2006). Klusters, NeuroScope, NDManager: a Free Software Suite
for Neurophysiological Data Processing and Visualization
, J. Neurosci. Methods 155:207-216.

Click here for more screenshots (data provided by David Robbe and Peter Bartho).


What is Klusters?
Klusters is a powerful and easy-to-use cluster cutting application designed to help neurophysiologists sort action potentials recorded from multiple neurons on groups of electrodes (e.g., tetrodes or multisite silicon probes). Klusters is part of a larger data analysis framework, including NeuroScope (advanced viewer for electrophysiological and behavioral data) and NDManager. Klusters was developed by Lynn Hazan in G. Buzsáki's lab (CMBN, Rutgers Newark, USA).

What is cluster cutting?
Neurophysiological experiments investigating the functional properties of neuronal networks involve recording brain signals with large numbers of electrodes. Because each of the electrodes used in these experiments generally records from multiple neurons, the first step before analyzing the data is to sort out the action potentials emitted by each individual neuron. Hence, each putative action potential or "spike" must be grouped together with other spikes that are thought to belong to the same neuron. Such a group of spikes is referred to as a "cluster", and the whole process of sorting out the action potentials is thus known as "spike sorting" or "cluster cutting".

How is Klusters distributed?
Klusters is a free software distributed under the General Public License (GPL).

Who uses Klusters?
Klusters is used to process neuronal recordings from the hippocampus and cortex by dozens of teams around the world, including those of G. Buzsáki (Univ. Rutgers, USA), M. Zugaro and S. Wiener (CNRS-Collège de France, France), A. Sirota (Univ. Tübingen, Germany), K. Benchenane (CNRS, France), K. Diba (Univ. Wisconsin, USA), D. Robbe (IDIBAPS, Spain), H. Hirase (RIKEN, Japan), D. Isbrandt (Univ. Hamburg, Germany), V. Crunelli (Univ. Cardiff, UK), G. Laurent (Caltech, USA), E. Kandel (Univ. Columbia, USA), J. Knierim (Univ. Johns Hopkins, USA) and many more...


Warning: Klusters requires Qt3 and kdelibs from KDE3, and can no longer run on some recent GNU/Linux distributions that have dropped support for these libraries. To solve this issue, the code will soon be ported to Qt4. In the meantime, please use (older) versions that support Qt3 and kdelibs from KDE3.

Good news: Thanks to user feedback, a very simple solution is now available for more recent versions of (K)Ubuntu (>=11.10 Oneiric).

Supported Systems
Klusters was developed for GNU/Linux, but can also run on MacOS, and even on Windows, using a virtual machine such as VirtualBox (see instructions contributed by Lucile Belliveau).

Readily-installable packages are provided for (K)Ubuntu. For other platforms, you will need to compile the sources.

If you use a recent version of (K)Ubuntu (>=11.10 Oneiric), you can get kdelibs4c2a and its dependencies from the repositories for Lucid. This can be done either graphically using your favorite package manager, or at the command-line like this: (Thanks to C. Rodgers and C. Schmidt-Hieber).

Building from Source
Before you start, make sure you have a working building environment (GCC C++ compiler and GNU make). All distributions provide packages ready for installation. Use your favorite package manager to install them, either graphically (Synaptic, KPackageKit, YaST, etc.) or from the command-line (apt-get on Debian/Ubuntu, yum on Fedora/Redhat, etc.) Next, install the libraries and headers for kdelibs (KDE3), qt3 and libxml2. Again, use the packages provided by your distribution. Usually, packages for headers have the same name as those for libraries, followed by a suffix such as '-dev' or '-devel'.

The general procedure consists in extracting the archive, configuring the build process, building the sources, and installing:
   # tar xvzf klusters-1.6.4.tar.gz
   # cd klusters
   # ./configure --prefix=$(kde-config --prefix) --without-arts
   # make
   # su
     (type root password)
   # make install
On some platforms, you may need to add extra arguments during the configuration step. For instance, if Qt libraries and headers are located within the non-standard directory /usr/lib64/qt-3.3, configuration will fail unless you add the following options:
   # ./configure --prefix=$(kde-config --prefix) --without-arts --with-qt-includes=/usr/lib64/qt-3.3/include --with-qt-libraries=/usr/lib64/qt-3.3/lib
Similarly, if Qt tools (such as moc) are located in the non-standard directory /usr/lib64/qt-3.3/bin, they will not be found during configuration unless you change your PATH variable beforehand:
   # PATH="$PATH:/usr/lib64/qt-3.3/bin"
If you need help, contact Michaël Zugaro at michael.zugaro at college-de-france.fr

Getting Started

The user manual can be acessed in Klusters from the Help menu. It is also available online.

Klusters can be tested using these example files (25.1MB, courtesy of David Robbe).


Developer documentation (API) can be found in the source archive in the directory klusters-api/html. It is also available online.


June 29 2011 - Klusters 1.6.4
April 10 2010 - Klusters 1.6.3
September 17 2007 - Klusters 1.6.2
January 28 2004 - Klusters 1.6.1
December 28 2004 - Klusters 1.6
October 26 2004 - Klusters at SfN
October 11 2004 - Klusters 1.5.2
September 20 2004 - Klusters 1.5.1
September 13 2004 - Klusters 1.5
July 27 2004 - Klusters 1.4.2
July 22 2004 - Klusters 1.4.1
July 16 2004 - Klusters 1.4
July 08 2004 - Klusters 1.4
April 19 2004 - Klusters 1.3.3
April 09 2004 - Klusters 1.3.2
March 08 2004 - Klusters 1.3.1
February 23 2004 - Klusters 1.3
February 11 2004 - Klusters on SourceForge !

February 06 2004 - Klusters 1.2
January 21 2004 - Klusters 1.1
SourceForge.net Logo