The Iterative Template Library (ITL) is a generic component library
that provides iterative methods for solving linear systems. ITL also
provides numerious preconditioners which is for MTL.
ITL uses the abstract interface
of matrix-vector, vector-vector, and vector-scalor operations MTL is default to serve those
operations. ITL is able to use other packages such as Blitz++ and BLAS
with the same abstract interface provided.
Features
The Iterative Template Library is:
Generic, Orthogonal, and
Comprehensive:
ITL includes a large number of preconditioners and iterative
methods. Users are able to use ITL with their data structures if those
data structures need the concepts of algorithms.
Flexible and Extensible:
The ITL interface is designed to allow using other packages
conforming to the abstract interface of matrix-vector operations. ITL
is able to extend the matrix-free methods without any problems.
High Performance:
The performance of ITL is
mainly dependent on the package provides matrix-vector
operations. With the default MTL implemention ITL demonstrates
performance equal to (and in many cases better than) other fine-tuned
Fortran libraries.
Reliable:
ITL is extensively tested on a
nightly basis.
Portable:
ITL is written in ANSI C++ and can
be compiled and used on any target platform with an ANSI C++ compiler.
Current Release
Current release of ITL is 4.0.0.
The mail list of ITL is combined in the MTL mail list. If you would
like to be kept informed as new releases of ITL are made available,
please subscribe to our MTL announcement
list.
If you have comments or suggestions, email mtl-devel@osl.iu.edu