Parallel ISTL
This changes the linear algebra interface such that parallel linear algebra backends can be used and provides the implementation of the interface for parallel ISTL solvers.
Adds:
- Support for parallel ISTL solvers using the current solver interface
- Runtime switch for overlap type of the ISTL solver used
-
solver->category: [default, sequential, nonoverlapping, overlapping]
initfile parameter -
Comm
object for the linear algebra interface that is to be used as a container for all required information for running the backend's solvers in parallel - Implementation of the
Comm
object for ISTL
Changes:
- Linear algebra classes now use a
Traits
class as template parameter
TODO:
-
Check if Grid
uses overlap and use[Non]OverlappingSchwarzOperator
-
Provide an efficient method for computing the parallel index set -
Resolve allTODO(FM)
markers -
Make an alternative implementation for nonoverlapping Schwarz -
Handle the corner caseoverlapSize + ghostSize == 0
-
Add an example or test file -
Update assembler element loops to use the proper partition set
Relates to #4 (closed).
Edited by Müller, Felix