Matrix Template Library
Appearance
The Matrix Template Library (MTL) is a linear algebra library for C++ programs.
The MTL uses template programming, which considerably reduces the code length. All matrices are available as float
, double
, complex<float>
or complex<double>
. The MTL supports several implementations of sparse matrices.
Features
The Matrix Template Library is:
Generic, Orthogonal, and Comprehensive:
MTL includes a large number of data formats and algorithms, including most popular sparse and dense matrix formats and functionality equivalent to Level 3 BLAS.
Flexible and Extensible:
The MTL interface is designed to allow new functionality to be easily incorporated.
High Performance:
With a good optimizing compiler, such as KAI's C++, MTL provides performance equal to (and in many cases better than) vendor-tuned math libraries.
Reliable: MTL is extensively tested on a regular basis. Portable:
MTL is written in ANSI C++ and can be compiled and used on any target platform with an ANSI C++ compiler. Currently, compilers known to work are KAI's C++ on various platforms, MIPSp ro 7.3 on SGI, Visual C++ 6.0 and Metrowerks CodeWarrior Pro 5 on NT, egcs-2.91.60 and gcc 2.95.x on various platforms.
source (http://www.osl.iu.edu/research/mtl/)
See also
- Boost uBLAS, an alternative linear algebra library for C++
External links
- MTL homepage