[dune-pdelab] Major reorganization of ISTL backend headers

Steffen Müthing steffen.muething at ipvs.uni-stuttgart.de
Tue May 21 17:11:18 CEST 2013


Dear PDELab,

I just pushed some commits that do a major reorganization of the ISTL backend header
structure, as the old one was a mess of some huge files containing an unorganized heap
of interface classes and support infrastructure.

See below for the reasoning, but there is one important piece of information: Your existing programs
*may* break if you don't include istlmatrixbackend.hh explicitly. Until now, that wasn't a problem
because it was already included by istlvectorbackend.hh due to some weird header dependencies,
but now you might have to explicitly include it. That said, the solver backend headers include both,
so you are probably fine. If there is any other problem, yell at me... ;-)


The rest is really only interesting for people who want to hack on the backends:

With the reorganized files it should be a lot easier to figure out the required structure of
a PDELab backend (I'll also try to add some documentation in the future). Basically, everything
important (and nothing else) is now in three header files:

istlvectorbackend.hh: The vector container with all the required nested types
istlmatrixbackend.hh: The matrix container with all the required nested types
istl/descriptors.hh: The ISTLVectorBackend and ISTLMatrixBackend classes that get stuffed into the GFS / GO.

It is not strictly necessary to have the ISTLVectorBackend / ISTLMatrixBackend in a separate
file, although it is of course a little cleaner. The main reason to do so for ISTL is to remove the
amount of ISTL-specific code pulled in by gridfunctionspace.hh if someone wants to use another
backend.

Best,
Steffen

Steffen Müthing
Universität Stuttgart
Institut für Parallele und Verteilte Systeme
Universitätsstr. 38
70569 Stuttgart
Tel: +49 711 685 88429
Fax: +49 711 685 88340
Email: steffen.muething at ipvs.uni-stuttgart.de

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 495 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <https://lists.dune-project.org/pipermail/dune-pdelab/attachments/20130521/4aaf4686/attachment.sig>


More information about the dune-pdelab mailing list