MClust

Free-ware spike sorting

A David Redish

University of Minnesota



ANNOUNCING MClust-4.0!



 

MClust 4.1.1

This page updated 16 July 2014.

Latest build = 4.1.3 2014-07-20

 

Contact A. David Redish (redish AT umn.edu) with questions, bug-reports, etc.

If you would like to be included on an MClust-4.0 email list of bug reports, please send an email to ADR with MClust-4.0-registration in the header.  The only messages that will go to this email list will be sent by ADR and will refer to data-level bugs in MClust.

Code and distributions

 

·         MClust-4.1 (winzip format)
We recommend that all users use MClust-4.1
MClust has a completely rebuilt engine that is now compatible with the latest versions of Matlab (2012+).  Unfortunately, it is not compatible with earlier versions of Matlab.

 

Documentation

·         MClust-4.0.pdf

 

Additional components

·         Loading Engines

·         LoadTT_NeuralynxNT (C++, DLL)

Neuralynx .dat format, tetrodes [included in current distribution]

·         LoadSE_NeuralynxNT (C++, DLL)

Neuralynx .dat format, singe electrodes [included in current distribution]

·         MClust-4.1 now includes a (Tucker-Davis Technologies [TDT]) loading engine.  Using this loading engine requires additional programs from TDT to read the raw data formats.  Contact TDT for download and password information.

 

·         LoadST_NeuralynxNT (C++, DLL)

Neuralynx .dat format, stereotrodes

Stephen Cowen (The Neurosciences Institute) has provided an updated stereotrode loading engine (25/Feb/2009). (C++, mexw32).

·         LoadTT_OLD_NeuralynxSUN_NT (C++, DLL)

Neuralynx old .tt and .dat formats, tetrodes.  Works with old SunOS file formats.

·         LoadSE_SON (directory)

CED SON files. (Spike2)  Written by Shane Heiney.  [Washington University in St Louis]

·         LoadTT_XX_Neuralinx (directory)

Neuralinx format, allowing non-32 sample loading. Written by Frank Schaupp [Institut fur Neurobiologie, Berlin]

·         LoadTT_Axona50 (C++, mexw32)

Axona format, allows more than 32 samples.  Written by Neil Schmitzer-Torbert [Wabash College, Crawfordsville IN]

