Commit Graph
564 Commits
Author SHA1 Message Date
magnesj a70a094caf Fixes by clang-tidy 2025-09-12 05:45:56 +02:00
Magne Sjaastad 7246f0596b Add logging bridge between caf and ResInsight 2025-09-11 13:43:52 +02:00
Magne Sjaastad 48ae7b2f04 Adds angle conversion utilities
Implements type-safe angle (degrees and radians) representation classes.

Provides utilities for converting between Cartesian and cylindrical
coordinate systems.

Includes a unit test suite for validation.
2025-09-10 08:23:09 +02:00
Magne Sjaastad b8566b7761 #12873 Make sure addresses are created on single summary case reload 2025-09-02 15:48:12 +02:00
Magne Sjaastad 35d1279b1d Prepare 2025.09.0-RC_1
* Migrates obsolete color field to main color
* Sets filter mode for older project files
* Adds surfio license information
* Removes log to file preference
* Refines short name generation.
2025-08-28 20:14:53 +02:00
Magne Sjaastad 4135a743fe Release preparations
* Adds a bounds check on the node index to prevent accessing invalid memory locations.
This prevents potential crashes caused by out-of-bounds access when retrieving summary variable values.
* Updates warning message for incomplete deltas
* Plot based on a single realization from a file set ensemble is not restored correctly on project load
* Populate result addresses if no addresses are present
* Adds CNV_ (convergence) result name
* Avoid include of RiaResultNames.h in header file
2025-08-27 14:22:11 +02:00
Magne Sjaastad b8fc3df6f5 Adjustments for release
* Make sure RFT curve settings are restored correctly, use three numbers to identify project version string to compare with.
* Increases dialog window sizes for summary template operations
* Move improved summary import setting to Summary tab
* #12838 Use discrete linear as default legend for CNV_* result names
* Bump version to 2025.04.4-dev.10
2025-08-25 20:11:04 +02:00
Kristian Bendiksen 8f825c3cef #12534 Refactor: Simplify RiaDefines::MultiPlotPageUpdateType usage 2025-08-22 16:10:04 +02:00
Magne Sjaastad 8dff7b46c9 Improves robustness for curve merging operations
- Ensures a more robust size multiplier calculation by validating the weighted mean and preventing division by zero.
- Addresses a potential division by zero during curve interpolation when the X values are very close, ensuring a more robust and accurate result.
2025-08-22 06:47:07 +02:00
Magne Sjaastad 0d738013c4 #12768 Make sure name of delta-summary-cases is stored correctly 2025-08-19 13:55:35 +02:00
Magne Sjaastad 09309f3051 Guards against null summary reader
Addresses potential null pointer dereferences by adding checks for null summary readers before accessing their data.

This change prevents crashes and improves the robustness of summary data processing, particularly when dealing with incomplete or corrupted summary data.

