[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.
This commit is contained in:
Jørgen Herje authored and GitHub committed 2026-09-10 10:33:58 +02:00
1 parent 71c5b5a97d
commit c49f298a7d
70 files changed
+5194 -222

No files matched your search

@@ -201,6 +201,12 @@ bool RimEclipseStatisticsCase::openEclipseGridFile()
RigMainGrid* mainGrid = ensembleBase->mainGrid();
if ( !mainGrid ) return false;
// Statistics are computed from every realization, and the realizations of an ensemble can be opened
// lazily. Compute the union first, so it is complete before it is used below: an empty union would
// give a degenerate active cell bounding box and make computeCachedData() classify the faults of the
// shared grid from an all inactive grid.
ensembleBase->computeUnionOfActiveCells();
cvf::ref<RigEclipseCaseData> eclipseCase = new RigEclipseCaseData( this );
eclipseCase->setMainGrid( mainGrid );