Split AdaptivityHandler::adapt_grid() method into two parts: mark_grid and adapt_grid
Description
Split AdaptivityHandler::adapt_grid()
into two parts: mark_grid()
and adapt_grid()
Proposal
When coupling models, the so-called superstructure has to be the one who calls the method adapt_grid()
from PDELab. In particular, because it has to provide all the vectors and grid function spaces packed together. Is just not possible to do it independently without breaking other models.
However, the mark_grid()
method can be called independently by one or more models so that the model marks the grid where is more convenient for its own solution. (is not very likely that we want several models marking the grid at once)
Then the idea is to separate these two concepts in the AdaptivityHandler
so that the superstructure can ask to one of the models to mark the grid, and later adapt it for all of the solutions.
See discussion in #94 (closed) for adaptivity of coupled models.
How to test the implementation?
- The
RichardsSimulation
is doing the same adaptivity as before. - The new superstructure is able to perform the same adaptivity as
RichardsSimulation
.
Related issues
See #72 (closed), #94 (closed)