The checks are added in the following locations:
- RiaSummaryPlotTemplateTools
- RiaSummaryStringTools
- RicPlotProductionRateFeature
- RicSummaryPlotFeatureImpl
- RimAnalysisPlot
- RimSummaryCalculation
- RimEnsembleCurveFilter
- RimEnsembleCurveSet
- RimSummaryEnsemble
- RimSummaryMultiPlot
- RimSummaryRegressionAnalysisCurve
- RimSummaryEnsembleSumo
2025-08-16 15:20:55 +02:00
Magne Sjaastad fc85f3adee Guards against null summary reader
Prevents potential crash when accessing the summary reader, ensuring that `createAddressesIfRequired` is only called when the reader is valid.
2025-08-16 15:20:44 +02:00
Magne Sjaastad 5d22c7791d Adds ensemble name to summary case options 2025-08-15 13:00:48 +02:00
Magne Sjaastad 41870a2c6d Enables setting thread count via command line
Allows users to set the maximum number of threads used for parallel processing via a command-line argument. The thread count can also be set via preferences. Command line takes precedence.
2025-08-13 13:00:49 +02:00
Magne Sjaastad a59c8d0a3f #12722 Fix grouping of files and detection of realization number
* Detect single ensemble for Everest file grouping
* Enhance realization number extraction to support underscore separator
2025-08-08 09:57:25 +02:00
Kristian Bendiksen 90d1555de3 Python: add api for getting values back from key-value store. 2025-08-08 08:58:31 +02:00
Magne Sjaastad b0a86de653 Avoid overwrite of axis object for newer project file versions
Add project file version check to the usage of m_plotAxis_OBSOLETE in RimSummaryCurve::initAfterRead()
2025-08-07 13:45:08 +02:00
Kristian Bendiksen ade8e1d7e6 Remove QT_CHARTS dependency. 2025-07-30 13:39:02 +02:00
Kristian Bendiksen fa3f43456e Remove GridStatisticsPlot and EnsembleFractureStatisticsPlot. 2025-07-30 13:39:02 +02:00
Kristian Bendiksen aa02440000 caf: Add warnings for deprecated keywords. 2025-07-30 13:39:02 +02:00
Magne Sjaastad e5d43c74ed Triggers plot redraw after project load
Ensures that plot windows are properly updated after a project is loaded during regression tests.

Required after the ensemble curve changes in 2f9971cb30
2025-07-30 08:34:13 +02:00
Magne Sjaastad 2f9971cb30 Enhances ensemble curve handling and performance
* Removes obsolete code
* Return first non-empty return value from reader
* Simplifies water cut curve visibility check
* Defers the page update until after all plots have been added.
* Add settings to control number of threads
* Refactors ensemble curve handling and visibility

Improves the efficiency of ensemble curve set management by separating realization and statistics curves into distinct collections. This allows for more targeted operations, such as selectively showing/hiding realization curves without affecting statistics.
Also defers data loading of curves until they are actually displayed, optimizing performance.
The visibility updates are modified to optionally skip updating the parent plot, providing more control over replotting behavior and preventing unnecessary updates.
2025-07-30 07:16:29 +02:00
Magne Sjaastad ff3773c85d Logging: Add accumulated timing for sub tasks when loading project 2025-07-28 15:29:01 +02:00
Magne Sjaastad fdcd157238 Hide debug logging using keyword filtering
Also, adds a hint to the "KeywordsForLogging" preference to inform users about the 'enable-all' option.
2025-07-25 08:42:13 +02:00
Magne Sjaastad de35c760c0 #12663 Add file search tools and updates ensemble import
Introduces a new set of tools for searching files and directories recursively.

Update the ensemble import functionality to use the new file search tools.

Mark the old file system search function as obsolete.
2025-07-24 15:18:14 +02:00
Magne Sjaastad b4e99e9a3a Improves summary import for ensemble workflows
- Introducing a configuration system to automatically detect file patterns for restart and parameter files across ensemble realizations.
- Adding UI elements to control improved summary import settings.
- Modifying summary file reader to use the determined file patterns.
2025-07-23 15:58:56 +02:00
Magne Sjaastad f9f9b6b07b Refactor logging of elapsed time 2025-07-23 15:23:08 +02:00
Magne Sjaastad 4e94169b63 Ensures addresses are created for single summary cases
Addresses are now explicitly created for summary cases upon loading or importing.

Remove a potentially costly rebuild if when no calculations are present.
2025-07-21 16:46:54 +02:00
magnesj eac4c7f876 Fixes by clang-tidy 2025-07-21 07:18:08 +02:00
Magne Sjaastad e50835c77f Improve progress info summary
Use task system to improve the progress info experience. Remove progress info for well picks to reduce number of progress bars.
2025-07-20 08:28:15 +02:00
Magne Sjaastad 66ccc1201e Add flag to control creation of summary addresses 2025-07-18 08:47:01 +02:00
Magne Sjaastad 2305a73908 Improves string trimming and parsing
Refactors string trimming functions for improved performance by using a lookup table for whitespace characters.

