Skip to content

Support GECON WELL workover procedure. #7100

Draft
GitPaean wants to merge 4 commits into
OPM:masterfrom
GitPaean:support_GECON_WELL
Draft

Support GECON WELL workover procedure. #7100
GitPaean wants to merge 4 commits into
OPM:masterfrom
GitPaean:support_GECON_WELL

Conversation

@GitPaean
Copy link
Copy Markdown
Member

@GitPaean GitPaean commented May 29, 2026

The PR implement the item 7 of GECON keyword set to be WELL workover procedure.

It depends on OPM/opm-common#5191 .

@GitPaean GitPaean added the manual:enhancement This is an enhancement/improvent that needs to be documented in the manual label May 29, 2026
@GitPaean GitPaean force-pushed the support_GECON_WELL branch 2 times, most recently from 76c6d14 to 8005df8 Compare May 29, 2026 09:21
@GitPaean
Copy link
Copy Markdown
Member Author

jenkins build this opm-common=5191 please

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds support for the GECON keyword’s item 7 workover procedure WELL by implementing logic to identify the worst offending producer (based on the violated ratio) within a group hierarchy and close that well, instead of throwing “not implemented”.

Changes:

  • Extend GroupEconomicLimitsChecker ratio checks to return structured ratio-violation details and implement GECON(WORKOVER)=WELL by closing the worst offending producer well.
  • Update BlackoilWellModelGeneric::checkGEconLimits() to route ratio violations through the new details-based API.
  • Update keyword support validation to accept GECON(WORKOVER)=WELL.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 5 comments.

File Description
opm/simulators/wells/GroupEconomicLimitsChecker.hpp Adds ratio-violation types/details and new workover-related APIs/helpers.
opm/simulators/wells/GroupEconomicLimitsChecker.cpp Implements WELL workover procedure: find worst offending producer ratio across MPI ranks and close that well.
opm/simulators/wells/BlackoilWellModelGeneric.cpp Switches GECON ratio checking to the new ratioViolation() + doWorkOver(details) flow.
opm/simulators/utils/PartiallySupportedFlowKeywords.cpp Marks GECON(WORKOVER) as supporting NONE and WELL.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread opm/simulators/wells/GroupEconomicLimitsChecker.cpp Outdated
Comment thread opm/simulators/wells/GroupEconomicLimitsChecker.cpp Outdated
Comment thread opm/simulators/wells/GroupEconomicLimitsChecker.cpp
Comment thread opm/simulators/wells/GroupEconomicLimitsChecker.cpp
Comment thread opm/simulators/wells/GroupEconomicLimitsChecker.cpp
@GitPaean GitPaean force-pushed the support_GECON_WELL branch from e370a8c to 3d676aa Compare May 29, 2026 09:59
@GitPaean
Copy link
Copy Markdown
Member Author

GitPaean commented May 29, 2026

jenkins build this opm-common=5191 please

The jenkins results is here. https://ci.opm-project.org/job/opm-simulators-PR-builder/10010/

it is green.

@GitPaean
Copy link
Copy Markdown
Member Author

The messaging might be too long,

image

Will break the line after the jenkins finished.

@GitPaean
Copy link
Copy Markdown
Member Author

GitPaean commented May 29, 2026

not related to this PR, somehow we give non-zero values for the WGPRH, although there is not historical keywords specified.

image

@GitPaean
Copy link
Copy Markdown
Member Author

GitPaean commented May 29, 2026

not related to this PR, somehow we give non-zero values for the WGPRH, although there is not historical keywords specified.

image
image

Obviously, there is some bug or inconsistency in the reference simulator, they choose to have zero -RH summary output, but non-zero -TH summary output.

The black line is the reference simulator, the green line is flow. But the one below is after I tried to zero-out the -RH output.

@GitPaean GitPaean force-pushed the support_GECON_WELL branch from 3d676aa to 2b8dd46 Compare May 29, 2026 10:55
@GitPaean
Copy link
Copy Markdown
Member Author

The messaging might be too long,

image Will break the line after the jenkins finished.

it looks the following way now.

image

@GitPaean
Copy link
Copy Markdown
Member Author

I added a new regression test, so the new jenkins test will fail because of that.

@GitPaean
Copy link
Copy Markdown
Member Author

jenkins build this please

@GitPaean
Copy link
Copy Markdown
Member Author

jenkins build this opm-common=5191 please

@akva2
Copy link
Copy Markdown
Member

akva2 commented May 29, 2026

mind the new warnings.

@GitPaean
Copy link
Copy Markdown
Member Author

mind the new warnings.

Thanks. They are fixed now.

@GitPaean
Copy link
Copy Markdown
Member Author

jenkins build this opm-common=5191 please

@GitPaean
Copy link
Copy Markdown
Member Author

jenkins build this opm-common=5191 please

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

manual:enhancement This is an enhancement/improvent that needs to be documented in the manual

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants