github OPM/opm-simulators release/2026.04/final

4 hours ago

Release Highlights

  • Added the option to solve the energy equations sequentially after the black-oil equations.
  • Support has been added for pressure and temperature dependent water viscosity for runs with brine (BRINE) and energy (THERMAL).
  • Flow now supports runs with brine (BRINE) and energy (THERMAL).
  • Added support for double precision WORK arrays for compressed property arrays (for example SOGCR).
  • If necessary, the gas PVT tables PVTG and PVDG are modified internally to ensure that negative inverse formation volume factors will never be extrapolated.
  • Implemented endpoint scaling for gas-water systems.
  • Killough's hysteresis wetting phase modification (EHYSTR keyword item 13) is now supported.
  • Added support for RSCONST keyword to define a constant solution gas-oil ratio for all dead oil PVT tables.
  • Added support for EQUIL keyword item 9 (EQLOPT3) greater than zero.
  • Added support for well energy injection/production rate and total summary vectors: WTPRHEA, WTPTHEA, WTIRHEA and WTITHEA.
  • Support has been added for the gas lift injection total summary vectors: FGLIT, GGLIT, and WGLIT.
  • Extended summary (ESMRY) files are now output by default. The command line option --enable-esmry is now set to true by default.
  • Added support for region oil recovery efficiency summary vector ROE.
  • Production and gas lift supply rates from satellite groups (GSATPROD) are now accumulated in summary output.
  • Added support for inter-block flows of oil, water, and gas in the negative i, j, and k directions (BFLO[GOW][IJK]-).
  • Added support for summary output of inter-block oil, water, and gas velocities in the positive/negative i, j, and k directions (BVEL[GOW][IJK][-]).
  • All current well lists are now reported to the Print (PRT) file when the WELSPECS mnemonic is specified on the RPTSCHED keyword.
  • Support for using the WDFAC and BRANPROP keywords in an ACTIONX block has been successfully tested.
  • The grid independent well keywords WELTRAJ and COMPTRAJ now partially support multi-segment wells.
  • Added support for using well completion quantities in ACTIONX Boolean conditions.
  • Added partial support for the TUNINGDP keyword.
  • Added support for VFPPROD tables with only one data record (single-line lift curves).
  • The default value for the NUPCOL keyword has been reduced to from 12 to 3.
  • Drift compensation is now applied to mass losses in the energy equations when using the temperature model (TEMP).

What's Changed

  • bump version to 2026.04-pre by @akva2 in #6516
  • use reportsteps instead of timesteps (deprecation warning) by @akva2 in #6531
  • using WellInterfaceGeneric::pvtRegionIdx() for pvt_region for MultisegmentWellSegments by @GitPaean in #6527
  • removing all the white spaces in norne_pvt.data by @GitPaean in #6532
  • adding text to .pre-commit-config.yaml by @GitPaean in #6534
  • reducing some code duplication in MultisegmentWellSegments by @GitPaean in #6530
  • Janitoring: hybrid newton by @akva2 in #6540
  • UDQ support for WTRACER by @daavid00 in #6539
  • Account for NTG in rock heat term by @totto82 in #6542
  • supporting well energy summary output by @GitPaean in #6547
  • Remove a branching that discoordinates split wells by @michal-toth in #6544
  • suppress unused parameter warnings without openmp by @akva2 in #6553
  • Chase API for Well Specification Report by @bska in #6533
  • Add new gpuSparseMatrix test by @multitalentloes in #6546
  • make sure phase is active before getting phase_pos by @GitPaean in #6564
  • fixed: parameter name in doxy by @akva2 in #6566
  • Fix bug in docker python sync_versions.sh script by @hakonhagland in #6570
  • Add parallel PYACTIONX tests for [GW]CONPROD and GRUPTREE by @blattms in #6548
  • add python 3.14 to packaging by @akva2 in #6569
  • transMult instead of mobility for saltprec by @daavid00 in #6565
  • Add energy module type and use it. by @totto82 in #6509
  • Add missing communication after sumWellPhaseRates by @michal-toth in #6558
  • Enable compatibility with newer CMake and Boost by @SoilRos in #6571
  • Refactor WellGroupHelpers by @hakonhagland in #6535
  • add missing includes by @akva2 in #6573
  • Change behaviour for non-intersection cases when computing thp from bhp by @steink in #6572
  • Use python3 from the environment in plot_well_comparison.py by @vkip in #6578
  • changed: use unique_ptr for wells by @akva2 in #6579
  • Bug fix with well tracer rates output by @svenn-t in #6577
  • add multiphase tracer regression test by @akva2 in #6582
  • update all well during network iterations by @totto82 in #6557
  • Only add well sources for solvable wells by @vkip in #6583
  • using the converting from scalar to DynamicEvaluation by @GitPaean in #6520
  • Some more fixes to stopped wells due to inoperabilty / convergence issues by @totto82 in #6554
  • silencing two warnings from IDE in WellAssemble by @GitPaean in #6584
  • fixed: properly probe for hipify-perl command by @akva2 in #6589
  • Primary variables on GPU by @kjetilly in #6391
  • Change .clang-format ColumnLimit by @hakonhagland in #6594
  • Make getGuideRate's result identical on all ranks by @michal-toth in #6591
  • Rename hybrid Newton flag by @lechevaa in #6588
  • Make output of ESMRY files default by @tskille in #6590
  • recovering to use std::optional for SingleWellState::group_target by @GitPaean in #6598
  • Keep derivatives for trans_mult by @daavid00 in #6586
  • added: add compareSeparateEclFiles to failure report by @akva2 in #6605
  • add link in deps to simplify scripting by @akva2 in #6607
  • Janitoring: quell various nvcc diagnostics by @akva2 in #6610
  • Update cell rates for NLDD after domain assembly by @jakobtorben in #6617
  • Janitoring: address newly introduced debug-iter issue by @akva2 in #6613
  • Perfs of two wells are only the same if cell indices match. by @blattms in #6609
  • GPU Support SparseTable for assembly by @multitalentloes in #6508
  • m_efficiency_scaling_factors default to be 1. instead of 0. by @GitPaean in #6608
  • Not creating identity matrix as reverse of singular well matrix for StandardWell. by @GitPaean in #6614
  • add getDiagPtrs to gpuSparseMatrix by @multitalentloes in #6543
  • Reservoir coupling: Send more data from slaves to master by @hakonhagland in #6567
  • Updated help message for time-step-control by @erikhide in #6622
  • using active phase position when updating componentMixture by @GitPaean in #6623
  • Include Missing Header by @bska in #6624
  • Avoid copying pressure_first_connection from the previous well state by @michal-toth in #6599
  • Only call WellTestState::close_well() for local wells. by @atgeirr in #6629
  • add virtual dtor to class with virtual member functions by @akva2 in #6627
  • Fix nldd storage cache by @jakobtorben in #6618
  • Add option for solving the energy equation sequentially by @totto82 in #5854
  • Call extractRestartValueLevelGrids by @aritorto in #6604
  • Fix built in clang by @daavid00 in #6634
  • Avoid hidden dual state pattern in solveWellWithZeroRate() by @hakonhagland in #6631
  • Clean up compiler warnings by @SoilRos in #6636
  • removing undefined function pressureDropAutoICD() from MultisegmentWellEval. by @GitPaean in #6639
  • Fix POLYMER Output Units by @bska in #6640
  • Rename WellGroupHelper to GroupStateHelper by @hakonhagland in #6575
  • Fixing biofilm volume fraction vtk output by @daavid00 in #6646
  • Bringing back XMFCO2/YMFWAT output by @daavid00 in #6637
  • Fix formattings issues introduced in PR #6575 by @hakonhagland in #6644
  • Fix BIOEFFECTS Output Units by @daavid00 in #6641
  • Remove unused method by @hakonhagland in #6645
  • Nitpicks for command line parameters descriptions by @daavid00 in #6651
  • Small code adjustment when reading the code by @GitPaean in #6630
  • Fixes for gliftopt item 3 maximum gas+alq by @totto82 in #6620
  • silencing two warnings in test_glift1.cpp by @GitPaean in #6655
  • fixed: do not run python mpi tests without mpi by @akva2 in #6656
  • Increase block sizes to 7 by @svenn-t in #6660
  • BlackoilWellModel: model network with has-a semantics by @akva2 in #6568
  • add missing include by @akva2 in #6662
  • Mixed-precision solver by @nrseman in #6521
  • Feature/compile mixedprec only if avx2 is supported by @blattms in #6638
  • Fix TEMP option in parallel by @totto82 in #6663
  • adding a context to StandardWellPrimaryVariables::checkFinite by @GitPaean in #6625
  • anonymize unused parameters by @akva2 in #6667
  • Force legacy GpuSparseMatrix for GpuSeqILU0 by @jakobtorben in #6666
  • Using IPR in gaslift optimization by @totto82 in #6653
  • Use old bhp from thp computation for unconverged bhp solves by @totto82 in #6669
  • add run trigger handling in jenkins build script by @akva2 in #6668
  • not copying well state from if the well was SHUT before applying action by @GitPaean in #6633
  • (Generic)TemperatureModel: various janitoring by @akva2 in #6673
  • Fix GpuSparseMatrixWrapper template parameter for non-CUDA builds by @jakobtorben in #6674
  • Adapt to API change for Branch::alq_value(), fixing unit bug. (Redone) by @atgeirr in #6675
  • Ensure filtrate mass balance in case of cross-flow by @vkip in #6672
  • failure_report: add parallel execution by @akva2 in #6665
  • Add ReservoirCoupling::Proxy to reduce #ifdef clutter in well model by @hakonhagland in #6658
  • Janitoring: quell clang warnings by @akva2 in #6678
  • Bugfix: groupStateHelper uses potentially wrong WellState by @hakonhagland in #6679
  • Move ADD_MULTIPLE_TESTS to Main Test Setup File by @bska in #6685
  • correcting the GRUPTREE in GLIFT1.DATA by @GitPaean in #6690
  • separate cloning from building in jenkins pipeline by @akva2 in #6692
  • Refactor Reference Solution Update Script by @bska in #6688
  • Guard Against Non-Existent Files in Comparison by @bska in #6695
  • Support Updating INIT File Only Test Cases by @bska in #6696
  • Add INIT File Tests for WORK Arrays in OPERATE/OPERATER by @bska in #6683
  • add static analysis by @akva2 in #6698
  • Move linear system export and make it safer. by @atgeirr in #6677
  • jenkins: parallelize reference data update by @akva2 in #6699
  • Refactor TargetCalculator by @hakonhagland in #6626
  • Bugfix: Use correct efficiency factor when adding back local reduction contribution in group constraint checking by @hakonhagland in #6681
  • Skip refined cells when computing trans and nncs for output by @aritorto in #6706
  • Upgrade flag in CARFIN test run by @aritorto in #6702
  • Reservoir coupling: Send master group targets to slaves by @hakonhagland in #6347
  • allow overriding base of opm repositories in jenkins build scripts by @akva2 in #6707
  • Janitoring: fix recently introduce clang warnings by @akva2 in #6708
  • add support for absolute revisions by @akva2 in #6713
  • Add python_tests target and test fixtures for Python tests by @hakonhagland in #6712
  • Add option for drift compensation for TEMP by @totto82 in #6684
  • Add Parallel Tests Only if Sufficient System CPUs by @bska in #6714
  • Scale energy norm with time and pore-volume by @totto82 in #6682
  • Chase Summary::Eval() API Change by @bska in #6715
  • Fix warnings for builds with -DWITH_NDEBUG=1 by @daavid00 in #6716
  • Also solve std for every inner iterations as default by @totto82 in #6098
  • Extend group constraint tests with multi-group hierarchy by @hakonhagland in #6703
  • use ilu in serialize restart test by @akva2 in #6717
  • HybridNewton: no longer requires tensorflow by @akva2 in #6718
  • Fix dangling reference in InjectionTargetCalculator by @hakonhagland in #6719
  • Add run simulator for CARFIN, refine entire grid by @aritorto in #6304
  • Also detect Oscillations if only for single component by @totto82 in #6697
  • add cppcheck ignore list by @akva2 in #6726
  • Check phase activity before querying active phase index when calculating the group injecting VREP target. by @GitPaean in #6727
  • Support Cell Subdivision in Tilted Geometry Equilibration by @ElyesAhmed in #6519
  • pass number of procs to plotting script by @akva2 in #6729
  • Janitoring: Some minors + quell c++-20 warning by @akva2 in #6730
  • Bugfix: enable diagonal solve in amgcpr:pre by @michal-toth in #6728
  • Ensure correct summary output for iteration counts. by @atgeirr in #6720
  • add missing include by @akva2 in #6731
  • Refactor DeferredLogger as a mutable pointer into GroupStateHelper by @hakonhagland in #6705
  • accumulate satellite production/gaslift in gaslift code by @totto82 in #6725
  • Remove deferred_logger from updateAndCommunicate() by @hakonhagland in #6734
  • remove unused lambda captures by @akva2 in #6736
  • Reservoir Coupling: Fix sync of group data to only occur on first substep by @hakonhagland in #6704
  • Refactor target calculation in GroupStateHelper into helper methods by @hakonhagland in #6710
  • disable cartgrid_gr test by @akva2 in #6739
  • put message file in workspace by @akva2 in #6738
  • python tests: add output-dir parameters by @akva2 in #6744
  • remove C99 package by @akva2 in #6745
  • fix installation paths for generated headers by @akva2 in #6743
  • Improve error message for missing simulator binary in regression tests by @hakonhagland in #6746
  • Refactor auto choke group controlled wells exclusion logic in GroupStateHelper by @hakonhagland in #6709
  • Fix GCONSUMP efficiency factor application by @hakonhagland in #6737
  • Removing not used deferred_logger by @daavid00 in #6747
  • bump minimum cmake version to 3.23 by @akva2 in #6748
  • Reservoir coupling: Fix group controlled wells (GCW) calculation for reservoir coupling master groups by @hakonhagland in #6711
  • Convergence check on max. solution update (TUNINGDP) by @svenn-t in #6723
  • fixed: signed/unsigned comparison warnings by @akva2 in #6753
  • fix: update_data and failure_report triggers by @akva2 in #6755
  • Bugfix (micp+disperc) to uninitialized velocity by @daavid00 in #6752
  • Allow SLAVES without GRUPMAST for history mode reservoir coupling by @hakonhagland in #6754
  • consistently use keyword based target_link_libraries by @akva2 in #6757
  • Removing duplicated pw_info from MultisegmentWellEval and MultisegmentWellEquations by @GitPaean in #6760
  • Allow reservoir coupling slaves without GRUPSLAV for history matching mode by @hakonhagland in #6759
  • fixed: updating of restart reference files by @akva2 in #6767
  • group control is NONE if the group does not contribute to the group target of any well by @GitPaean in #6596
  • Reservoir coupling: Some bugfixes to master group target calculator by @hakonhagland in #6721
  • Reservoir coupling: Fix well model slave group data exchange for history mode by @hakonhagland in #6761
  • Fix deadlock: move the communication out of the loop over well completions by @michal-toth in #6769
  • obtain paths to utilities from exported targets by @akva2 in #6770
  • Add missing logger guard for NLDD and handle local linear solve failure by @jakobtorben in #6772
  • add warnings to some targets by @akva2 in #6774
  • remove setting of USE_OPENMP_DEFAULT by @akva2 in #6777
  • adapt to changed use_warnings function by @akva2 in #6778
  • add fast build flags to targets by @akva2 in #6780
  • add additional optimization flags to targets by @akva2 in #6782
  • add use_only_needed to targets by @akva2 in #6783
  • add use_threads to targets by @akva2 in #6785
  • Fix RESV issue for injectors by @vkip in #6784
  • add use_runpath to targets by @akva2 in #6788
  • Add GCONINJE_RESV_GAS-01 to regression by @vkip in #6790
  • use opm_add_target_options by @akva2 in #6791
  • changed: do not instance Dune::UMFPack for float by @akva2 in #6795
  • clean up config variables by @akva2 in #6798
  • rename hooks to project specific name by @akva2 in #6800
  • Add VFPPROD test case to regression tests using add_test_compareSep… by @ElyesAhmed in #6794
  • fixed: move getNumThreads into TU by @akva2 in #6801
  • Reservoir coupling: Fix MPI synchronization in receiveGroupTargetsFromMaster() by @hakonhagland in #6762
  • Fix some logging fallout messages to non-zero MPI ranks by @hakonhagland in #6765
  • Reservoir coupling: Fix Logger to check for rank for OpmLog messages by @hakonhagland in #6766
  • Reservoir coupling: Add isFirstSubstepOfSyncTimestep() check for sendMasterGroupTargetsToSlaves() by @hakonhagland in #6771
  • use target unit_test_framework by @akva2 in #6802
  • throw if a well under GRUP control while does not have calculated group target by @GitPaean in #6764
  • find pybind11 in appropriate scope by @akva2 in #6807
  • Fix MPI intercommunicator disconnect at reservoir coupling simulation end by @hakonhagland in #6775
  • fix ordering issue with downloaded pybind by @akva2 in #6808
  • drop old cmake compatibility by @akva2 in #6809
  • remove HDF5 preference setting by @akva2 in #6810
  • Build system: Start moving things into the appropriate hooks by @akva2 in #6811
  • remove the usage of Schedule::filterConnections() by @GitPaean in #6806
  • CMakeLists_files.cmake is now processed in OpmLibMain by @akva2 in #6814
  • [LGR] Disable Static Well filtering for Inactive cells by @arturcastiel in #6787
  • Improve reservoir coupling log readability by @hakonhagland in #6781
  • damaris: some cleanup by @akva2 in #6818
  • workaround: fix wheel building by @akva2 in #6819
  • Fix HDF5 compile error with serial HDF5 + MPI by @hakonhagland in #6823
  • add some explicit links to opmcommon by @akva2 in #6822
  • Move hip handling into appropriate hooks by @akva2 in #6820
  • BFLO[G|O|W][I|J|K][|-] summary keywords by @daavid00 in #6793
  • fix breakage for gpu bridge with no cuda by @akva2 in #6825
  • Move cuda setup to hooks by @akva2 in #6824
  • Reservoir coupling: Mark GPMAINT unsupported for master/slave groups by @hakonhagland in #6732
  • Reservoir coupling: Send slave group network rates to master groups by @hakonhagland in #6724
  • Fix serial build for reservoir coupling by @hakonhagland in #6827
  • Fix bug in NLDD relaxed tolerance logic by @jakobtorben in #6779
  • move opencl/amgcl/vexcl setup to hooks by @akva2 in #6826
  • policies are now set by OpmInit by @akva2 in #6829
  • Move more stuff to hooks by @akva2 in #6828
  • Move addition of simulators to target hook by @akva2 in #6831
  • Store rock fraction in problem by @totto82 in #6796
  • Only use bhp well temperature for RESV calculations for THERMAL not TEMP by @totto82 in #6813
  • Janitoring: quell some compiler warnings by @akva2 in #6834
  • dont add outer network iter for ctrl change by @totto82 in #6805
  • Fix missing communication in auto choke underperformance check by @hakonhagland in #6833
  • Add reset to gpu matrices by @multitalentloes in #6670
  • not setting FLD to be NONE for group by @GitPaean in #6836
  • make more files gpu-compatible by @multitalentloes in #6676
  • mark format string as runtime by @akva2 in #6832
  • Speedup temp by @totto82 in #6792
  • BVEL[G|O|W][I|J|K][|-] summary keywords by @daavid00 in #6830
  • Add tests and fix autochoke group target rate by @hakonhagland in #6835
  • Fixing compilation warnings by @daavid00 in #6845
  • Add missing OPM_GPU_SAFE_CALL for cudaMemset by @jakobtorben in #6847
  • replace std::transform with std::ranges::transform where appropriate by @akva2 in #6848
  • Move getAutoChokeGroupProductionTargetRate() to GroupStateHelper by @hakonhagland in #6837
  • replace std::sort with std::ranges::sort where appropriate by @akva2 in #6850
  • replace std::for_each with std::ranges::for_each where appropriate by @akva2 in #6851
  • replace std::copy with std::ranges::copy where appropriate by @akva2 in #6854
  • replace std::copy_if with std::ranges::copy_if where appropriate by @akva2 in #6855
  • replace std::fill with std::ranges::fill where appropriate by @akva2 in #6856
  • replace std::count with std::ranges::count where appropriate by @akva2 in #6857
  • replace std::count_if with std::ranges::count_if where appropriate by @akva2 in #6858
  • replace std::any_of with std::ranges::any_of where appropriate by @akva2 in #6859
  • tracy is now handled by generic build system by @akva2 in #6860
  • replace std::find with std::ranges::find where appropriate by @akva2 in #6861
  • replace std::find_if with std::ranges::find_if where appropriate by @akva2 in #6862
  • replace std::min_element with std::ranges::min_element where appropriate by @akva2 in #6863
  • replace std::max_element with std::ranges::max_element where appropriate by @akva2 in #6866
  • replace std::all_of with std::ranges::all_of where appropriate by @akva2 in #6867
  • replace std::binary_search with std::ranges::binary_search where appropriate by @akva2 in #6868
  • replace std::is_sorted with std::ranges::is_sorted where appropriate by @akva2 in #6869
  • Fix CMake linking for rocalution, rocblas and rocsparse. by @blattms in #6842
  • replace std::reverse with std::ranges::reverse where appropriate by @akva2 in #6870
  • replace std::equal with std::ranges::equal where appropriate by @akva2 in #6871
  • replace std::set_symmetric_difference with std::ranges::set_symmetric_difference by @akva2 in #6872
  • replace erase-remove idiom with std::erase[_if] by @akva2 in #6873
  • make blackoilmodules gpu compatible by @multitalentloes in #6849
  • fixed: boost propertytree 1.66 cannot be built as c++-20 by @akva2 in #6877
  • Prepare blackoillocalresidualtpfa for gpu by @multitalentloes in #6864
  • Output Convergence Flags as Strings by @bska in #6882
  • fix communication with no effect by @michal-toth in #6884
  • correcting typo Surfance -> Surface by @GitPaean in #6885
  • flow_blackoil_alugrid: workaround inifinite loop with dune-alugrid 2.11 by @akva2 in #6888
  • Introduce NewtonIterationContext and refactor logic based on iteration index by @jakobtorben in #6880
  • changed: do not run cpr on 1x1 block system by @akva2 in #6887
  • Remove facade methods from TargetCalculator by @hakonhagland in #6838
  • opm-common(-prereqs.cmake) now handles its own python dependency by @akva2 in #6890
  • read embedded status from target by @akva2 in #6891
  • bump to dune 2.11 in python wheels by @akva2 in #6883
  • link these targets to opmcommon by @akva2 in #6892
  • drop checks for boost >= 1.48 by @akva2 in #6895
  • Reservoir coupling: Send per-rate-type production constraints to slaves by @hakonhagland in #6843
  • Enable PYINPUT Processing Through Common Python Interpreter by @bska in #6886
  • Reservoir coupling: Apply master group targets in slave's GroupStateHelper by @hakonhagland in #6846
  • Janitoring: quell 2 compiler warnings and some adjacent cleanups by @akva2 in #6901
  • detail::multMatrix: replace out param with return value by @akva2 in #6902
  • Deduplicate BlackoilWellModelConstraints::checkGroupProductionConstraints() by @hakonhagland in #6852
  • Reservoir coupling: Enforce per-rate-type master production limits on slave by @hakonhagland in #6853
  • quell compiler warning by @akva2 in #6906
  • exit early if there are no wells by @akva2 in #6907
  • Reorganize GroupStateHelper private methods by caller group by @hakonhagland in #6900
  • [LGR] TRAN* for refined level grids by @aritorto in #6799
  • remove item 13 from unsupported list by @totto82 in #6912
  • move language setup to language hook by @akva2 in #6913
  • prereqs is now included by OpmLibMain by @akva2 in #6914
  • adjust to removed HAVE_ECL_(IN|OUT)PUT options by @akva2 in #6896
  • Support individual satnums in wells for solvent model by @totto82 in #6905
  • adjust to changed DownloadFmt by @akva2 in #6917
  • run clang-format on blackoillocalresidualtpfa.hh by @multitalentloes in #6910
  • [LGR] NNCs for CpGrid with LGRs by @aritorto in #6844
  • Janitoring: quell some cuda warnings by @akva2 in #6903
  • rely on policy for forcing config mode for boost by @akva2 in #6919
  • wheels: build with make by @akva2 in #6923
  • Populate inner/regular NNCs for refined grids (CpGrid only) by @aritorto in #6921
  • Config variables: Some cleanup by @akva2 in #6924
  • Bugfix: Subtract other-phase RESV injection in group target by @hakonhagland in #6915
  • Add GCONINJE-01 and GCONINJE-02 for regression testing by @totto82 in #6926
  • Fix MPI deadlock in sendSlaveGroupDataToMaster() by @hakonhagland in #6916
  • add config variables required for dune 2.9 by @akva2 in #6930
  • Reservoir coupling: Fix REIN/VREP injection cmode sent from master group to slave group by @hakonhagland in #6918
  • Fix refactoring and glift bugs by @atgeirr in #6932
  • Fix BGPC and BWPC output for 2p cases by @totto82 in #6927
  • Fix NONE production control reset for RC master groups by @hakonhagland in #6922
  • Fix failing compilation with HIP on Debian by @blattms in #6937
  • Prefer Std::Numbers::PI by @bska in #6938
  • Group private methods in GroupStateHelper header by @hakonhagland in #6931
  • incorporate brine+energy simulator in flow by @plgbrts in #6368
  • Reservoir coupling: Send slave group rates to master after initial well solve by @hakonhagland in #6934
  • add config variable for dune-alugrid and dune-fem by @akva2 in #6940
  • Fix some installation issues by @akva2 in #6943
  • use UseCUDA module by @akva2 in #6942
  • make FLOW_INSTANTIATE_FLOAT a private compile definition by @akva2 in #6945
  • using the solvent related from BlackOilFluidState by @GitPaean in #6939
  • Output and assigning well rates for opm-geochemistry module by @svenn-t in #6893
  • Check there are no refined aquifer cells in output by @aritorto in #6941
  • Removed unused container in MSWellEquations::extract by @blattms in #6763
  • Avoid recreating linear solver for every TEMP solve. by @atgeirr in #6898
  • GPUBridge: make implementation and dependencies private by @akva2 in #6946
  • Fix two issues with gpu builds by @akva2 in #6944
  • remove unsupport diagnostic by @akva2 in #6908
  • hipify: suppress warnings by @akva2 in #6909
  • use targets for prereqs by @akva2 in #6947
  • Change default network parameters by @totto82 in #6841
  • add include directories for config.h by @akva2 in #6953
  • use opm_add_library by @akva2 in #6954
  • add forgotten link for Boost::date_time by @akva2 in #6955
  • Update operability status when max_well_status_switch is exceeded by @steink in #6958
  • adapting to the change of Scalar to ValueType in FluidState by @GitPaean in #6950
  • Add GCONINJE top-up phase validation by @hakonhagland in #6928
  • Throw from readDeck() instead of std::exit() by @hakonhagland in #6935
  • Add FieldTraits specialization for MatrixBlock by @SoilRos in #6964
  • Correct handling of overlapping NNC and EDITNNC by @daavid00 in #6875
  • Prepare intensivequantities for gpu assembly by @multitalentloes in #6960
  • Reservoir coupling: Fix crash for NONE/FLD master group production cmode by @hakonhagland in #6966
  • Fix CMake for vexcl with CMAKE_DISABLE_FIND_PACKAGE_OpenCL=OFF by @blattms in #6949
  • Fix a warning with ndebug by @daavid00 in #6970
  • Add RSCONST Keyword Support for Simplified Two-Phase Simulation by @bska in #6971
  • Fixing a couple of warnings by @daavid00 in #6973
  • Two-point stress approximation (TPSA) geomechanics by @svenn-t in #6650
  • fixed: missing .* in absolute revision jenkins re by @akva2 in #6974
  • Fixing some warnings by @daavid00 in #6975
  • fixed: also have to copy include directories by @akva2 in #6976
  • fix build with cuda 12.0 by @akva2 in #6929
  • Fix preconditioner update wrapper and usage. by @atgeirr in #6977
  • Reservoir coupling: Add end-of-sync-step slave-to-master data exchange by @hakonhagland in #6978
  • Backport PR6968: Adding tests for overlapping NNCs (inputed and internally generated) by @michal-toth in #6988
  • Backport PR6984: Tag Potentially Unused Parameter as Maybe_Unused by @michal-toth in #6989
  • Backport PR6985: Safeguard against running TPSA simulations without FlowProblemTPSA by @michal-toth in #6990
  • Backport PR6894: [bugfix] Mark output writing due to EXIT in ACTIONX as last writing. by @michal-toth in #6991
  • Backport PR6998: Fix wrong args passed to maybeUpdateTuning_ by @michal-toth in #7004
  • Backport PR6993: fixed issures with parallel hypre on mac ++ by @michal-toth in #7005
  • Backport PR7003: Adaptive time-stepping: rename dt callback param and add Doxygen by @michal-toth in #7014
  • Backport 7002: [bugfix] Make sure avx2 defines are set for compilation if supported. by @michal-toth in #7017
  • Backport PR7012: [cmake] Search for ParMETIS and use it if it is there. by @michal-toth in #7021

New Contributors

Full Changelog: release/2025.10/final...release/2026.04/final

Don't miss a new opm-simulators release

NewReleases is sending notifications on new releases.