Commit Graph
24610 Commits
Author SHA1 Message Date
David Landa-Marbán f40e92fbaf Merge pull request #6980 from bska/restore-accidentally-removed-tests
Restore Accidentally Removed Regression Tests
2026-04-10 21:51:59 +02:00
Markus Blatt 974a15b004 Merge pull request #6982 from michal-toth/versiobump
Bump version to 2026.04-pre
2026-04-10 18:18:43 +02:00
Michal Tóth bbaf94d467 Bump version to 2026.04-pre 2026-04-10 15:42:24 +02:00
Bård Skaflestad b8f961bc54 Restore Accidentally Removed Regression Tests
These were introduced in PR #6968 and then accidentally removed in
commit 16227fc24.
2026-04-10 15:07:11 +02:00
Stein Krogstad 8788b9f618 Merge pull request #6963 from steink/ensure_group_feasibility_tmp
Reworked implementation of group control feasibility
2026-04-10 14:33:16 +02:00
Stein Krogstad 16227fc24d reworked implementation of group control feasibility 2026-04-10 14:00:25 +02:00
Markus Blatt 60358657a4 Merge pull request #6968 from daavid00/nnctest
Adding tests for overlapping NNCs (inputed and internally generated)
2026-04-10 13:52:24 +02:00
Håkon Hægland b292f39a0c Populate satellite data for RC summary output
Add updateScheduleSatelliteData() to ReservoirCouplingMaster
and ReservoirCouplingMasterReportStep.  Called from
EclWriter::evalSummaryState() before summary evaluation.

This populates the Schedule's GSatProd and
GroupSatelliteInjection with slave production/injection rates
received via MPI.  The existing satellite_rate machinery in
opm-common's Summary.cpp then automatically computes all
rate-based summary vectors (FOPR, GOPR, FGOR, FWCT, etc.)
correctly for the master model.

Requires the companion opm-common PR that adds
Schedule::updateSatelliteProduction/Injection().
2026-04-10 10:40:05 +02:00
Tor Harald Sandve d01d75ce09 Merge pull request #6978 from hakonhagland/fix_rate_comm
Reservoir coupling: Add end-of-sync-step slave-to-master data exchange
2026-04-10 09:42:17 +02:00
Håkon Hægland ffa6352136 Add end-of-sync-step slave-to-master data exchange
After the master's first substep, block until all slaves have
completed their sync step and sent production/injection data.
This ensures evalSummaryState() and subsequent master substeps
have up-to-date slave rates for correct summary output (FOPR,
GOPR, etc.).

Previously, slave data was only received at beginTimeStep(),
which meant the first sync step had no data and subsequent steps
used stale rates from the previous sync step.

The master sets a needsSlaveDataReceive flag at the start of
each sync step.  On the first converged substep, timeStepSucceeded()
blocks on MPI_Recv until the slaves finish.  The slave predicts
whether each substep is the last one in the sync step and sends data
accordingly.
2026-04-09 20:05:11 +02:00
Bård Skaflestad 5253f3bca2 Merge pull request #6977 from atgeirr/fix-rebuild-duneilu
Fix preconditioner update wrapper and usage.
2026-04-09 15:35:27 +02:00
Atgeirr Flø Rasmussen f215c35ee2 Fix preconditioner update wrapper and usage.
Used for the Dune::SeqILU preconditioner.
Using std::reference_wrapper by calling std::cref at the
call site ensures that the matrix is stored with reference
semantics, instead of copying the matrix from the initial call.
2026-04-09 14:43:39 +02:00
Bård Skaflestad c73a62f8a2 Merge pull request #6929 from akva2/fix_cuda12.0_woes
fix build with cuda 12.0
2026-04-08 14:29:07 +02:00
Arne Morten Kvarving 32413cec42 fix build with cuda 12.0
cuda 12.0 (default in ubuntu 24.04) cannot build fmt.
furthermore, cuda 12.0 only supports up to g++-12 as host compiler,
meaning there is no std::format either. so workaround where possible
by using stringstreams

the test_primary_variables_gpu pulls in too much generic code
so disable it.

