Commit Graph
542 Commits
Author SHA1 Message Date
Magne Sjaastad 33bf89d196 Dual porosity: Shift K-layer to fracture section for completion export
For dual porosity models, the first N K-layers represent MATRIX and
K-layers N+1 to 2N represent FRACTURE. Shift K to the fracture section
at production points so exported completion data (COMPDAT, WPIMULT,
COMPLUMP, COMPSEGS) references the correct K-layer. Subtract the offset
in LGR bounding box computation where original grid K is needed.
2026-02-20 09:27:20 +01:00
Magne Sjaastad d52f595c41 Refactor: Rename RiaStatisticsTools to RigStatisticsTools
Replaced all references to RiaStatisticsTools with RigStatisticsTools across the codebase, including header includes, static method calls, and test files. Updated CMake configuration to remove RiaStatisticsTools and add RigStatisticsTools. Renamed and updated related unit tests. No changes to logic or algorithms; this is a namespace and organizational refactor for consistency. Also added ApplicationLibCode include directories as PRIVATE to relevant targets.
2026-02-18 09:22:39 +01:00
Kristian Bendiksen 7db39cf092 #13467 Add model padding functionality for sector model export
Add Z-direction padding support for sector models based on OPM-Flow's
padmodel.cpp. This feature enables users to add padding layers above
and/or below the exported sector model grid.

Adapts padmodel.cpp from
https://github.com/hnil/opm-flowgeomechanics/blob/geomech_hypre_cgal/examples/padmodel.cpp
Commit: 5ee483e

Fixes #13467.
2026-02-16 18:42:15 +01:00
Kristian Bendiksen 92d6276266 Refactor: replace generic replaceKeyword with proper keyword construction. 2026-02-16 18:42:15 +01:00
Magne Sjaastad 9aa5a3d222 Move number formatting setting to CAF to enable use in UI editors
* Move RiaNumberFormat to cafPdmUiNumberFormat in caf framework
* Add unit test
2026-02-16 11:32:04 +01:00
Magne Sjaastad 93bd0b9c9d Refactor well log track settings into modular classes
* Refactor well log track settings into modular classes

