Commit Graph
24062 Commits
Author SHA1 Message Date
Bård Skaflestad 976315e223 Merge pull request #6767 from akva2/fix_restart_ref_update
fixed: updating of restart reference files
2026-01-27 10:32:20 +01:00
Arne Morten Kvarving b953b94f7d fixed: updating of restart reference files 2026-01-27 10:00:08 +01:00
Håkon Hægland 56caf85a10 Fix some logging fallout to non-zero MPI ranks
In multi-rank MPI runs, some log messages were written by all ranks instead
of only rank 0, causing "logging fallout" files (e.g., CASE.1.DBG, CASE.2.DBG).

Changes:
- Add rank check before calling logPressures() in FlowThresholdPressure
- Make TimeStepControl verbose flag rank-aware in createController()

This ensures only rank 0 produces log output for these code paths.
2026-01-26 13:44:57 +01:00
Håkon Hægland b704741b4c Fix well model slave group data exchange for history mode reservoir coupling
In history mode reservoir coupling, no GRUPSLAV keyword is defined because
rate allocation is not needed (wells use WCONHIST with imposed rates).
This caused assertion failures when the well model attempted to exchange
slave group data with numSlaveGroups == 0.

Changes:
- Skip receiving slave group production/injection data when numSlaveGroups == 0
- Skip sending slave group data when numSlaveGroups == 0
2026-01-26 12:12:13 +01:00
Håkon Hægland 4a5cdb6bff Merge pull request #6759 from hakonhagland/hm_grupslav_fix
Allow reservoir coupling slaves without GRUPSLAV for history matching mode
2026-01-26 12:07:53 +01:00
Kai Bao 2559a5af82 Merge pull request #6760 from GitPaean/removing_duplicated_pw_info
Removing duplicated pw_info from MultisegmentWellEval and MultisegmentWellEquations
2026-01-26 12:04:41 +01:00
Håkon Hægland a49aab171e Simplify GroupTargetCalculator by delegating to GroupStateHelper
Eliminate complicated variant handling in initForInjector_() and
initForProducer_(). The code previously required knowledge of std::variant
internals to understand.

Changes:
- Add getInjectionGuideTargetMode() and getProductionGuideTargetMode()
  to GroupStateHelper, delegating the Phase/CMode to GuideRateModel::Target
  conversion
- Refactor initForInjector_() and initForProducer_() to construct
  calculators directly instead of going through variant intermediaries
- Merge getTargetFromCalculator() and getTargetNoGuideRate() into
  getGroupTargetNoGuideRate(), eliminating redundant method and
  unused variant parameter
- Call GroupStateHelper directly for groupTarget() instead of extracting
  from variant

The variant type is still used for calcModeRateFromRates() which requires
the polymorphic behavior.
2026-01-26 12:02:19 +01:00
Bård Skaflestad c0c364acde Merge pull request #6757 from akva2/use_kw_target_link_libraries
consistently use keyword based target_link_libraries
2026-01-26 11:05:00 +01:00
Markus Blatt 58a5b103e6 Merge pull request #6754 from hakonhagland/slaves_ngm_fix
Allow SLAVES without GRUPMAST for history mode reservoir coupling
2026-01-26 10:48:22 +01:00
Kai Bao 0392948c7d renaming some pw_info to parallel_well_info
for consistent naming.
2026-01-26 10:47:34 +01:00
Arne Morten Kvarving 644886b6d0 Merge pull request #6752 from daavid00/micpluv
Bugfix (micp+disperc) to uninitialized velocity
2026-01-26 10:22:16 +01:00
Håkon Hægland eb821ec6c3 Allow reservoir coupling slaves without GRUPSLAV for history mode
History mode reservoir coupling only synchronizes time steps between
master and slaves. No rate allocation occurs, so GRUPSLAV (which maps
slave groups to master groups for rate constraints) is not needed.

Changes:
- Reorder master-slave initial communication so slaves receive master
  group names before determining activation date
- Handle zero master groups case in getMasterGroupNamesForSlave_(),
  sendMasterGroupNamesToSlaves_(), and receiveMasterGroupNamesFromMasterProcess_()
