Introduce inclusion_mapping
operation
#3581
Draft
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Given two meshes$T_\text{from}$ , $T_\text{to}$ that are contained in one another $T_\text{from} \subset T_\text{to}$ , in the sense of vertices being a subset, and mesh produced as a (possibly local) refinement procedure, the $T_\text{to}$ of the 'vertices in $T_\text{from}$ .
inclusion_mapping
function computes the global indices inThe computed index mapping thus generally describes how one refined mesh is contained in another and is a first step for a multi grid implementation.
Performs a local identification first to detect the vertices. For this to succeed the spatial parallelization of$T_\text{from}$ and $T_\text{to}$ must match. I.e. every vertex in $T_\text{from}$ that is part of $T_\text{to}$ as well must be available on the same process.
If this local check is not exhaustive a global vertex list is gathered and used for the computation (does not scale, needs to be treated with care).
Improved subset of #3363
TODO: