Draft: Periodicity with Subgrid
What this MR does / why does DuMux need it:
DUNE Subgrid currently does not preserve intersection.boundary()
from the host grid, which we use to detect periodic boundaries with intersection.neighbor() == intersection.boundary() == true
(see https://gitlab.dune-project.org/extensions/dune-subgrid/-/issues/8).
This MR extracts the logic for detecting periodic intersections from discretization-specific gridgeometries to a helper struct. This could also hold information regarding grid capabilities for periodicity, which is currently more spread out, e.g. in the freeflow velocitygradients.hh
.
Notes for the reviewer
Before you request a review from someone, make sure to revise the following points:
-
does the new code follow the style guide? -
do the test pipelines pass? (see guide on how to run pipelines for a merge request) -
is the code you changed and/or the new code you wrote covered in the test suite? (if not, extend the existing tests or write new ones) -
does your change affect public interfaces or behavior, or, does it introduce a new feature? If so, document the change in CHANGELOG.md
. -
is the list of the header includes complete? ("include what you use") -
all files have to end with a \n
character. Make sure there is no\ No newline at end of file
comment in "Changes" of this MR.
Edited by Mathis Kelm