Kristian Bendiksen
4d2a868079
#14766 Fix potentially uninitialised object used for accumulation
...
RigStatisticsCalculator::mobileVolumeWeightedMean() accumulated into a sum
from an out-parameter that callees were not required to write. Every
implementation of the per time step overload has early-return paths that
leave the value untouched, as does RigWeightedMeanCalc::weightedMeanOverCells,
so indeterminate stack memory could be summed and presented in the UI.
Return std::optional<double> from the computation layer instead of using an
out-parameter, making "value not available" explicit and impossible to ignore:
- RigWeightedMeanCalc::weightedMeanOverCells
- RigStatisticsCalculator::mobileVolumeWeightedMean and all overrides
Time steps without a computable mean no longer contribute to the accumulated
sum, and are excluded from the divisor. Previously they would either add
garbage or, with a naive zero initialisation, bias the average towards zero.
RigStatisticsDataCache keeps the existing HUGE_VAL marker on its public API
via value_or(), so behaviour seen by RigHistogramData and the overlay info
is unchanged apart from the fix.
Also:
- Set m_isVolumeWeightedMeanCalculated in the per time step cache, which was
never assigned, so the cached value was recomputed on every call.
- Remove a duplicated ensureKnownResultLoaded() call in
RigEclipseNativeVisibleCellsStatCalc.
Fixes #14766
2026-09-21 18:36:27 +02:00
..
2026-08-07 15:05:57 +02:00
2026-08-31 10:28:41 +02:00
2026-09-07 09:32:04 +02:00
2026-08-10 10:07:32 +02:00
2026-08-28 07:15:47 +02:00
2026-08-31 20:14:38 +02:00
2026-05-26 13:10:20 +02:00
2026-09-18 12:36:43 +02:00
2026-07-27 15:24:25 +02:00
2026-05-26 13:10:20 +02:00
2026-08-07 15:05:57 +02:00
2025-11-03 16:06:58 +01:00
2026-08-07 15:05:57 +02:00
2025-09-12 08:38:43 +02:00
2021-01-11 15:27:45 +01:00
2025-05-19 17:40:39 +02:00
2025-05-19 17:40:39 +02:00
2026-08-07 15:05:57 +02:00
2026-03-31 12:32:05 +02:00
2024-10-29 18:17:31 +01:00
2024-10-29 18:17:31 +01:00
2021-01-11 15:27:45 +01:00
2023-02-26 10:48:40 +01:00
2023-09-19 18:03:36 +02:00
2023-09-19 18:03:36 +02:00
2026-01-12 09:58:55 +01:00
2026-01-12 09:58:55 +01:00
2026-08-07 15:05:57 +02:00
2021-02-11 03:01:17 +01:00
2026-09-08 13:14:24 +02:00
2026-09-07 11:18:09 +02:00
2021-01-11 15:27:45 +01:00
2026-08-07 15:05:57 +02:00
2025-10-06 09:10:58 +02:00
2026-08-07 15:05:57 +02:00
2026-08-07 15:05:57 +02:00
2026-08-07 15:05:57 +02:00
2026-08-07 15:05:57 +02:00
2021-01-11 15:27:45 +01:00
2026-08-07 15:05:57 +02:00
2023-02-26 10:48:40 +01:00
2026-08-25 08:22:29 +02:00
2026-08-07 15:05:57 +02:00
2026-08-07 15:05:57 +02:00
2025-09-12 08:38:43 +02:00
2023-04-13 07:05:53 +02:00
2023-02-26 10:48:40 +01:00
2023-05-05 15:30:48 +02:00
2023-05-05 15:30:48 +02:00
2025-08-08 08:58:31 +02:00
2025-08-08 08:58:31 +02:00
2026-09-21 18:36:27 +02:00
2026-09-21 18:36:27 +02:00
2026-08-07 15:05:57 +02:00
2026-08-07 15:05:57 +02:00
2025-11-17 13:04:13 +01:00
2026-08-07 15:05:57 +02:00
2026-07-31 14:31:58 +02:00
2025-02-03 15:50:21 +01:00
2023-09-27 10:16:37 +02:00
2026-08-07 15:05:57 +02:00
2026-09-21 18:36:27 +02:00
2026-09-21 18:36:27 +02:00
2026-09-21 18:36:27 +02:00
2026-09-21 18:36:27 +02:00
2025-08-27 14:22:11 +02:00
2025-08-27 14:22:11 +02:00
2026-08-07 15:05:57 +02:00
2023-04-19 15:00:56 +02:00
2026-05-08 10:11:09 +02:00
2026-08-07 15:05:57 +02:00
2023-02-26 10:48:40 +01:00
2023-02-26 10:48:40 +01:00
2026-08-13 07:19:18 +02:00
2026-08-13 07:19:18 +02:00
2026-09-09 10:47:54 +02:00
2021-06-30 10:43:11 +02:00
2023-09-27 10:16:37 +02:00
2021-01-11 15:27:45 +01:00
2026-08-07 15:05:57 +02:00
2025-12-20 09:50:51 +01:00
2024-03-12 16:57:16 +01:00
2025-05-19 14:31:30 +02:00
2026-08-07 15:05:57 +02:00
2024-03-25 15:14:04 +01:00
2025-03-31 14:20:43 +02:00
2025-03-31 14:20:43 +02:00
2025-10-03 08:37:24 +02:00
2025-11-05 09:06:53 +01:00
2025-10-27 14:09:57 +01:00
2025-10-03 08:37:24 +02:00
2025-10-03 08:37:24 +02:00
2025-10-03 08:37:24 +02:00
2025-10-03 08:37:24 +02:00
2026-09-08 11:16:38 +02:00
2026-08-13 07:19:18 +02:00
2026-08-07 15:05:57 +02:00
2025-11-25 10:48:18 +01:00
2026-09-21 18:36:27 +02:00
2026-09-21 18:36:27 +02:00
2026-08-07 15:05:57 +02:00
2025-11-25 10:48:18 +01:00
2026-09-21 18:36:27 +02:00
2026-09-21 18:36:27 +02:00
2026-08-07 15:05:57 +02:00
2026-08-04 13:05:26 +02:00
2022-10-03 08:33:55 +02:00
2021-10-27 21:59:26 +02:00
2026-05-08 10:11:09 +02:00
2021-08-30 13:01:18 +00:00
2026-08-07 15:05:57 +02:00
2026-08-07 15:05:57 +02:00
2026-08-07 15:05:57 +02:00
2026-01-12 09:58:55 +01:00
2021-01-11 15:27:45 +01:00
2026-03-31 12:32:05 +02:00
2024-03-08 15:50:05 +01:00
2026-08-07 15:05:57 +02:00
2026-04-29 13:14:49 +02:00
2022-11-17 15:51:01 +01:00
2022-11-17 15:51:01 +01:00
2026-08-07 15:05:57 +02:00
2026-08-07 15:05:57 +02:00
2025-09-03 14:21:19 +02:00
2023-09-27 10:16:37 +02:00
2021-05-14 14:19:09 +02:00
2026-07-28 14:33:49 +02:00
2025-03-31 14:20:43 +02:00
2026-08-07 15:05:57 +02:00
2026-03-17 20:13:26 +01:00
2026-07-27 15:24:25 +02:00
2026-07-27 15:24:25 +02:00
2026-08-25 08:22:29 +02:00
2026-07-27 15:24:25 +02:00
2026-08-26 14:59:25 +02:00
2026-08-20 11:00:22 +02:00
2026-08-20 11:00:22 +02:00
2026-07-27 15:24:25 +02:00
2026-08-07 15:05:57 +02:00
2023-02-26 10:48:40 +01:00
2026-08-07 15:05:57 +02:00
2026-08-07 15:05:57 +02:00
2026-03-30 11:24:56 +02:00
2026-03-30 11:24:56 +02:00
2026-03-30 11:24:56 +02:00
2026-03-30 11:24:56 +02:00
2026-03-31 12:32:05 +02:00
2021-01-11 15:27:45 +01:00
2025-05-30 08:20:43 +02:00
2025-05-30 08:20:43 +02:00
2024-02-25 09:21:48 +01:00
2024-02-25 09:21:48 +01:00
2023-02-26 10:48:40 +01:00
2025-07-16 13:10:47 +02:00
2026-03-30 11:24:56 +02:00
2026-03-30 11:24:56 +02:00
2026-07-10 14:23:50 +02:00
2025-09-12 08:38:43 +02:00
2026-08-07 15:05:57 +02:00
2025-09-18 11:46:57 +02:00
2026-08-07 15:05:57 +02:00
2026-08-07 15:05:57 +02:00
2026-06-19 12:25:55 +02:00
2025-09-29 11:46:28 +02:00
2026-08-07 15:05:57 +02:00
2023-05-11 08:37:58 +02:00
2025-09-26 10:26:43 +02:00
2021-04-09 15:35:05 +02:00
2021-05-20 07:37:55 +02:00
2024-11-04 09:54:23 +01:00
2023-02-26 10:48:40 +01:00
2026-07-13 14:34:17 +02:00
2026-07-13 14:34:17 +02:00
2023-02-26 10:48:40 +01:00
2021-01-11 15:27:45 +01:00
2026-08-07 15:05:57 +02:00
2026-08-07 15:05:57 +02:00
2024-03-25 15:14:04 +01:00
2022-08-25 09:17:00 +02:00
2022-07-06 18:18:11 +02:00
2026-08-07 15:05:57 +02:00
2026-05-08 10:11:09 +02:00
2023-05-15 15:43:01 +02:00
2025-05-20 15:07:27 +02:00
2021-01-11 15:27:45 +01:00
2026-08-07 15:05:57 +02:00
2023-02-26 10:48:40 +01:00
2021-02-25 16:38:56 +01:00
2021-02-25 16:38:56 +01:00
2021-02-25 16:38:56 +01:00
2021-02-25 16:38:56 +01:00
2023-02-26 10:48:40 +01:00
2023-02-26 10:48:40 +01:00
2026-03-04 07:37:19 +01:00
2026-03-30 11:24:56 +02:00
2026-03-30 11:24:56 +02:00
2025-12-08 15:58:05 +01:00
2026-09-14 14:17:33 +02:00
2025-02-26 15:21:12 +01:00
2025-02-26 15:21:12 +01:00
2024-02-14 15:16:47 +01:00
2024-01-29 15:05:08 +01:00
2026-09-21 18:36:27 +02:00
2026-09-21 18:36:27 +02:00