Free MATLAB toolboxes
MATLAB is an extremely popular system in which to do computation of any kind. In addition to the basic MATLAB package, The Mathworks sell dozens of add-on toolboxes for specialist (and not-so specialist) subject areas including curve fitting, statistics, bioinformatics, wavelet analysis, splines, optimisation, parallel computing and much more. Although they are very good, these toolboxes can be rather expensive, especially if you find yourself needing several of them.
There are many free MATLAB toolboxes available which vary in quality from superb to complete trash and, obviously, you are only interested in the superb ones. The following MATLAB toolboxes are all free and they are all very good – in every case I know at least one research group (who’s opinion I respect) that uses them extensively.
- Chebfun – The chebfun project is a collection of algorithms, and a software system in object-oriented MATLAB, which extends familiar powerful methods of numerical computation involving numbers to continuous or piecewise-continuous functions.
- IFISS Software Package – The IFISS software can be used to generate typical linear systems arising from finite element discretizations of steady and unsteady diffusion, convection-diffusion, Stokes flow and Navier-Stokes flow problems.
- NaN Toolbox for MATLAB and Octave – A statistics and machine learning toolbox for MATLAB
- N-Way Toolbox for MATLAB – The N-way Toolbox for MATLAB is a freely available collection of functions and algorithms for modelling multiway data sets by a range of multilinear models.
- MATLAB tensor toolbox – Tensors (also known as multidimensional arrays or N-way arrays) are used in a variety of applications ranging from chemometrics to psychometrics.
- NLEVP: A Collection of Nonlinear Eigenvalue Problems – This contains problems from models of real-life applications as well as problems constructed specifically to have particular properties.
- pMATLAB – A free parallel computing toolbox for MATLAB. Check out the book here.
- Poblano toolbox for MATLAB – Poblano is a Matlab toolbox of large-scale algorithms for unconstrained nonlinear optimization problems.
- Statistical Parametric Mapping – The SPM software package has been designed for the analysis of brain imaging data sequences. The sequences can be a series of images from different cohorts, or time-series from the same subject.
- The Matrix Computation Toolbox – The Matrix Computation Toolbox is a collection of MATLAB M-files containing functions for constructing test matrices, computing matrix factorizations, visualizing matrices, and carrying out direct search optimization.
- The Matrix Function Toolbox – The Matrix Function Toolbox is a MATLAB toolbox connected with functions of matrices.
- Wavelab – A free wavelets toolbox from Stanford.
I’ll update this page whenever I come across other quality free toolboxes. Feel free to point me to more in the comments section but please only do so if you have used the toolbox extensively and you are willing to talk to me about it via email.
Update (29th March 2010):Added the Poblano and Tensor toolboxes along with several from Manchester University.
Another good one is CVX (http://cvxr.com/cvx/) for optimization. It would not be exaggerating to say that CVX has fundamentally changed how people prototype optimization problems. The revolutionary idea of CVX is that you can program the input to an optimization problem in almost the same way that you would write it down on the blackboard — no need to rewrite it into standard form.
The other classic Matlab optimization modelling tool is Yalmip (http://users.isy.liu.se/johanl/yalmip/) (and also tomlab, which isn’t free), but I don’t have personal experience with these.
@Stephen
Is there a solved example problem using the CVX optimizer?