Skip to content
Snippets Groups Projects
Oliver Sander's avatar
Oliver Sander authored
All ISTL vectors and matrices have to export the 'blocklevel' integer.
It is used to determine the nesting depth of a given vector or matrix.

As it turns out, the vector blocklevel field is never actually used
within dune-istl.  The matrix blocklevel is used a few times.
However, with C++11 and beyond it is quite easy to compute the vector
and matrix nestings depths without requiring the blocklevel field
from each and every vector and matrix implementation.

This patch adds a little helper method matrixBlockLevel that computes
the nesting depth of a given matrix type.  The method is contained
in the Imp namespace, to keep it out of the official dune-istl API.
0db085df
History

DUNE-library

DUNE, the Distributed and Unified Numerics Environment is a modular toolbox for solving partial differential equations with grid-based methods.

The main intention is to create slim interfaces allowing an efficient use of legacy and/or new libraries. Using C++ techniques DUNE allows to use very different implementation of the same concept (i.e. grid, solver, ...) under a common interface with a very low overhead.

DUNE was designed with flexibility in mind. It supports easy discretization using methods, like Finite Elements, Finite Volume and also Finite Differences. Through separation of data structures DUNE allows fast Linear Algebra like provided in the ISTL module, or usage of external libraries like blas.

This package contains the basic DUNE istl classes.

More information

Check dune-common for more details concerning dependencies, known bugs, license and installation.