Enable parallel runs
What does this MR do?
Sets up the models to run in parallel. Several things are needed for this to work, and not all the cases.
- The host grid should be load balanced together with its subdomain indices.
- Fix bug on multi-domain grid extensions/dune-multidomaingrid!27 (merged)
- Fix issues on PDELab regarding dynamic grid function spaceshttps://gitlab.dune-project.org/copasi/dune-pdelab/compare/70b3512be66d3b77ea1ced44882d0b9811c7293f...695e0bd0de57d76a0a00f74e03bbd12b7cdcb43d
- Remove border exchange (only needed for AMG)
- Remove AMG support on linear solvers (redundant since there is an independent solver for AMG)
- Remove
make_consistent
methods in grid function spaces (only needed for AMG) - Send leaf information. If this is not done, the communicator handler assumes that the sender and the receiver grid function spaces contribute to the same offsets in the GFS. This is not true when the communicator sends codim 1 information on multi-domain interfaces.
- Use non-overlapping entity set and linear solver.
- Because of the solver, we have to constraint the boundary with conforming constraints
Because of the choice of non-overlapping method, this currently rules out any computation involving finite volumes on the processor boundary.
Is there something that needs to be double checked?
- Not working cases (i.e Finite Volumes) throw a meaningful error?
- The constraints are mutable. This makes no sense on the const-correctness of the model class!
- TODO: Think of another way to share constraint conditions that make sense in a modelling framework.
Can this MR be accepted?
-
I've read contribution guide
-
Implemented -
Added/Updated tests -
Added/Updated documentation -
Pipelines passing
-
Delete branch option set -
Fast-forwaded git merge is possible -
Added entry to CHANGELOG.md
Related issues
Closes #9 (closed)
Edited by Santiago Ospina De Los Ríos