- Add numMasterGroups_() method to ReservoirCouplingSlave to detect
  history mode (no GRUPMAST on master means no master groups)
- When no GRUPSLAV found and numMasterGroups is zero, assume slave
  activation at simulation start (history mode)
2026-01-24 14:53:09 +01:00
Kai Bao 6de814f52b removing pw_info_ from MultisegmentWellEquations also 2026-01-24 11:11:06 +01:00
Kai Bao 80c0cd72fd removing pw_info_ member from MultisegmentWellEval
it is the same with parallel_well_info_ from WellInterfaceGeneric, so we
do not need to store another one.
2026-01-23 16:20:10 +01:00
Atgeirr Flø Rasmussen e4ead69a9f Merge pull request #6755 from akva2/fix_update_data_and_failure_report
fix: update_data and failure_report triggers
2026-01-23 16:08:39 +01:00
Håkon Hægland 3aca3940ab Allow SLAVES without GRUPMAST for history mode reservoir coupling
History mode reservoir coupling only requires time synchronization, not
rate allocation. GRUPMAST is only needed for prediction mode where the
master allocates rates to slaves.
2026-01-23 16:04:17 +01:00
Arne Morten Kvarving ec6791b62d consistently use keyword based target_link_libraries 2026-01-23 14:40:44 +01:00
Arne Morten Kvarving e1f16115f6 fix: update_data and failure_report triggers
for reason unknown, cmake sometimes choose to pad/escape test names with a
=[ ... ]= in the CTestTestFile. Due to changes lately, this has somehow
triggered. Since we rely on extrating information
from this file, update_data and failure_report triggers broke.

this makes the re's more resilient by allowing the existence of the separators
2026-01-23 13:26:59 +01:00
David Landa Marban edd918e33d Bugfix (micp+disperc) to uninitialized velocity 2026-01-23 12:18:53 +01:00
Arne Morten Kvarving 08baeba7ad Merge pull request #6753 from akva2/janitoring_quell_warnings
fixed: signed/unsigned comparison warnings
2026-01-23 11:48:08 +01:00
Arne Morten Kvarving b82f01574a fixed: signed/unsigned comparison warnings 2026-01-23 11:28:15 +01:00
Tor Harald Sandve 2aa246fa13 Merge pull request #6723 from svenn-t/tuningdp
Convergence check on max. solution update (TUNINGDP)
2026-01-23 07:47:37 +01:00
Håkon Hægland fda1b04f7c Bugfix: Also initialize target calculator for injectors 2026-01-22 18:54:59 +01:00
Håkon Hægland 8d988ecb7b Don't store toplevel_control_mode as a member 2026-01-22 18:54:59 +01:00
Håkon Hægland 28522ee936 Bugfix: Don't calculate target for none control
Don't calculate target for an injection group phase that has no
control.
2026-01-22 18:54:59 +01:00
Håkon Hægland 1f72344262 Bugfix: get correct guide rate for injectors
The current code fetched production guide rates for injectors.
2026-01-22 18:54:59 +01:00
Håkon Hægland 2c765a57da Bugfix: Pass parent group not group itself
When checking higher order constraints, we should start with the
parent of the master group, not the master group itself.
2026-01-22 18:54:59 +01:00
Markus Blatt 2ee0e7a4b6 Merge pull request #6711 from hakonhagland/gcw_fix
Reservoir coupling: Fix group controlled wells (GCW) calculation for reservoir coupling master groups
2026-01-22 17:02:19 +01:00
Arne Morten Kvarving 1755bd3032 Merge pull request #6748 from akva2/bump_cmake_3.23
bump minimum cmake version to 3.23
2026-01-22 14:15:10 +01:00
David Landa-Marbán 42a94df4ba Merge pull request #6747 from daavid00/warn
Removing not used deferred_logger
2026-01-22 13:16:16 +01:00
Svenn Tveit 708af98b7e Only set relaxed CNV flag for PV fraction if > 0.0 2026-01-22 13:07:55 +01:00
Svenn Tveit c0e5851486 Replace relaxed tol. messages with debug flags 2026-01-22 13:05:37 +01:00
Svenn Tveit c621f5254d Removed debug message and fix tolerance parameter checks 2026-01-22 13:03:42 +01:00
Arne Morten Kvarving bf64b4310a bump minimum cmake version to 3.23
common buildsystem now uses file sets
2026-01-22 12:56:16 +01:00
David Landa Marban b4cf82c1cd Removing not used deferred_logger 2026-01-22 12:50:07 +01:00
Håkon Hægland 1ae9d880ca Merge pull request #6737 from hakonhagland/gconsump_eff
Fix GCONSUMP efficiency factor application
2026-01-22 12:23:07 +01:00
Håkon Hægland 31f7954f52 Fix rebase issues 2026-01-22 11:14:54 +01:00
Håkon Hægland 2adacd2223 Fix GCW calculation for reservoir coupling master groups
Master groups in reservoir coupling have no wells in the master
reservoir (they represent slave groups), so their GCW (Group Controlled
Wells) count was 0. This caused them to be incorrectly excluded from:
- Guide rate distribution (FractionCalculator)
- Local reduction level calculations
- Target constraint checking

