·
898 commits
to master
since this release
Release Highlights
- Support for well on/off cycling (
WCYCLE
keyword) - Fix for initial in-place fluid volumes reported to the .PRT file, both in base runs and in restarted runs
- Initial support for reservoir coupling
- Initial support for calculating and reporting per-cell quantities in compositional runs
- Support mnemonic value
WELLS=2
in theRPTSCHED
keyword - Performance improvements in property evaluation
- Initial support for deferring property evaluation dedicated hardware accelerators/GPUs
- Support for the AmgX library of linear solvers
- Support version 11 of the libfmt library
- New and experimental consistency checks for saturation functions, especially for end-point scaling. Off by default.
What's Changed
- Enable New Saturation Function Consistency Checks by @bska in #5596
- FIX gas-water restart by @totto82 in #5668
- In partitioning, only account for wells that will be active at some point in time by @vkip in #5609
- in flowexp_blackoil, invalidate output data after solution is updated by @GitPaean in #5664
- Separate non-DUNE methods in LevelCartesianIndexMapper by @aritorto in #5649
- Fix issue with stopped injectors in thermal runs by @totto82 in #5605
- Bugfixes #5609 by @vkip in #5686
- enableThresholdPressure_ initialized to be false by @GitPaean in #5691
- Add Logging for Python Actions by @bska in #5699
- ecl style output for compositional simulation by @GitPaean in #5687
- fixed: set active indices in fieldprops by @akva2 in #5701
- Print gpus used on simulator startup by @multitalentloes in #5611
- fixed: division by zero if no gpu device was found by @akva2 in #5705
- Update flow manpage with help2man. by @blattms in #5708
- fixed: test-suites needs a name by @akva2 in #5710
- dont switch from GRUP if check_group_constrains_well_iterations=false by @totto82 in #5695
- Fix gaslift 1 by @totto82 in #5694
- fixed: building pypi release packages by @akva2 in #5719
- Add LINRAD (hybrid linear-radial) filter cake model by @vkip in #5717
- Added the missing plus in gplv3+ for the Python packages. by @blattms in #5722
- Removed GPL copyright header from licensed under Boost license. by @blattms in #5721
- Fix index bug in gpubridge separate wells by @razvnane in #5720
- Correctly mark data files with ODBL and DBCL license by @blattms in #5723
- Gpu support co2gaspvt by @multitalentloes in #5636
- fixed: RESTART_SCHED parameter never took effect by @akva2 in #5725
- fixed: fmt::join is in ranges.h using {{fmt11}} by @akva2 in #5726
- Avoid potential segfault due to invalid vector.end() after erase() by @vkip in #5740
- Activate New Regression Tests for ACTIONX Name Matching by @bska in #5750
- Do not try to compute initial solution for inactive multi-segment wells split across processors by @vkip in #5751
- Make sure all errors from parsing show up in the log files. by @blattms in #5707
- Feature/ms wells - part 1: Initial assembly of B C D and the residual by @lisajulia in #5680
- Cmake: Use upper case for COMPONENTS of FindSuiteSparse by @blattms in #5745
- dont shut well with GRUP control that struggles to converge by @totto82 in #5735
- Well testing using gas lift facilities by @svenn-t in #5757
- Subtract reduction rate for current group when checking higher group constraints by @steink in #5729
- Only update target of group-controlled wells during updateAndCommunicate by @steink in #5748
- Support GCONSUMP on multiple levels in the group hierarchy by @vkip in #5739
- Use formattedErrors() and simplify. by @atgeirr in #5765
- Update second stage preconditioner for CPR instead of recreate by @jakobtorben in #5758
- Restore threshold pressures from restart by @vkip in #5743
- Network sub iter by @totto82 in #5767
- added: ability to pass command line parameters from python by @akva2 in #5760
- Changes in how the simulator handles NUPCOL by @totto82 in #5724
- Write correct THRESHPR values also from restart by @vkip in #5770
- fixed: well model could deadlock by @akva2 in #5773
- bump minimum dune version to 2.9 by @akva2 in #5500
- changed: do not use boost.test in test_tasklets_failure by @akva2 in #5782
- Zoltan partitioner with all perforated cells of a well merged to one vertex by @michal-toth in #5749
- fixed: always calculate initial FIP by @akva2 in #5784
- Expose finesmoother pre/post smooth parameters in CPR setup by @jakobtorben in #5786
- Feature/ms wells - part 2: Solving, straightforward option by @lisajulia in #5746
- Feature/ms wells test by @lisajulia in #5747
- Alternative way of avoiding group control oscillations by @totto82 in #5753
- Ensure tracer flow for cross-flowing injector connections is included by @vkip in #5789
- Allow for the third group switch by @totto82 in #5791
- remove 16 days restriction for timestep in predicition mode by @totto82 in #2970
- Use regular OpenMP for loop, then iterate over chunks inside. by @atgeirr in #5777
- Add Hypre BoomerAMG Support by @jakobtorben in #5762
- Make OpenCL optional by @kjetilly in #5793
- Feature/ms wells fix restart file error by @lisajulia in #5802
- added: support WCYCLE by @akva2 in #5792
- Add test for distributed MSWells with two MSWells by @lisajulia in #5805
- Amgx integration by @jakobtorben in #5808
- Do not write initial FIP for CpGrid with LGRs for now by @aritorto in #5813
- Use initial pressure if ROCKOPTS item 2 is STORE by @svenn-t in #5785
- Allow query for efficiency scaling factor in off-process wells where required by @akva2 in #5816
- LevelCartesianIndexMapper constructor for AluGrid taking only a grid as an argument by @aritorto in #5715
- Allow group guide rates in case that a group is an auto choke group by @plgbrts in #5754
- Remove the mpi calls from the business logic by @lisajulia in #5819
- Move implementation of WellOperators out of BlackoilWellModel by @akva2 in #5823
- use reservoir rates not reduction rate in target calculator for VREP by @totto82 in #5783
- adjust output and parameters in gpu autotuner by @multitalentloes in #5779
- split AdaptiveTimeStepping to use an impl file by @akva2 in #5834
- changed: use standard header guard structure for _impl.hpp clangd helpers by @akva2 in #5835
- [Nit] Add EHYSTR(HYSTMOD) = 4 to list of supported values in message by @gdfldm in #5837
- Reduce size of enums to save 15 bytes per cell. by @atgeirr in #5841
- changed: move GasLift code in BlackoilWellModel to separate class by @akva2 in #5832
- add test for gpu brineco2pvt by @multitalentloes in #5839
- Fix clang complaints about incorrect constexpr usage. by @atgeirr in #5844
- Add test for inserting keyword WTMULT from a Pyaction by @lisajulia in #5830
- Add test for WLIST keyword in Pyaction and ACTIONX by @lisajulia in #5836
- Add gpudilu mixed precision by @multitalentloes in #5674
- Fix errors in documentation. by @lisajulia in #5853
- Use new linearizer for blackoil + thermal by @totto82 in #5843
- Fix RFT output for shut distributed wells by @vkip in #5824
- Add parallel versions of the PyAction tests by @lisajulia in #5860
- Add mixed precision double diagonal gpu ilu0 variants by @multitalentloes in #5688
- gas water for multisegment well by @GitPaean in #5818
- Switch default load balancer to Zoltan with vertex = all cells of a well by @blattms in #5800
- regression test for gas water and multisegment wells by @GitPaean in #5868
- BlackoilModel: move to has-a instead of is-a modelling of penalty cards by @akva2 in #5871
- Add tests for GEFAC for ACTIONX and PYACTON by @lisajulia in #5846
- Fixes related to zero guiderates from NETV by @totto82 in #5822
- Fix WCYCLE for multiple blocks by @akva2 in #5877
- Skip allocTrans when !(enableEclOutput || loadBalancerSet == 0 || partitionJacobiBlocks) by @daavid00 in #5817
- Transmissibility: add a cache for centroids and use this in update() by @akva2 in #5888
- Prevent spawning more threads if we limit OMP thread count by @michal-toth in #5856
- Feature/py action insert kw welpi wpimult alternative by @lisajulia in #5892
- added: option to only compare summary files in regression tests by @akva2 in #5897
- Compositional simulations with more cubic EOS formulations by @svenn-t in #5886
- Reservoir coupling: Implement time stepping by @hakonhagland in #5620
- Skip empty positional arguments by @vkip in #5679
- Bugfix: Upon restart, do not try to restore segment info for inactive wells by @vkip in #5861
- Implement gsatprod by @totto82 in #5894
- Add run SPE1CASE1_CARFIN.DATA by @aritorto in #5903
- fixed: use a vector in mpibuffer by @akva2 in #5907
- added more timing by @hnil in #5909
- Add multi-threading to transmissibility calculation by @akva2 in #5890
- Dont reset subtimestep from tuning/wcycle if time step is chopped due to convergence issues by @totto82 in #5902
- Allow empty leaf nodes that do not exist in GRUPTREE by @vkip in #5919
- Switch property evaluation to using ElementChunks. by @atgeirr in #5912
- Parameterize network sub-iterations and pressure update dampening by @vkip in #5918
- Improve well shutting logic by @totto82 in #5900
- hacking to register the parameter ForceDisableFluidInPlaceOutput by @GitPaean in #5926
- Expose CornerCells and OverlapLayers Load Balancing Settings by @bska in #5942
- Smart pointers for GPU memory by @kjetilly in #5946
- Added utility class to hold a GPU resource (stream, event, graph, etc). by @kjetilly in #5951
- Limit relative roughness in Haaland friction factor calculation by @vkip in #5945
- Added copy functions from GPU smart pointers by @kjetilly in #5956
- Separate keyword validation for fully supported keywords by @vkip in #5866
- Add Infrastructure for Geomechanical Analysis by @bska in #5801
- Fixes for NVCC older than 12.5.1 by @kjetilly in #5958
- Add VoigtArray and SymmTensor classes by @akva2 in #5959
- Add MechContainer by @akva2 in #5960
- Fixed: Data output should use move semantics by @akva2 in #5965
- Fix shared library linking issues by @akva2 in #5963
- clang-format now adds newline at the end of file. by @kjetilly in #5970
- Using the CriticalException in PreconditionerFactory and ISTLSolver by @kjetilly in #5969
- component indices are now int by @akva2 in #5950
- Improve gpuistl using cudaGraphs by @multitalentloes in #5852
- Add CompositionalContainer, a container for compositional data output by @akva2 in #5978
- Compositional simulator expanded to three phases by @svenn-t in #5851
- Consistent primary variables by @hnil in #5952
- Add TracerContainer, a container for tracer data output by @akva2 in #5987
- Simplify GenericOutputBlackoilModule::doAllocBuffers by @akva2 in #5989
- Support instantaneous flow rates in extended network (WEFAC and GEFAC item 3) by @vkip in #5410
- General third order time step controller by @erikhide in #5974
- Add RFTContainer, a container for RFT data output by @akva2 in #5996
- Add a container for FLOWS data output by @akva2 in #5954
- Fix to write residuals by @daavid00 in #6002
- FlowProblem(Blackoil|Comp): Return a reference to EclWriter by @akva2 in #6001
- Add RESIDUAL output to a regression test by @akva2 in #6003
- Allow empty non-group leaf nodes by @vkip in #6010
- Report Connection Level Fracturing Statistics to I/O Layer by @bska in #5811
- Fix Summary BFLOW* by @daavid00 in #6013
- Extract addLgrs, invoke it before loadBalance by @aritorto in #5981
- fix tracy support by @akva2 in #6024
- Add missing communication for parallel runs with MSWells by @lisajulia in #5937
- Added tests for error macros on GPU. by @kjetilly in #5962
- Adapt to ElementChunks now requiring partition argument. by @atgeirr in #6027
- add some profiling blocks to tracer by @akva2 in #6035
- Ensure MSUMLINS and MSUMNEWT is updated. by @atgeirr in #6039
- TracerModel: avoid setting up ILU if no solves will be performed by @akva2 in #6045
- Only check trivial_target for GRUP when checking in THP by @totto82 in #6018
- Make pre-solve network optional by @totto82 in #6048
- Tracer: add some structs for well rate output and avoid complex keys by @akva2 in #6044
- make nonlinear system possible to change by @hnil in #6046
- Fix parallel tracers by @akva2 in #6052
- Tracer: enumerate components by @akva2 in #6058
- Fix to write vtk (if enabled) for dry runs in cases without oilPhase by @daavid00 in #6057
- Improving terminal/dbg output by @daavid00 in #6059
- Fix gpmaint for region 0 by @totto82 in #5916
- modify stagnation and oscillation code for MSW by @totto82 in #6020
- Make Zoltan's Hyperedge Size Threshold Runtime Controllable by @bska in #6036
- Fix to write vtk (if enabled) for dry runs in cases with drsdt by @daavid00 in #6060
- Add a first test case for reservoir coupling by @hakonhagland in #5893
- Prevent some nan creations during output generation. by @blattms in #6077
- Prevent zero division by @michal-toth in #6053
- Set SOIL to 0 when readExplicitInitialCondition and 1-SGAS-SWAT=0 by @daavid00 in #6079
- WellModel: make a copy of events at start of time step by @akva2 in #6080
- fixed: clear out events before processing actions by @akva2 in #6078
- PERMFACT for each saturation region by @daavid00 in #6074
- Fixes for NVCC by @kjetilly in #6054
- Fix network iterations by @totto82 in #6062
- Tracer: Code deduplication by @akva2 in #6083
- Added set -e to hipify_file.sh by @kjetilly in #6088
- Add GSATPROD to regression test by @totto82 in #6089
- Add ACTIONX_GCONINJE to regression test suite. by @blattms in #6087
- PRT: Use {fmt} to format injection log by @akva2 in #6090
- PRT: Use {fmt} to format production log by @akva2 in #6093
- PRT: Use {fmt} to format cumulative log by @akva2 in #6094
- Bug fix in linear solver by @daavid00 in #6091
- PRT: Use {fmt} to format fip logs by @akva2 in #6096
- Apply simulator update once by @vkip in #6070
- Added WELL as supported to GCONPROD message for unsupported options by @blattms in #6101
- Add Regression Tests for GCONPROD(7)=WELL by @bska in #6106
- removing undefined and unused function computeWellGroupTarget() from BlackoilWellModel by @GitPaean in #6102
- Support for RTPSCHED WELLS=2 by @akva2 in #6099
- Fix a recent bug indexing in the CPRW cell weights. by @atgeirr in #6109
- Support WCONHIST/WCONINJ in ACTIONX by @blattms in #6092
- Add support for MSW PRT report by @akva2 in #6110
- Added regression tests for WCONINJH and WCONHIST in ACTIONX. by @blattms in #6112
- Make wellModelMatrixAdapter serial only by @jakobtorben in #6113
- Prepare OPM for DUNE 2.10 by @blattms in #5585
- Add support for merging well cells for NLDD partitioning by @jakobtorben in #6103
- Support for RSW in the SOLUTION section by @daavid00 in #6111
- Set thp from network in well testing by @totto82 in #6116
- Calculate original FIP by reading restart data for step 0 by @akva2 in #6119
- Compositional well by @GitPaean in #6042
- Add network+wtest test by @totto82 in #6130
- Use well rates from well_state_nupcol instead of previous_well_state in updateWellRates by @totto82 in #6128
- Actually respect NUPCOL (not NUPCOL+1) and allow network to converge with GLO by @vkip in #6100
- BUGIFIX: Only respect item 7 in GCONPROD for individual constrains, by @totto82 in #6135
- using std::optional for function initialInplace() by @GitPaean in #6137
- For convective mixing, store the saturated dissolution factor. by @atgeirr in #5774
- Fix and improve nldd timing and output reporting by @jakobtorben in #6124
- Fix compositional field output names by @akva2 in #6143
- Trigger WELSPECS Report From Simulator Side by @bska in #6107
- Updating MICP by @daavid00 in #6105
- Pre-solve network only once by @vkip in #6138
- Dont resolve well equation when computing initial guess for thp in updateWellStateWithTarget by @totto82 in #6081
- Silence various warnings. by @atgeirr in #6148
- Changes in SOURCE structure by @svenn-t in #6140
- Extending the SUMMARY keywords for CO2STORE and H2STORE by @daavid00 in #6127
- Backport of pr 6104 by @multitalentloes in #6159
- Backport of PR 6153 by @multitalentloes in #6161
- Backport of PR 6156 by @multitalentloes in #6162
- Backport of pr 6157 by @multitalentloes in #6163
- Backport of pr 6164 by @multitalentloes in #6165
- Backport of pr 6151 by @multitalentloes in #6166
- backport of pr 6194 by @multitalentloes in #6201
- Backport of pr 6184 by @multitalentloes in #6202
- Backport of pr 6182 by @multitalentloes in #6203
- backport of pr 6198 by @multitalentloes in #6204
- Backport of pr 6210 by @multitalentloes in #6239
New Contributors
- @michal-toth made their first contribution in #5749
Full Changelog: release/2024.10/final...release/2025.04/final