Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Support for Edge Conformal Corner-Point Grid Processing #814

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

bska
Copy link
Member

@bska bska commented Dec 17, 2024

Initially supported fully only for the UnstructuredGrid (create_grid_cornerpoint() constructor, PolyhedralGrid wrapper), this PR introduces amended logic that aims to create edge conformal cell complexes. Specifically, the faces of the processed_grid structure from process_grdecl() contains all vertices along the pillars, not just the top and bottom vertices of the traditional corner-point description. Moreover, the create_grid_cornerpoint() function will insert additional vertices in the top and bottom faces when the edge conformal mode is activated. This aspect is not yet available in the CpGrid implementation, though the vertices along the pillars will be included in that case too.

Client code may activate this mode by setting the edge_conformal flag to true. The flag is a bool (i.e., _Bool) in both the C and the C++ code, but transmitted as an int across the language boundary.

At this time, the mode is intended to support geo-mechanical workflows and should typically not be enabled in production runs of regular reservoir simulations. Furthermore, this is not tested or supported in parallel runs.

While here, split some long lines and mark objects const where possible.


Work by @hnil.

@bska
Copy link
Member Author

bska commented Dec 17, 2024

jenkins build this please

@bska bska force-pushed the edge-conformal-grid-processing branch 2 times, most recently from a90f24c to 52e13da Compare December 20, 2024 14:45
@bska bska force-pushed the edge-conformal-grid-processing branch 2 times, most recently from b2c5191 to f61a79f Compare January 20, 2025 11:04
@bska bska force-pushed the edge-conformal-grid-processing branch 3 times, most recently from 93b9d97 to 06a92df Compare January 29, 2025 15:39
@bska bska force-pushed the edge-conformal-grid-processing branch 3 times, most recently from 3e04a44 to 3b9e712 Compare February 6, 2025 10:32
@bska bska force-pushed the edge-conformal-grid-processing branch 5 times, most recently from ba9a00c to 6e48eb1 Compare February 10, 2025 17:20
@bska
Copy link
Member Author

bska commented Feb 10, 2025

jenkins build this opm-simulators=5806 please

@bska
Copy link
Member Author

bska commented Feb 10, 2025

Just to be very clear: The new edge_conformal flag is an API change and this PR is therefore accompanied by the downstream PR OPM/opm-simulators#5806. The two PRs must be reviewed and merged in concert.

@bska
Copy link
Member Author

bska commented Feb 10, 2025

jenkins build this opm-simulators=5806 opm-upscaling=397 please

@bska bska force-pushed the edge-conformal-grid-processing branch from 6e48eb1 to 0cd0cd2 Compare February 11, 2025 11:29
@bska
Copy link
Member Author

bska commented Feb 11, 2025

jenkins build this opm-simulators=5806 opm-upscaling=397 please

@bska bska force-pushed the edge-conformal-grid-processing branch from 0cd0cd2 to 4fc5edd Compare February 11, 2025 13:38
@bska
Copy link
Member Author

bska commented Feb 11, 2025

jenkins build this opm-simulators=5806 opm-upscaling=397 please

@bska bska force-pushed the edge-conformal-grid-processing branch from 4fc5edd to 191c5f4 Compare February 13, 2025 11:03
@bska
Copy link
Member Author

bska commented Feb 13, 2025

jenkins build this opm-simulators=5806 opm-upscaling=397 please

@bska bska force-pushed the edge-conformal-grid-processing branch from 191c5f4 to bc2d659 Compare February 17, 2025 12:41
@bska
Copy link
Member Author

bska commented Feb 17, 2025

jenkins build this opm-simulators=5806 opm-upscaling=397 please

@bska bska force-pushed the edge-conformal-grid-processing branch from bc2d659 to a7fe08b Compare February 18, 2025 11:33
@bska
Copy link
Member Author

bska commented Feb 18, 2025

jenkins build this opm-simulators=5806 opm-upscaling=397 please

@bska bska force-pushed the edge-conformal-grid-processing branch from a7fe08b to 2e4e079 Compare February 19, 2025 11:24
@bska
Copy link
Member Author

bska commented Feb 19, 2025

jenkins build this opm-simulators=5806 opm-upscaling=397 please

@bska bska force-pushed the edge-conformal-grid-processing branch from 2e4e079 to c828f5f Compare February 20, 2025 12:45
@bska
Copy link
Member Author

bska commented Feb 20, 2025

jenkins build this opm-simulators=5806 opm-upscaling=397 please

@bska bska force-pushed the edge-conformal-grid-processing branch from c828f5f to e556242 Compare February 21, 2025 12:21
@bska
Copy link
Member Author

bska commented Feb 21, 2025

jenkins build this opm-simulators=5806 opm-upscaling=397 please

@bska bska force-pushed the edge-conformal-grid-processing branch from e556242 to 9065bdf Compare February 24, 2025 08:05
@bska
Copy link
Member Author

bska commented Feb 24, 2025

jenkins build this opm-simulators=5806 opm-upscaling=397 please

Initially supported fully only for the 'UnstructuredGrid'
(create_grid_cornerpoint() constructor, PolyhedralGrid wrapper),
this commit introduces amended logic that aims to create edge
conformal cell complexes.  Specifically, the faces of the
'processed_grid' structure from 'process_grdecl()' contains *all*
vertices along the pillars, not just the top and bottom vertices of
the traditional corner-point description.  Moreover, the
create_grid_cornerpoint() will insert additional vertices in the top
and bottom *faces* when the edge conformal mode is activated.  This
aspect is not yet available in the CpGrid wrapper, though the
vertices along the pillars will be included in that case too.

Client code may activate this mode by setting the 'edge_conformal'
flag to 'true'.  The flag is a bool (i.e., _Bool) in both the C and
the C++ code, but transmitted as an 'int' across the language
boundary.

At this time, the mode is intended to support geo-mechanical
workflows and should typically not be enabled in production runs of
regular reservoir simulations.

While here, split some long lines and mark objects 'const' where
possible.
@bska bska force-pushed the edge-conformal-grid-processing branch from 9065bdf to 45d24f8 Compare March 4, 2025 17:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants