The Matrix Function Toolbox
The Matrix Function Toolbox is a MATLAB toolbox connected with functions of matrices. It is associated with the book Functions of Matrices: Theory and Computation and contains implementations of many of the algorithms described in the book. The book is the main documentation for the toolbox.
The toolbox is intended to facilitate understanding of the algorithms through MATLAB experiments, to be useful for research in the subject, and to provide a basis for the development of more sophisticated implementations. The codes are "plain vanilla" versions; they contain the core algorithmic aspects with a minimum of inessential code. In particular, the following features should be noted.
- The codes have little error checking of input arguments.
- The codes do not print intermediate results or the progress of an iteration.
- For the iterative algorithms a convergence tolerance is hard-coded (in function mft_tolerance). For greater flexibility this tolerance could be made an input argument.
- The codes are designed for simplicity and readability rather than maximum efficiency.
- Algorithmic options such as preprocessing are omitted.
- The codes are intended for double precision matrices. Those algorithms in which the parameters can be adapted to the precision have not been written to take advantage of single precision inputs.
About the Toolbox
- The current release is version 1.0 of the toolbox, dated March 6, 2008.
- The toolbox is distributed under the terms of the GNU General Public License (version 3 of the License, or any later version) as published by the Free Software Foundation.
- The toolbox has been tested under MATLAB 7.5 (R2007b) and 7.6 (R2008a). It does not work with versions 6.5 (R13) and earlier of MATLAB, since it uses functionality introduced in MATLAB 7.0 (R14).
- Please cite the toolbox as "N. J. Higham. The Matrix Function Toolbox. http://www.ma.man.ac.uk/~higham/mftoolbox". A BibTeX bib entry for this book is available.
Installing the Toolbox
- The toolbox is provided as a zip file.
- Create a directory for the toolbox (suggested name mft) and extract the files into it using any unzip utility. For serious use it is best to put the mft directory on the MATLAB path, which can be done using the addpath command (ideally in startup.m).
- To try the toolbox from within MATLAB, change to the mft directory if it is not already on the MATLAB path and run the test function by typing mft_test.
Related Links
- Functions of Matrices: Theory and Computation (SIAM, 2008.).
- MATLAB Guide (with Desmond J. Higham, SIAM, second edition, 2005) documents the matrix function routines built into MATLAB.
- Accuracy and Stability of Numerical Algorithms (SIAM, second edition, 2002).