i'm not entirely sure if 12.1 is enough for our code to compile
but at least this fixes build issues on a common configuration
2026-04-08 12:02:13 +02:00
Bård Skaflestad 749fd9517b Merge pull request #6976 from akva2/fix_installed_vendored_fmt
fixed: also have to copy include directories
2026-04-08 11:46:56 +02:00
Arne Morten Kvarving 587a579720 fixed: also have to copy include directories
in particular installed builds with vendored fmt broke
2026-04-08 11:28:42 +02:00
Bård Skaflestad 9909f95ac8 Merge pull request #6975 from daavid00/wrns
Fixing some warnings
2026-04-07 13:46:15 +02:00
David Landa Marban 8b06573f6c Fixing some warnings 2026-04-07 12:23:57 +02:00
Bård Skaflestad 718a2b3994 Merge pull request #6974 from akva2/ignore_me
fixed: missing .* in absolute revision jenkins re
2026-04-07 12:00:41 +02:00
Arne Morten Kvarving f2798ecbd1 fixed: missing .* in absolute revision jenkins re 2026-04-07 10:55:10 +02:00
Tor Harald Sandve e4842a3569 Merge pull request #6650 from svenn-t/tpsa_pr
Two-point stress approximation (TPSA) geomechanics
2026-04-07 10:14:20 +02:00
Markus Blatt 5573ffbc20 Merge pull request #6973 from daavid00/warning
Fixing a couple of warnings
2026-03-31 15:28:10 +02:00
David Landa Marban d59ddcfbca Fixing a couple of warnings 2026-03-31 13:56:01 +02:00
Bård Skaflestad 8459d42025 Merge pull request #6971 from bska/add-rsconst-support
Add RSCONST Keyword Support for Simplified Two-Phase Simulation
2026-03-31 11:31:00 +02:00
Elyes Ahmed ed7fce0b04 Add RSCONST keyword support for simplified two-phase simulation
Implement the RSCONST keyword, which models oil/water systems with dead
oil and constant dissolved gas ratio (RS). This assumes RS is uniform
and pressure remains above the bubble point, enabling faster simulation
through simplified equation formulations.

- Add PVT calculations for RSCONST dead oil properties
- Update equilibration state initialization for RSCONST conditions
- Modify well model and state tracking for new phase behavior
- Add unit tests for well state validation
2026-03-31 10:37:27 +02:00
Bård Skaflestad dd1fa0c469 Merge pull request #6970 from daavid00/warn
Fix a warning with ndebug
2026-03-30 16:48:35 +02:00
David Landa Marban 13132f5733 Fix warning with ndebug 2026-03-30 16:20:56 +02:00
Santiago Ospina De Los Ríos 0b0fe4a05d Merge pull request #6949 from blattms/bugfix/fix-build-vexcl-without-opencl
If OpenCL is not found, then do not attempt to set up VexCL.
2026-03-27 21:53:41 +01:00
David Landa Marban 0766981ead Adding tests for overlapping NNCs (inputed and internally generated) 2026-03-27 19:55:25 +01:00
Tor Harald Sandve 789c3d1cd7 Merge pull request #6966 from hakonhagland/fix_m2_crash
Reservoir coupling: Fix crash for NONE/FLD master group production cmode
2026-03-27 13:43:44 +01:00
Kjetil Olsen Lye d242666830 Merge pull request #6960 from multitalentloes/pepare_intensivequantities_for_gpu_assembly
Prepare intensivequantities for gpu assembly
2026-03-27 12:33:43 +01:00
Håkon Hægland 7db04dbf30 Fix crash for NONE/FLD production cmode in RC
Master groups with GCONPROD cmode NONE and guide rate caused a crash in
getProductionGroupTargetForMode_(), which only handles rate-specific
cmodes (ORAT, WRAT, GRAT, LRAT, RESV).

The crash path: TopToBottomCalculator falls through to
getGroupConstraintNoGuideRate() when the bottom group has zero or
negative production (first time step on RC master with no local wells).
That function passes the group's NONE cmode to
getProductionGroupTargetForMode(), which throws.

Two fixes in GroupConstraintCalculator.cpp:

1. getGroupConstraintNoGuideRate(): return std::nullopt when the
   production cmode is FLD or NONE, since these groups have no own
   target.