Also adds a function to split a string into two tokens at the first whitespace.
2025-07-17 13:52:35 +02:00
Jon Jenssen 816e1b0980 Add support for custom mpirun path in preferences 2025-07-02 17:16:16 +02:00
Magne Sjaastad b99a213ae7 Add resampling method to RiaCurveMerger
Delete unused parameter
2025-06-16 10:37:34 +02:00
JJ bda598dd37 Run Opm Flow jobs from ResInsight (#12580) 2025-06-11 15:43:53 +02:00
Magne Sjaastad 88e0aad8cf Several adjustments user interface and project file
* Avoid writing error message if observed data for a well is not present
* Add missing log text during replace summary ensemble
* Make sure plot window is visible after importing summary ensemble
* Add observed FMU folder to path section
* Move worker functions to RiaProjectFileTools
* Reset numbering of path IDs when saving project.
* Remove warning when fault name is longer than 8 characters
2025-06-03 14:29:44 +02:00
Magne Sjaastad 27556f36ae Make sure std::equal is executed on valid range of vectors
Previous solution did not check for equal length of these vectors, causing out of bounds compare. Detected by debug build using MSVC
2025-06-02 15:29:46 +02:00
Magne Sjaastad afe2434b63 Always write log files to the home folder #12540
- Always log to file using default values. Log to home_folder/.resinsight/logs.  Files are rotated, 5MB per file and maximum of 3 files.
- Add checkbox to system preferences to control file logging
2025-06-02 13:01:55 +02:00
Kristian Bendiksen fe9cac4fba #12414 GeoMech: import geomech data from VTK. 2025-05-30 08:38:51 +02:00
Magne Sjaastad 118ecf941a Performance improvements ensemble curves
* Do not create ensemble in initAfterRead
* Check if filter is active before update
* Do not recompute statistics on every loadData
* Removes unnecessary resampling
* MSVC: Add support for dynamic deoptimalization
* Make sure RFT plots are initialized based on curves in project file
* Make sure the progress dialog is always on top
* Add more progress info when loading project file
* Make sure names in RFT plots are updated
2025-05-28 15:10:43 +02:00
Kristian Bendiksen 5a2a2bd575 Remove unnecessary check (result always true). 2025-05-28 11:28:00 +02:00
Kristian Bendiksen 201f5e0353 Refactor: improve ImportFileType enum. 2025-05-28 11:28:00 +02:00
Kristian Bendiksen 1a55fa11c3 #12459 Add regular surface domain object. 2025-05-20 20:39:07 +02:00
Magne Sjaastad dc4cd33c6e #12495 Refactors ensemble statistics handling
Removes the dedicated `SUMMARY_ENSEMBLE_STATISTICS` category and instead uses a `statisticsType` field within `RifEclipseSummaryAddress` to represent ensemble statistics.

This change simplifies the code and avoids potential confusion by representing statistics as attributes of existing summary types, rather than a separate category. It also improves code robustness.
2025-05-16 07:53:46 +02:00
Magne Sjaastad 3c5221236a Use lambda functions and simplify createSummaryCasesFromFiles 2025-05-12 13:04:10 +02:00
Magne Sjaastad f708ac96f2 Add path pattern helper functions and tests 2025-05-12 13:04:10 +02:00
Magne Sjaastad 5126face72 Rename to summaryEnsembles() 2025-05-12 13:04:10 +02:00
Magne Sjaastad 76b3b3009d Get caf::FilePath for writable PdmFields 2025-05-12 13:04:10 +02:00
Magne Sjaastad 3c7e8ee120 Refactors summary case creation into a tool class
Moves the summary case creation logic from the `RicImportSummaryCasesFeature` class to a new `RiaEnsembleImportTools` class.
2025-05-12 13:04:10 +02:00
Magne Sjaastad 7714d727fc #12470 Use value range slider instead of independent min and max value sliders
Make sure minimum value is always less than max and max value is always larger than min.
2025-05-08 12:47:06 +02:00