Fix: Set GCW = 1 for RC master groups by convention. This is consistent
with how GCW is used throughout the code - only the condition GCW > 0
matters, not the actual count.
2026-01-22 11:14:52 +01:00
Markus Blatt 5b942ef9cb Merge pull request #6709 from hakonhagland/gcw_auto_choke
Refactor auto choke group controlled wells exclusion logic in GroupStateHelper
2026-01-22 10:32:19 +01:00
Håkon Hægland 14d178952a Merge pull request #6746 from hakonhagland/ctest_err_msg
Improve error message for missing simulator binary in regression tests
2026-01-22 10:17:57 +01:00
Håkon Hægland 3903701283 Also suggest cmake tool abstraction
Also suggest build with cmake tool abstraction command line
2026-01-21 15:55:28 +01:00
Håkon Hægland 6fd1142db5 Improve error message for missing simulator binary in regression tests
Add a check in run-regressionTest.sh that provides a clear error message
with build instructions when the simulator binary is not found.
2026-01-21 15:31:03 +01:00
Bård Skaflestad 3e7575c0c4 Merge pull request #6743 from akva2/fix_installation_hip_headers
fix installation paths for generated headers
2026-01-21 15:22:44 +01:00
Håkon Hægland 327dcd5a3c Make GCONSUMP test DATA files runnable with flow simulator
Update GCONSUMP.DATA and GCONSUMP_COMPLEX.DATA to be valid input for
full simulation runs while preserving their unit test functionality:

- Fix EQUIL datum depth to match gas-oil contact (7020 → 7000)
- Fix PVTO bubble point relationship (Rs/Pbub must be monotonic)
- Extend PVDG pressure range to cover reservoir pressure (→ 300 bar)
- Adjust SGOF Sg_max to avoid floating-point SOGCR precision issue
2026-01-21 14:58:28 +01:00
Bård Skaflestad 3d27706e57 Merge pull request #6745 from akva2/bump_c11
remove C99 package
2026-01-21 13:15:12 +01:00
Arne Morten Kvarving 4e97ecfdb9 remove C99 package 2026-01-21 11:45:28 +01:00
Arne Morten Kvarving abbc57dfb6 Merge pull request #6744 from akva2/fix_python_tests_data_race
python tests: add output-dir parameters
2026-01-21 11:03:48 +01:00
Arne Morten Kvarving 43f03706ad python tests: add output-dir parameters
avoid races on the UNRST file when tests run in parallel
2026-01-21 10:28:24 +01:00
Arne Morten Kvarving 3b4e281e89 fix installation paths for generated headers 2026-01-21 09:56:21 +01:00
Arne Morten Kvarving a61eaa40f5 Merge pull request #6738 from akva2/message_file_in_workspace
put message file in workspace
2026-01-20 13:02:28 +01:00