2. TopToBottomCalculator::calculateGroupConstraint() fallback: when
   the bottom group has no own constraint (nullopt from fix 1), return
   the guide-rate-distributed target from above, capped by any limit
   the bottom group defines for the top-level control mode.
2026-03-27 12:30:18 +01:00
Markus Blatt 5145ab5d46 Merge pull request #6875 from daavid00/nncs
Correct handling of overlapping NNC and EDITNNC
2026-03-27 07:42:44 +01:00
Svenn Tveit 106d8d51c9 TPSA implementation with coupling to Flow.
- TPSA-Flow coupling done at the nonlinear solver step level:
- -- Lagged coupling -> TPSA lags behind one time step
- -- Fixed-stress -> Iterate until Flow and TPSA converge
- Generic TPSA solver using Newton with associated linearizer.
- Linear elasticity equations implemented
- Specialized version of ISTL linear solver for TPSA
- Output to restart files and VTK
2026-03-26 15:23:47 +01:00
Tobias Meyer Andersen e360ca7062 remove another decorated 2026-03-26 11:33:23 +01:00
Tobias Meyer Andersen 89cf53cc72 correct ctor initialization order 2026-03-26 11:32:07 +01:00
Markus Blatt b2d661a405 Merge pull request #6964 from SoilRos/feature/matrix-block-with-field-traits
Add FieldTraits specialization for MatrixBlock
2026-03-26 11:24:00 +01:00
Santiago Ospina De Los Ríos 9aa0efa2f8 Add FieldTraits specialization for MatrixBlock
This allows MatrixBlock to be used in generic contexts where Dune requires FieldTraits. This will be required for future DUNE releases. See https://gitlab.dune-project.org/core/dune-istl/-/commit/aaaec6db345df32363f4528cf776e30de206fc90.
2026-03-26 10:33:11 +01:00
Tobias Meyer Andersen 27e3a504ce remove assignment decorators 2026-03-26 09:17:06 +01:00
Markus Blatt 1bb13fa350 Merge pull request #6935 from hakonhagland/fix_readdeck_exit
Throw from readDeck() instead of std::exit()
2026-03-24 17:04:53 +01:00
Bård Skaflestad 92796f2f0e Merge pull request #6928 from hakonhagland/resv_phase_check
Add GCONINJE top-up phase validation
2026-03-24 16:19:41 +01:00
Håkon Hægland a9a694b9fa Add GCONINJE top-up phase validation
Reject invalid GCONINJE configurations where multiple RESV/VREP
injection phases conflict, either within the same group or along
an ancestor-descendant path in the group hierarchy. Disconnected
branches with different top-up phases remain allowed.

The validation runs once per time step from setCmodeGroup() when
processing the FIELD group, before injection controls and guide
rates are propagated.

Also add a defensive NETV guide rate check in GuideRateHandler
that rejects NETV usage when the group's top-up phase does not
match the guide rate phase.

Companion PR: opm-common change to exclude REIN from
Group::topup_phase(), so it only reflects RESV and VREP modes.
2026-03-24 07:20:39 +01:00
Bård Skaflestad 2f7d57b7b3 Merge pull request #6950 from GitPaean/value_type_fluid_state
adapting to the change of Scalar to ValueType in FluidState
2026-03-23 14:14:01 +01:00
Tor Harald Sandve 0602f376f2 Merge pull request #6958 from steink/fix-max-well-status-switch-for-wells
Update operability status when max_well_status_switch is exceeded
2026-03-23 12:39:13 +01:00
Tobias Meyer Andersen 3cfb52ece2 rename argument 2026-03-23 11:57:38 +01:00
Tobias Meyer Andersen a7ec8079c2 add OPM_THROW 2026-03-23 11:51:07 +01:00
Tobias Meyer Andersen b6cb903d82 formatting 2026-03-23 11:46:54 +01:00
Tobias Meyer Andersen 8ec68dd7f5 prepare blackoilintensivequantites for gpu assembly
add decorators and new ctor for changing typetag
2026-03-23 11:40:21 +01:00
Stein Krogstad 24c5bbe45c Delete forgotten line 2026-03-23 11:18:10 +01:00
Stein Krogstad 203f2fdbd2 update operability status when max_well_status_switch is exceeded 2026-03-22 17:08:51 +01:00