Template Numerical Toolkit 1.26 review
DownloadTemplate Numerical Toolkit (TNT) is a collection of interfaces and reference implementations of numerical objects useful for scientif
|
|
Template Numerical Toolkit (TNT) is a collection of interfaces and reference implementations of numerical objects useful for scientific computing in C++.
The toolkit defines interfaces for basic data structures, such as multidimensional arrays and sparse matrices, commonly used in numerical applications. Template Numerical Toolkit's goal is to provide reusable software components that address many of the portability and maintennace problems with C++ codes.
TNT provides a distinction between interfaces and implementations of TNT components. For example, there is a TNT interface for two-dimensional arrays which describes how individual elements are accessed and how certain information, such as the array dimensions, can be used in algorithms; however, there can be several implementations of such an interface: one that uses expression templates, or one that uses BLAS kernels, or another that is instrumented to provide debugging information.
By specifying only the interface, applications codes may utilize such algorithms, while giving library developers the greatest flexibility in employing optimization or portability strategies.
TNT Data Structures
C-style arrays
Fortran-style arrays
Sparse Matrices
Vector/Matrix
TNT utilities
array I/O
math routines (hypot(), sign(), etc.)
Stopwatch class for timing measurements
Libraries that utilize TNT
JAMA: a linear algebra library with QR, SVD, Cholesky and Eigenvector solvers.
old (pre 1.0) TNT routines for LU, QR, and Eigenvalue problems
Template Numerical Toolkit 1.26 keywords