·         BlackRock Loading Engine available from (http://sourceforge.net/projects/npmk/)

Blackrock Grapevine format.  Available from Blackrock Microsystems.

·         LoadTT_Axona (C++, DLL)

Axona format.  Written by Matthijs van der Meer [University of Edinburgh, Edinburgh UK]

·         LoadTT_Axona (mexw64) and LoadTT_Axona50 (mexw64)

Axona format for 64-bit windows.  Thanks to Haagen Waade [NTNU. NO].

·         SE Axona Loading Engine set

Axona loading engine.  Thanks to Lian Zheng (MRC-LMB, UK].

 

 

Sample files

(These contain some small data sets.  I have made no attempt to find “the best examples”, but they should load in appropriately.  They can be used to test loading, cutting, and saving functions.)

·         TT-sample.Ntt (Load with LoadTT_NeuralynxNT)

·         SE-sample.Nse (Load with LoadSE_NeuralynxNT)

Credits

  

·         Original MClust by A. David Redish (ADR, current address, University of Minnesota, Minneapolis MN).

 

Modifications that have been incorporated into version 3.2 were made by

·         Peter Lipa (PL, University of Arizona, Tucson AZ)

·         Stephen Cowen (SLC, University of Arizona, Tucson AZ),

·         Jadin Jackson (JCJ, University of Minnesota, Minneapolis MN),

·         Neil Schmitzer-Torbert (NCST, University of Minnesota, Minneapolis MN),

·         Francesco Battaglia (batta, University of Arizona, Tucson AZ).

 

External components shipped with the current distribution include

·         BubbleClust (automated spike-sorter, version 0.8) by Peter Lipa (University of Arizona, Tucson AZ).

·         Contact Neuralynx for future versions of BubbleClust.

·         KlustaKwik (automated spike-sorter) by (Ken Harris, Rutgers University, Newark NJ).

 


Previous versions

 

·         MClust-3.5 (winzip format)
MClust-3.5.pdf

This version incorporates changes from previous versions and is now compatible with the latest versions of Matlab (2007a +).  Unfortunately, it is not compatible with earlier versions of Matlab.

 

[64-bit .mex64 files for XP64 and Vista64 operating systems.  (Thanks to Jadin Jackson for compiling these.)]  To use these, add them where the mex32 files are.  It is not necessary to replace the .mex32 files with the corresponding .mex64 files.  Matlab will use the correct ones.

 

[.mexmaci files for 32bit Mac operating systems.  (Thanks to Anoopum Gupta, Matthijs van der Meer, and Kendra Burbank for compiling these.)]

[.mexmaci files for 64bit Mac operating systems.  (Thanks to Martin Vinck for compiling these.)]  To use these, add them where the mex32 files are.  It is not necessary to replace the .mex32 files with the corresponding .mex64 files.  Matlab will use the correct ones.

 

[.mexa64 files for Linux operating systems.  (Thanks to Alexandre Zenon  for compiling these.)] 

[.mexgl32 files for Linux operating systems.  (Thanks to Yunguo Yu for compiling these.)]

To use these, add them where the mex32 files are.  It is not necessary to replace the .mex32 files with the corresponding .mex64 files.  Matlab will use the correct ones.

 

 

Neuralynx’s Cheetah 5.X has a deeper bit-depth than earlier versions of Cheetah.  To accommodate this bit depth, you need to change the global variable MClust_AverageWaveform_ylim in MClustResetGlobals to 16* its old value.

 

·         MClust-3.4.beta.zip (winzip format)

We recommend using MClust-3.4 for all users of Matlab versions earlier than 2007a.

·         MClust-3-JCJ.zip (winzip format)

Jadin Jackson (University of Amsterdam) has developed a new version of MClust 3.4 with multi-step undo and incorporated ICA.

 

 

 

·         MClust-3.5 Extras. Extra features and additional components for MClust-3.5.

 

·         A number of extra components are included in various subdirectories under “Extras”.  Simply move these from the “Extras” directory to their respective parent directory to use.

 

18 July 2012

·         Balazs Hangya (Cold Spring Harbor)

- New code that allows for faster plotting of very large data sets.

 

13 August 2008

·         Matthijs van der Meer (University of Minnesota)

- ShowAllXCorrs.

- RemoveDoubles – removes double-counted spikes.  To use, put in the @mccluster directory.

20 April 2007

·         Jadin Jackson (University of Amsterdam)
- new GeneralizedCutterOptions
[including CloseAllNonEssentialFigs, ShowAllWaveforms, SortClustersByColor]
- new ClusterOptions
[including CutOnBestProjection, FindBestCQProjections]

 

·         MClust-3.3 extras.  Extra features and additional components for MClust-3.3. 

These extras have not been tested with MClust-3.5.

Recent additions include

5 July 2007

·         new GeneralizedCutterOptions [including ShowAllAverageWaveforms, ShowAllXCorrs, ViewAllDimensionPairs]

29 June 2005

·         new Loading Engine (allowing >32 samples from Neuralynx 32-kHz CSCs) from Michael Krause [Baylor College of Medicine, Houston]

25 August 2004

·         new Loading Engines from Frank Schaupp [Institut fur Neurobiologie, Berlin]

18 March 2004

·         new Loading Engine from Shane Heiney [Washington University in St. Louis]

11 December 2003

·         new version of options from Baldwin Goodell [Montana State University]

21 October 2003

·         Linux-compatible LoadSE and LoadST engines for Neuralynx-compatible data.  [Courtesy Josh Jacobs, Brandeis University]

2 October 2003

·         new GeneralizedCutterOptions

·         new ClusterOptions – check out the EditWaveforms, DefineOverlap, BringToTop, and CompareMeans options
[Courtesy Baldwin Goodell, Montana State University]

29 September 2003

·         pre-compiled mexglx and mexmac files [Courtesy Baldwin Goodell, Montana State University]

·         new features [Courtesy Baldwin Goodell, Montana State University]

 

·         MClust-3.3.zip (winzip format)

·         mclustlinux.tgz.   Port to Linux.  Done by Nathaniel Daw, Carnegie Mellon University.  (28 August 2002)


MClust 2.0

Written by A. David Redish

Documentation

·         PDF format.

MClust (v2.0 for Windows 95/98/NT/2000)
MClust (v2.0 raw, can be compiled for unix)