Technical Report TR-2006-08

BibliographyBlatt, Markus; Bastian, Peter: The Iterative Solver Template Library (ISTL).
University of Stuttgart, Faculty of Computer Science, Electrical Engineering, and Information Technology, Technical Report Computer Science No. 2006/08.
10 pages, english.
CR-SchemaG.1.3 (Numerical Linear Algebra)
G.1.8 (Partial Differential Equations)
Keywordslinear iterative methods; preconditioners; domain decomposition methods; algebraic multigrid; C++; generic programming; templates; blockrecursive matrix algorithms
Abstract

The numerical solution of partial differential equations frequently requires the solution of large and sparse linear systems. Using generic programming techniques like in C++ one can create solver libraries that allow efficient realization of "fine grained interfaces", i. e. with functions consisting only of a few lines, like access to individual matrix entries. This prevents code replication and allows programmers to work more efficiently.

In this paper we present the "Iterative Solver Template Library" (ISTL) which is part of the "Distributed and Unified Numerics Environment" (DUNE). It applies generic programming in C++ to the domain of iterative solvers of linear systems stemming from finite element discretizations. Those discretizations exhibit a lot of structure. Our matrix and vector interface supports a block recursive structure. I. E. each sparse matrix entry can be a sparse or a small dense matrix itself. Based on this interface we present efficient solvers that use the recursive block structure via template metaprogramming.

Full text and
other links
PDF (151705 Bytes)
DUNE
ContactMarkus Blatt
Department(s)University of Stuttgart, Institute of Parallel and Distributed Systems, Simulation of Large Systems
Project(s)The Distributed and Unified Numerics Environment (DUNE)
Entry dateOctober 11, 2006
   Publ. Computer Science