Major refactoring of RimWellLogTrack to delegate property axis, formation, region annotation, and well path attribute settings to dedicated settings classes. Introduces RimWellLogPropertyAxisSettings, RimWellLogFormationSettings, RimWellLogRegionAnnotationSettings, and RimWellLogWellPathAttributeSettings, each encapsulating related fields, UI logic, and option handling. Old fields are retained for migration and backward compatibility. Updates enums and signatures for consistency.
2026-02-09 15:33:18 +01:00
Magne Sjaastad 913eab2065 Update cell count logic for radial grids and add bounds check
Refined total and active cell count calculations in Rim3dOverlayInfoConfig to exclude temporary grid cells for radial grids, ensuring overlay info is accurate. Added a bounds check in RigActiveCellInfo::gridActiveCellCounts to prevent out-of-range access.
2026-02-03 20:14:12 +01:00
JJ 94c3059fd8 Add support for SICD valves (#13496)
* Add SICD parameters
* Add wsegsicd valves to completion export
* Add python method to read template info from valve
* Update tests
2026-01-29 11:16:05 +01:00
JJ 3e06a61ed5 Popup window placement improvements (#13464)
* Improve parent settings for message boxes and progress info
2026-01-21 19:11:41 +01:00
Jon Jenssen ef3ced9b8a Limit well path length to 100 km to avoid excessive memory usage in certain corner cases. 2026-01-21 19:10:56 +01:00
Magne Sjaastad d53f71ae45 Add MSW segment support for WELSEGS-based visualization
Introduce RimMswSegment and RimMswSegmentCollection classes to manage and visualize Multi-Segment Well (MSW) segments from Eclipse WELSEGS data. Update WelsegsRow to include source well name for correct segment grouping. Integrate new classes into the build system and UI, enabling accurate 3D well path representation and improved segment management in ResInsight.
2026-01-20 14:13:22 +01:00
JJ b87579961b Add support for using alias names for result names (#13453)
* Add alias editing to UI
* Enable result aliases for both eclipse and roff results
* Update python script to work on Windows
* Add Python interface for result aliases
* Add python test
2026-01-20 14:12:27 +01:00
JJ 5bb431ef33 Improve handling of data keywords in deck files. (#13423)
* Handle data keywords, and use data flag to check if a result with a given name should be added or not to the output file.
2026-01-14 12:06:59 +01:00
Kristian Bendiksen e34d36ee99 Simulation Input: Support more well keywords. 2026-01-12 17:19:38 +01:00
Kristian Bendiksen 1c9c5a85ad #13333 Simulation Input: Add EDITNNC export functionality for sector models 2026-01-12 17:19:38 +01:00
Kristian Bendiksen e681b4603a Refactor: use RigBoundingBoxIjk in RigActiveCellInfo. 2026-01-12 09:58:55 +01:00
Kristian Bendiksen 11dfdc2c21 Refactor: convert RigBoundingBoxIjk to template class. 2026-01-12 09:58:55 +01:00
Kristian Bendiksen 15ef5e4701 Refactor: use bounding box more. 2026-01-12 09:58:55 +01:00
Kristian Bendiksen a4ade9e595 Remove duplicated code. 2026-01-12 09:58:55 +01:00
Kristian Bendiksen 2836885850 Refactor: avoid using VecIjk1 internally. 2026-01-12 09:58:55 +01:00
Kristian Bendiksen b7d940a0a2 RigBoundingBox: add contains method with tests. 2026-01-12 09:58:55 +01:00
Kristian Bendiksen 816aef2f2c Grid: Add utility method for cell index from VecIjk0. 2026-01-12 09:58:55 +01:00
jonjenssen 3821434022 Support removing user specified keywords from output sector model. 2026-01-12 08:13:43 +01:00
Kristian BendiksenandMagne Sjaastad d80ada607f #11807 Upgrade to Clipper2
Replaces the deprecated Clipper library with the actively maintained Clipper2 library.

Removes the local copy of the Clipper library and uses vcpkg to manage the dependency.

Fixes #11807

Co-authored-by: Magne Sjaastad <magne.sjaastad@ceetronsolutions.com>
2026-01-07 16:07:09 +01:00
Kristian Bendiksen 84dd61d4b5 #13347 Remove duplicate FAULTS keywords before adding to GRID section
Apply the same pattern used for ACTNUM keyword: remove all occurrences
of FAULTS before adding a single instance to the GRID section. This
handles deck files where FAULTS appears more than once.
2026-01-05 09:22:21 +01:00
JJ 225d034327 Fault distance from point (#13367)
* Add python interface for distance to closest fault
* Split up some older code into multiple files.
* Add python test
2025-12-20 09:50:51 +01:00
Magne Sjaastad 7768e8c9c9 Do not change time step when reading project file 2025-12-17 15:55:32 +01:00
JJ 64b5dcd1b9 Add validation to sector model export wizard (#13348)
* Add validation to sector model export wizard
2025-12-17 13:16:10 +01:00
JJ 09b8602213 Well Target Mapping improvements (#13324)
* Add single case well target results into correct time step
* Speed up unique value calculations by providing unique values directly to statistics cache
* Switch to selected time step in view
2025-12-13 09:35:27 +01:00
Kristian Bendiksen fe609def88 Simulation Input: Add refinement support for border boundary conditions
Add refined grid border detection for BCCON_BCPROP boundary conditions.
The refined functions operate on the exported refined grid dimensions,
ensuring border cells are correctly identified when using grid refinement.
2025-12-12 13:38:22 +01:00
Kristian Bendiksen cfcdd67255 Simulation Input: Refactor border conditions to use in-memory results. 2025-12-12 13:38:22 +01:00
Magne Sjaastad bd332c264d Guards against null case data
Adds checks for null case data in several functions to prevent potential crashes when the case data is not properly initialized.
These checks ensure that operations are only performed if valid case data is available.
2025-12-12 07:36:02 +01:00
Kristian Bendiksen 11352f525c Simulation Input: Handle multiple ACTNUM keywords 2025-12-11 12:07:21 +01:00
Kristian Bendiksen b1f9f8c4a5 Simulation Input: Fix bug in BOX transformation when using refinement. 2025-12-11 12:07:21 +01:00
Kristian Bendiksen 101b4f4926 Refactor: extract common code for converting sector box 2025-12-11 12:07:21 +01:00
Kristian Bendiksen ab708f5e0e Simulation Input: Handle AQUNUM keyword. 2025-12-11 12:07:21 +01:00
Kristian Bendiksen d3f43dfebb Simulation Input: Handle EQUALS keyword without ijk box. 2025-12-11 12:07:21 +01:00
Magne Sjaastad 6e1ba530c4 Adds RiaPhaseTools for phase system analysis
Adds a new utility class, RiaPhaseTools, which provides functionalities to analyze phase systems in reservoir simulations.

This class includes methods for checking the presence of individual phases (oil, gas, water), identifying different phase systems (three-phase, two-phase, single-phase), and retrieving a system description for display in the UI. It also includes utility functions to retrieve the preferred name for PCOG curves based on the detected phase system.
2025-12-09 12:41:35 +01:00
Magne Sjaastad 102a9feb32 #13269 Read VFP data without unit conversion
- read VFP data using readers with no unit conversion
- remove existing unit conversion
- make sure correct units are displayed in UI for both Metric and Field
2025-12-08 15:58:05 +01:00
Kristian Bendiksen 799c774cbe Simulation Input: refactor to remove duplicated code. 2025-12-08 15:27:51 +01:00
Kristian Bendiksen 206c2ebed8 Simulation Input: Handle WTEST keyword. 2025-12-08 15:27:51 +01:00
Kristian Bendiksen afbcc13606 Simulation Input: Handle ADD keyword. 2025-12-08 15:27:51 +01:00
Kristian Bendiksen cfd5f3a310 Simulation Input: Handle COPY keyword. 2025-12-08 15:27:51 +01:00
Kristian Bendiksen 5e67dbd48f Simulation Input: Fix EQUALS keyword.
Ended up handling the same keyword twice.
2025-12-08 15:27:51 +01:00
Kristian Bendiksen 90ce34ac6c Simulation Input: handle BOX records. 2025-12-08 15:27:51 +01:00
Kristian Bendiksen d053d4b0a6 Simulation Input: Handle MULTIPLY keyword. 2025-12-08 15:27:51 +01:00
Magne Sjaastad 6043265686 Adds support for SWAT result calculation
Implements a result calculator for SWAT (Water Saturation) to handle cases where only the water phase is present.

This also introduces checkAndCreatePlaceholderEntry for grid cell calculators. This can be used for creation of result metadata. When using this, both creation of metadata and calculation is in the same class.
2025-12-06 13:20:40 +01:00
Magne Sjaastad 0d61530a72 #13277 Select default cell result based on available phases 2025-12-06 13:20:40 +01:00
Kristian Bendiksen 1ed297e124 Simulation Input: remove excessive logging. 2025-12-05 13:06:29 +01:00
JJ 9f17dd81ff Add support for COMPLUMP keyword (#13273)
* Add support for COMPLUMP keyword, both in python interface, file export and opm flow jobs
* Add support for WPIMULT kw in opm flow jobs
* Always provide per connection dFactors in COMPDAT kw (negative value)
* Include LGR support in COMPLUMP file export
2025-12-04 19:25:41 +01:00