Commit Graph
43 Commits
Author SHA1 Message Date
Kristian Bendiksen 65942d455d Workflows: Read workflow schemas with the taskmaestro CLI
Replace the rips.taskmaestro_helper introspect subcommand with
`python -m taskmaestro workflow describe --json`. RimWorkflowDescribeTools
converts the describe output (JSON schemas, depends_on, config_values)
into the workflow graph used by the Workflow UI. This also adds support
for collect dependencies and maps rips.Reservoir to EclipseCase pickers.
2026-10-05 19:56:36 +02:00
Jørgen Herje c49f298a7d [ri-cloud-api]: Add grid data from sumo using api (#14653)
Add grid data from Sumo using ri-cloud-api

Load Eclipse grid data (roff) from Sumo as RimReservoirGridEnsemble, one case per realization, with async fetch of grid properties per timestep.

- New: RiaSumoGrid (transport), RifReaderSumoGridProperty (lazy property reader), RimReservoirGridEnsembleSumo, RimRoffCaseSumo, and a "Create Reservoir Grid Ensemble" command.
- Shared grid: IJK dimensions compared before download; one RigMainGrid is reused across the ensemble when they match, each realization still parses its own ACTNUM before releasing geometry.
- Rename folders: Summary/Sumo -> Summary/Cloud, RimSumoDataSource -> Cloud/ (PDM keywords unchanged, old project files still load).
- UI: cloud data sources also shown in the 3D window's Data Sources dock.
- Fix: realizations no longer lost on project reload; realizations missing data are now reported instead of silently skipped.
2026-09-10 10:33:58 +02:00
Kristian Bendiksen 65f16d04ef #14622 Sector export: Preserve separate include files for ACTNUM and FAULTS
Sector model export removed all ACTNUM and FAULTS keywords from the deck
and re-inserted the sector-specific replacements at the end of the GRID
section, which always lands in the main DATA file. Decks that keep these
keywords in separate include files lost their file organization, leaving
the original include files empty while the data was written inline.

Collapse duplicates to a single occurrence instead of removing all
occurrences, so the subsequent in-place replacement keeps the keyword in
its original file when the deck is saved with OutputMode::COPY. ACTNUM
keeps the last occurrence since a later ACTNUM overrides an earlier one;
FAULTS keeps the first so fault definitions do not move past keywords
referencing them.
2026-08-31 20:14:38 +02:00
Magne Sjaastad 32cfac7722 #14391 Expose RMS seed value from RMS_SEED_USED file as a realization parameter 2026-08-03 10:55:07 +02:00
Magne Sjaastad 1084684b3d #14309 Add tests for summary case without UNSMRY data file 2026-06-24 15:35:07 +02:00
Magne Sjaastad 97ed7121ed #13863 Roff: Load grid zonation (subgrids) as SUBGRIDS input property
Read the ROFF "subgrids.nLayers" array and expand it into a 1-based per-cell integer property (SUBGRIDS) so ROFF zonation becomes a regular grid property. If a companion "subgrids.names" array is present, zone names are surfaced as category code-names via the existing color-legend flow.
2026-04-28 19:18:12 +02:00
Magne Sjaastad 9ff69a2089 VTK: Add unit tests for RifVtkReader and RifVtkImportUtil
Tests cover readPoints/readDisplacements/readConnectivity/readProperties
in RifVtkImportUtil, and file open, step names, FEM part loading,
displacement reading, and field names in RifVtkReader.
2026-04-14 14:56:43 +02:00
Kristian Bendiksen fce37b8fdb #13411 Sector Model Export: crop data keywords inside BOX/ENDBOX to sector intersection
Data keywords (PORO, EQLNUM, etc.) inside BOX/ENDBOX contain values for the
sub-box only. When BOX coordinates are transformed to sector coordinates, the
data size must match the transformed box dimensions. Crop boxed data keywords
to the intersection of the BOX region with the sector, preserving the
BOX/ENDBOX structure in the exported deck. If the box does not intersect the
sector, the data keyword is removed.
2026-03-20 14:30:34 +01:00
Kristian Bendiksen ff1018a65f #13411 Add test for data keyword cropping with 4 EQLNUM regions
Add a new .DATA file with K-layer based EQLNUM regions (1-4) and a
test that verifies correct spatial cropping of EQLNUM, EQUIL records,
and PORO when exporting a sector model.
2026-03-20 14:30:34 +01:00
Magne Sjaastad 601a3bbb78 Refactor RigFormationNames
- Rename RifColorLegendData to RifFormationNamesReader to better reflect the
class purpose of reading formation names from .lyr files.
- Remove inheritance of cvf::Object
- Improve const correctness
2026-02-27 14:17:21 +01:00
Kristian Bendiksen 71eb461f13 #13528 Add .w extension support for RMSWell files
Files with .w extension are now interpreted as RMSWell format instead of
falling back to ASCII parsing. Added file dialog filter and Python test.
2026-02-04 18:07:10 +01:00
Kristian Bendiksen 116c3b83a5 #13530 Fix RMS well path import with spaces in well names
The RMS well parser now correctly handles well names containing spaces.
Previously, ReadNext<std::string>() stopped at the first whitespace,
causing parsing failures. The fix reads line 3 as a whole and parses
coordinates from the end, treating remaining tokens as the well name.
2026-02-02 14:26:19 +01:00
Magne Sjaastad df293bed37 #13269 Add support for display of field units in VFP plots
Updates the VFP table display to support different unit systems, specifically metric and field units. Introduces unit system awareness to the display of pressure and flow rate values, ensuring values are shown in the correct units based on the configured unit system.
2025-12-03 09:52:38 +01:00
Kristian Bendiksen 4df9bc49c8 Simulation Input: add test case for opm-tests model5. 2025-11-19 16:47:27 +01:00
Magne Sjaastad 544e9eedd9 Improve spell checker using codespell
* Configures automated spell checking with codespell
Adds GitHub workflows and configuration files for automated spell checking using `codespell`.

This includes:
- A workflow for checking pull requests and preventing new typos
- A workflow for automatically fixing typos in the main codebase
- Configuration files for `codespell` to ignore specific terms and file types
- Documentation on how to use and configure the spell checking workflows.

* Corrects minor spelling and grammar errors.
2025-11-19 10:25:32 +01:00
Magne Sjaastad a693aa6d09 #13062 Make search for restart header file more robust
Refactors restart file name retrieval to use preferences for reader mode.

Simplifies logic by removing separate OPM-specific retrieval methods, and
instead uses a unified method that dynamically selects the appropriate
reader based on user preferences.

Adds fallback mechanism to read restart file paths from SMSPEC files when
the RESTART keyword is missing in ESMRY files generated by ResInsight.

Corrects path handling for restart files by adjusting paths relative to the
header file.
2025-11-05 06:38:37 +01:00
Kristian Bendiksen 92f2b887ad RifOpmFlowDeckFile: fix problem when replacing keyword in EDIT section. 2025-11-03 09:56:19 +01:00
Kristian Bendiksen 7de242ffb0 Deck File: Add api for adding regdims. 2025-10-01 13:26:32 +02:00
Magne Sjaastad 56d0ba0931 Use std string for improved performance
Avoid regexp and use optimized string operations for better performance
2025-07-17 13:52:35 +02:00
Kristian Bendiksen 065d39d856 #12462 Well Path Import: add support for RMS well format. 2025-07-01 08:39:18 +02:00
Magne Sjaastad 13a793f16c #12461 Add support for import of .irap and .gri
* Add surfio as submodule and create importer with tests
* Update compile fix when mio.h is included in multiple compile units
* Move file tools into RifFileTools
2025-05-28 09:50:45 +02:00
Kristian Bendiksen 3081a02b90 #12367 VTK surface import: handle NaN in vtu file. 2025-04-23 17:27:23 +02:00
Kristian Bendiksen 9de0367772 Add unit test for VTK fracture surface importer. 2025-03-07 12:14:25 +01:00
Magne Sjaastad 3f08901379 Use updated opm-common
* Update opm-common submodule and use branch development https://github.com/CeetronSolutions/opm-common/tree/development

* Add cmake-format of ThirdParty/custom-opm-common/CMakeLists.txt

* Add boost-test

* Update generated files and simplify CMake configuration

Add -D_USE_MATH_DEFINES to CMake to avoid multiple local defines
Introduce flag CREATE_OPM_COMMON_KEYWORDS used to generate C++ files JSON files. This enables use also in MSVC. Remove obsolete direct include of source files.

* Update generated ESMRY test file

There was a invalid extra : postfix for some keywords like NEWTON and other N* keywords. When creating ESRMY using updated opm-common fix this issue.

* Update URL for custom-opm-common
2025-01-22 08:34:46 +01:00
Magne Sjaastad af7addd6b4 Add test for tab as delimiter 2024-12-12 16:24:14 +01:00
Magne Sjaastad d2a160f793 Make RFT pressure data more robust
Replace tab with space, and fix an out of bounds bug.
2024-09-24 14:49:10 +02:00
Magne Sjaastad e9509f026a Improve robustness when parsing PFLOTRAN files
The include statements can optionally have a / at the end of the line. Make sure the parsing handles this correctly.
2024-09-06 17:22:09 +02:00
Magne Sjaastad 24fcec79ab Look for fault definition in Pflotran input files
Look for fault definition in Pflotran input files If no *.DATA file is found, look for *.IN file and search for fault definitions.
2024-08-30 10:03:03 +02:00
Kristian Bendiksen 809f559792 Add test for reading Parquet files using Apache Arrow. 2024-05-22 15:24:22 +02:00
Magne Sjaastad f00553d399 Avoid crash for summary file with no time steps
Do not try to create ESMRY file if there are no time steps in the summary data
Do not try to read "TIME" record if no time steps are present
2023-12-11 12:32:19 +01:00
Magne Sjaastad a243311ebb Remove ESMRY from .gitignore
As the content of ESMRY has changed due to file reader changes, ESMRY files needs to be included in the repo
2023-08-15 09:26:22 +02:00
Magne Sjaastad f091a6237f Support multiple RFT observation files
Add support for date on format yyyy-MM-dd
Support observations in multiple files
2023-06-02 09:32:47 +02:00
Kristian Bendiksen b541acdcb1 #9773 Import data from Reveal and StimPlan as summary case. 2023-03-20 08:58:42 +01:00
Magne Sjaastad 07a4c13dd4 #9913 Fix import of RFT pressure/depth 2023-03-10 13:20:08 +01:00
Kristian Bendiksen 10187a934c #9620 Add reader for pressure depth text file. 2023-01-19 09:00:05 +01:00
Kristian Bendiksen 40cc3f9dc6 #9101 Thermal Fracture Import: detect and refuse inconsistent units.
All values in the file should be in either field or metric units, and mixing is
not allowed.
2022-08-03 14:04:31 +02:00
Kristian Bendiksen 972013c631 #9039: Thermal Fractures: add file reader 2022-07-06 18:18:11 +02:00
Magne Sjaastad 488468723b #8143 Add EclipseTextFileReader with unit test
unit
2021-10-14 07:26:13 +02:00
Magne Sjaastad dd97e7741a #7527 HDF Summary Reader : Add first working prototype
HDF5 must be compiled with special options to support multithreading. Disable file object multithreading for HDF5. Some vector types are not supported, as the support in opm-common reader is not complete (region, region_to_region, ...).
2021-04-08 07:13:34 -07:00
Kristian BendiksenandMagne Sjaastad 751ebf7eb6 6365 additional stimplan xml parameters (#7318)
* #6365 StimPlan XML: Parse formation dip and fracture orientation.
* #6365 Fracture: Use formation dip and fracture orientation from XML.
* #6365 Fracture: Compare case insensitive, use enum class

Co-authored-by: Magne Sjaastad <magne.sjaastad@ceetronsolutions.com>
2021-02-02 14:29:17 +01:00
Magne Sjaastad 0ec612ae86 Create LGR : Use all well cells if no completions are defined (#7285)
* #7274 Create LGR : Use all well cells if no completions are defined

* #7263  Create LGR : Not working in console mode 

Guard access to RiaApplication

* Add pytest for create_lgr_for_completion

* Add pytest for create_lgr_for_completion

* #7289 Script : Add execute of last used script

* #7291 Python : Guard access to RiaMainWindow
2021-01-26 20:34:31 +01:00
Gaute Lindkvist 04d5daca67 Create a new ApplicationExe project for the executable 2021-01-11 15:27:45 +01:00
Gaute Lindkvist 81699db187 Rename ApplicationCode to ApplicationLibCode 2021-01-11 15:27:45 +01:00