Commit Graph
17677 Commits
Author SHA1 Message Date
Magne Sjaastad 626d68ec59 Avoids iterator invalidation in QwtPlot item lists
When working with a summary ensemble in a Debug build on Windows, a crash happened in RiuQwtPlotWidget::resetPlotCurveHighlighting(). When iterating over list of plot items, one pointer to item pointed to 0xddddddd, a clear indication that the underlying list had been updated during the loop and the iterator invalidated.

The change ensures that modifications to the item list during iteration do not cause unexpected behavior, particularly in scenarios involving grid lines and curve highlighting.

This is achieved by making a copy of the item list before iteration when modifications may occur. For cases where no add/remove will be performed during the iteration, a comment is added to clarify that it is safe to access the reference to the list.
2025-11-10 14:58:55 +01:00
Magne Sjaastad 29335a5e0e #13013 Ensures increasing MD for fishbone laterals
Positions the ICD segment at the end of the fishbone section to ensure that lateral MDs are larger than the ICD segment MDs.

This is required by the simulator and ensures correct flow modeling from laterals into the ICD segment.
2025-11-10 14:58:55 +01:00
Magne Sjaastad 36965386af Fixes focus out event on combo box
Connects the focus out event of the combo box to a slot that sets the current text to the field.
This ensures that the entered text is saved when the combo box loses focus.
2025-11-10 14:58:55 +01:00
Magne Sjaastad 3d82a00f1a #12958 Check if executable exists before trying to launch ResInsight 2025-11-10 14:58:55 +01:00
Kristian Bendiksen d5bc4f4230 Summary Plot: Fix crash when setting "Col Span" to "unlimited". 2025-11-10 14:58:55 +01:00
Magne Sjaastad dfe5442dae Removes scripting capability of trajectory points
For large point arrays, the scripting causes overflow in the grpc communication. Disable scripting to make sure the grpc object size is below size threshold.
2025-11-10 14:58:55 +01:00
Magne Sjaastad 7cefa491a8 Update opm-common
Update opm-common based on latest main branch
Use branch https://github.com/CeetronSolutions/opm-common/tree/development-01
Update generated opm-common files
2025-11-10 14:58:55 +01:00
Magne Sjaastad 47d03179c3 Removes branch check for tag releases. v2025.9.2 2025-10-13 14:35:42 +02:00
Magne Sjaastad 47814ce89c Set version to 2025.9.2 2025-10-13 14:35:42 +02:00
Magne Sjaastad 42c850b9eb #13000 Fishbones completion: Avoid overwrite of default values
Always call setSystemParameters after appendFishbonesSubs
2025-10-13 14:35:42 +02:00
Magne Sjaastad 77a258ae24 #12986 Fishbones completion: Add unit text for Lateral Diameter 2025-10-13 14:35:42 +02:00
Magne Sjaastad e927241d99 #13001 3D-view: Scale factor is not shown correctly 2025-10-13 14:35:42 +02:00
Magne Sjaastad a236ae2051 Compute measured depth if not present on file (#12872)
* Refactors RigWellPathGeometryTools to namespace
* Refactors measured depth calculation to utility.
* Calculates MD if missing from well path data
2025-10-13 14:35:42 +02:00
Magne Sjaastad 24ca039790 #12927 Add optional time threshold before creating ESMRY
When checking timestamp for ESMRY vs SMSPEC, allow ESMRY to be written before SMSPEC within a given limit in time difference.
2025-10-13 14:35:42 +02:00
Magne Sjaastad 31088c0ec7 Add guarding tying to mitigate reported segmentation fault
2025-10-06 12:48:32.779] [rotating_logger] [error] Stack trace:
  [0] manageSegFailure(int) at :0
  [1]  at :0
  [2] __dynamic_cast at :0
  [3] RimSummaryMultiPlot::updateReadOutLines(double, double) at :0
  [4] CoordinatePicker::trackerText(QPoint const&) const at :0
  [5] QwtPicker::trackerRect(QFont const&) const at :0
  [6] QwtPicker::updateDisplay() at :0
  [7] QwtPicker::begin() at :0
  [8] QwtPicker::transition(QEvent const*) at :0
  [9] QwtPicker::eventFilter(QObject*, QEvent*) at :0
  [10] QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) at :0
  [11] QApplicationPrivate::notify_helper(QObject*, QEvent*) at :0
  [12] RiaGuiApplication::notify(QObject*, QEvent*) at :0
  [13] QCoreApplication::notifyInternal2(QObject*, QEvent*) at :0
  [14]  at :0
  [15] QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool, bool) at :0
  [16]  at :0
  [17]  at :0
  [18] QApplicationPrivate::notify_helper(QObject*, QEvent*) at :0
  [19] RiaGuiApplication::notify(QObject*, QEvent*) at :0
  [20] QCoreApplication::notifyInternal2(QObject*, QEvent*) at :0
  [21] QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) at :0
  [22] QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) at :0
  [23]  at :0
  [24] g_main_context_dispatch at :0
  [25] g_main_context_iterate.isra.20 at :0
  [26] g_main_context_iteration at :0
  [27] QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) at :0
  [28] QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) at :0
  [29] QCoreApplication::exec() at :0
2025-10-13 14:35:42 +02:00
Magne Sjaastad ee94c43305 Fix typo and restore filter for tree view after update 2025-10-13 14:35:42 +02:00
Magne Sjaastad 1bc0c112a9 #12989 Always evaluate calculated expressions before file data 2025-10-13 14:35:42 +02:00
Magne Sjaastad e2ef8622d7 #12983 Clears filter during tree update
Avoids infinite recursion when updating the tree while a search filter is active.

