Template Numerical Toolkit



The Template Numerical Toolkit (or TNT) is a software library for manipulating vectors and matrices in C++ created by the U.S. National Institute of Standards and Technology. TNT provides the fundamental linear algebra operations (for example, matrix multiplication). TNT is analogous to the BLAS library used by LAPACK. Higher level algorithms, such as LU decomposition and singular value decomposition, are provided by JAMA, also developed at NIST, which uses TNT.

The major features of TNT are:
 * All classes are template classes and therefore work with float, double, or other user-defined number types.
 * Matrices can be stored in row-major order or column-major order for Fortran compatibility.
 * The library is simply a collection of header files, and therefore does not need to be independently compiled.
 * Some support for sparse matrix storage is provided.
 * The source code is in the public domain.

TNT is mature, and NIST classifies its development status as active maintenance.

The principal designer of TNT is Roldan Pozo.