OPM / opm-grid

DUNE module supporting grids in a corner-point format
http://www.opm-project.org
GNU General Public License v3.0
19 stars 78 forks source link

Point ids for refined grids and addLgrsUpdateLeafGridView refactorization #802

Closed aritorto closed 4 days ago

aritorto commented 1 week ago

This PR introduces a structure to manage the point global IDs of all refined child cells per parent. This structure ensures the correct assignment of global point IDs in refined grids, gathering already-assigned IDs for interior cells and distributing them for overlap cells.

Current approach avoids duplicated point ids in the following setting: Let's say a block of cells to be refined is distributed in P_{i0}, ..., P{in}, with n+1 < grid.comm().size(). If all cells to be refined are not "seen"(neither interior nor overlap) for every process P with P != P{i_j}, j = 0, ..., n.

Points that may have multiple ids as shown and explained in OPM/opm-grid#806. Cells that only share corners (not faces) with interior cells of a process are not included in its overlap layer, therefore, some point may have multiple ids.

Keeping this potential multiple point ids in mind, this PR allows distributing Local Grid Refinements (LGRs) across different processes, subject to first distribute level zero grid, and after that add the LGRs. To be able to run the simulation, some changes to respect this order must be done in opm-simulators.

Improvement/replacement for OPM/opm-grid#801

Not relevant for the Reference Manual

aritorto commented 1 week ago

jenkins build this serial please

akva2 commented 1 week ago

some new warnings, please address

aritorto commented 1 week ago

jenkins build this serial please

aritorto commented 1 week ago

jenkins build this serial please

aritorto commented 5 days ago

@blattms all commnets have been addressed, many thanks for your review!

aritorto commented 5 days ago

jenkins build this serial please

aritorto commented 4 days ago

jenkins build this serial please