This can occur when a calculation is parsed and a filter is active, causing a rebuild of the tree and infinite recursion.
2025-10-13 14:35:42 +02:00
Magne Sjaastad 083a1dbfad #12996 Resdata: Prefer UNRST over FUNRST 2025-10-13 14:35:42 +02:00
Magne Sjaastad dfa1a57084 #12954 Update all ensemble curves on x address change
Include the x address when computing hash for the data source for ensemble curves.,
2025-10-13 14:35:42 +02:00
Magne Sjaastad 8ff9d44c3f #12953 Always check date of all realizations
The date stamp of UNSMRY is compared to date stamp of ESMRY. This takes some time, and a performance improvement was seen when this operation was done only on a single representative realization of an ensemble. This is not stable, as a single realization might crash or have no new data compared to other realizations.

This feature is removed.
2025-10-13 14:35:42 +02:00
Magne Sjaastad a182932c52 #12930 Avoid pinning for grpc-related packages 2025-10-13 14:35:42 +02:00
Kristian Bendiksen a3ec18bd04 Github Actions: workaround missing libcrypto in latest buildcache. v2025.09.1 2025-09-04 08:33:16 +02:00
Magne Sjaastad a31ed5cc9e Bump to 2025.09.1 2025-09-04 08:25:07 +02:00
Magne Sjaastad 824c210119 Guards against null pointer use 2025-09-04 08:21:02 +02:00
Magne Sjaastad bec4c380c5 #12873 Make sure addresses are created on single summary case reload 2025-09-04 08:20:35 +02:00
Magne Sjaastad 917136fec8 Release 2025.09.0 v2025.09.0 2025-09-01 12:38:48 +02:00
Magne Sjaastad c33402f5ea Bump to 2025.04.3 v2025.04.3.1 v2025.04.3 2025-06-16 14:25:13 +02:00
Magne Sjaastad 649de047d0 Add resampling method to RiaCurveMerger
Delete unused parameter
2025-06-16 14:25:13 +02:00
Magne e8ddef71af Janitor fixes detected by clang-19 2025-06-10 13:31:35 +02:00
Magne Sjaastad dcb21651c5 Set version 2025.4.2 v2025.04.2 2025-06-10 10:52:18 +02:00
Magne Sjaastad 452b00ed59 Update build workflow related to caching of vcpkg 2025-06-10 10:52:18 +02:00
Magne Sjaastad 47f5e004a7 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-06-10 10:52:18 +02:00
Magne Sjaastad 4eccfc86b5 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-10 10:52:18 +02:00
Magne Sjaastad 1ee5a037ec #12542 Make sure case is open before accessing cell data
* Make sure case is open before accessing cell data
* Add Python example to compute average value for a set of cells
2025-06-10 10:52:18 +02:00
Magne Sjaastad 5f6b3ec44d #12535 Avoid use of caf::PdmPointer in async delete of objects
Remove the use of caf::PdmPointer in RifCalculatedSummaryCurveReader as these objects are only accessed and used only during the lifetime of the owning object.

Move caching of RimProject::current()->calculationCollection() to the constructor instead of the calling site.
2025-06-10 10:52:18 +02:00
jonjenssen 55a4bad0fb Add nullptr guards to avoid crash when trying to use well allocation plot with an ensemble 2025-06-10 10:52:18 +02:00
Magne Sjaastad d7d18ce9ab #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-06-10 10:52:18 +02:00
Magne Sjaastad e66e40523a Avoid asserts to be able to open a misconfigured project 2025-06-10 10:52:18 +02:00
Magne Sjaastad c00e03bdd1 Bump to 2025.04.1 v2025.04.1 2025-05-09 08:32:04 +02:00
Magne Sjaastad 64ec98b6a4 #12472 Fix flaky calculation of contour map top value 2025-05-09 08:32:04 +02:00
Magne Sjaastad 18ba47c2ab #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-09 08:32:04 +02:00
Magne Sjaastad 39aeef9fee Improve text for Append operations
Use "Append to Current Plot(s)" and "Append as New Plot(s)"
2025-05-09 08:32:04 +02:00
Magne Sjaastad 1d90a41395 Use NuGet packages as vcpkg cache
* Use NuGet packages as vcpkg cache
* Do not install additional python version
2025-05-09 08:32:04 +02:00
Jon Jenssen 94f5a45423 Make sure the clear all messages slot is defined as a slot. 2025-05-09 08:32:04 +02:00
Magne Sjaastad 321ff4ad90 Create a menu for each ensemble in the plot
Create a QVariant using caf::PdmPointer, and send this variant to the feature. The feature converts the QVariant to an ensemble curve set.

Make sure the right-click menu in the summary plot shows the Create from filtered cases independent to the selection in project tree.
2025-05-09 08:32:04 +02:00
Magne Sjaastad c57eace568 #12455 Date format string and precision
Use date format string from preferences when date is displayed. Use default number of decimals.
2025-05-09 08:32:04 +02:00
Magne Sjaastad fa61fbb78b #12457 Move management of time axis annotations
Use RimTimeAxisAnnotationUpdater for management of annotation objects.
2025-05-09 08:32:04 +02:00
Magne Sjaastad 14294e400e Show time selection in curve filter object 2025-05-09 08:32:04 +02:00
Magne Sjaastad a744474657 Make sure the time fields are added only once 2025-05-09 08:32:04 +02:00