Commit Graph

194 Commits

Author SHA1 Message Date
Magne Sjaastad
7a782cec66
RFT ensemble refactoring
* Compute average MD for intersections with a cell
* Create extractor for simulation well
* Remove rftReader from RifDataSourceForRftPlt
* Add function compute measured depth for RFT cells based on well path geometry
* Move statistics reader to well ensemble curve set
* Make sure both TVD and MD are cached if possible
* Add selection of grid case to use for estimation of measured depth (MD)
Add "Grid Model For MD" where the user can select a grid model. This grid model is propagated to a hidden field in EnsembleCurveSet. The grid model is then applied to RifReaderEnsembleStatisticsRft owned by EnsembleCurveSet
2023-09-04 10:08:30 +02:00
Magne Sjaastad
96b3bef878
Reduce memory use for summary address object
* Use one common variable for object name, use three ints
* Move enums to separate file
* Refactor use of enums
* Move implementation to cpp
* Refactor includes
2023-08-21 07:12:08 +02:00
Magne Sjaastad
0bada502fb 9498 Add parsing of network name
Use merged commit
2023-08-14 11:20:01 +02:00
Magne Sjaastad
aafcd2f9b6 Fix console application issue 2023-08-11 21:30:27 +02:00
Magne Sjaastad
3dcb81ebfb Do not create default plot if plot window is hidden
When working in the 3D window, creating a MDI window in a hidden plot window causes flickering.
2023-08-11 13:54:03 +02:00
Magne Sjaastad
d36bf92b55
Adjust value ranges using floor and ceil
* Use regression curve icon in grid cross plot
* #10481 Use ceil and floor when adjusting precision for ranges
2023-08-09 07:51:17 +02:00
Kristian Bendiksen
5bf2c2a89d #10367 Janitor: Remove unneccessary 'this' pointers 2023-08-07 13:38:27 +02:00
Magne Sjaastad
aaecd846fd
Improve plot titles and layout adjustments 2023-07-06 08:40:09 +02:00
Kristian Bendiksen
fdf4309d82 Grid Cross Plot: Add regression curves. 2023-06-28 21:46:11 +02:00
Magne Sjaastad
59ca0b943c
Add readability-simplify-boolean-expr
* Add readability-simplify-boolean-expr
* Fixes based on review
2023-06-26 13:12:41 +02:00
Kristian Bendiksen
06d107c4e6 #10320 Ensemble Summary Import: wrong realization name when importing single realization 2023-06-01 08:49:26 +02:00
Magne Sjaastad
54f0a832de
Janitor: Remove unused includes 2023-05-15 15:43:01 +02:00
Magne Sjaastad
0c90f67dcc
Change API for PdmObjectHandle and PdmFieldHandle
* Refactor interface to PdmObjectHandle and PdmFieldHandle
Return objects instead of passing in structures as parameters

* Add nodiscard to several functions
* Remove redundant this->
* Rename to ptrReferencedObjectsByType
2023-05-12 21:41:34 +02:00
Magne Sjaastad
37e29a0f68 Display all data if multiple fractures crosses a cell
- add the operator<=> for QString
- add operator<=> to fracture report item
2023-05-12 16:23:01 +02:00
jonjenssen
1d43e1a948
Specify part id for well extraction from geomech data (#10240)
* Specify part id for well extraction from geomech data
* Make sure we clear curve data if there isn't any valid input data
2023-05-12 08:13:56 +02:00
Magne Sjaastad
f70d2c4949
Add result type and create and use custom legend if possible
* Update submodule
* Use postfix functions and add custom color legend

* Add type to RigEclipseResultAddress
Read types from ROFF and create default legend based on type or custom created legend.

* Use caseId to connect legend configuration to result in a case
2023-05-09 11:41:56 +02:00
Kristian Bendiksen
c8b402651d Add "Decline Curves" functionality.
Adapted from formulas here:
https://petrowiki.spe.org/Production_forecasting_decline_curve_analysis
2023-05-05 15:30:48 +02:00
Kristian Bendiksen
26f13012b4 #10128 Reveal Summary: add ensemble import. 2023-04-25 09:42:18 +02:00
Kristian Bendiksen
9949e84420 #10129 StimPlan Summary Ensemble: Simplify paths 2023-04-24 14:37:22 +02:00
Jørgen Herje
0d8aee8995
GRDECL: Import multiple grid files from dialog (#10142)
Add import of N .GRDECL grid files - as done for roff-files
2023-04-21 10:34:29 +02:00
Kristian Bendiksen
ff209ad7c2
Refactor ensemble import dialog
* #9773 Refactor ensemble import dialog.
* #9773 Add support for ensemble import of StimPlan/Reveal summary data.
* #9773 Add method for finding min and max time steps.
* #9773 Add option for resampling to hour intervals.
* #9773 Add option for resampling to minute intervals.
* #9773 Ensemble statistics: determine sub-sampling period dynamically.
* Use RiaWeightedMeanCalculator for curve resampling.
* Add HOUR and MINUTE to date time app enum.
* #9773 Generate better ensembles for StimPlan summaries.
* #9773 Fix parameters.txt lookup for StimPlan summaries
* Refactor: Improve interface of RicImportSummaryCasesFreature::createSummaryCasesFromFiles

Co-authored-by: Magne Sjaastad <magne.sjaastad@ceetronsolutions.com>
2023-04-20 10:16:43 +02:00
Jørgen Herje
67264da0a8
Roff: support import of N grid files and 1 grid file with N property files
* Add utility to check is roff file contains grid data

* Import of multiple grid files or 1 grid file with N property files

* Fix build errors for using RifRoffFileTools from Commands
- Move template implementation to cpp-file
- Add roffcpp to link libraries in CMake for Commands

* Improve/fix import of single grid file with N property files

* Fix missing add of roff case Id
2023-04-19 15:52:57 +02:00
Magne Sjaastad
b7f8d0e0f1
Increase warning level
* Set warning level to /W3 for MSVC to catch more warnings
* remove several excluded checks for clang
* removed several unused variables
* Hide warnings qwt
* add missing parentheses in logical expressions
* Remove double check on same logical expression
2023-04-17 15:57:39 +02:00
Magne Sjaastad
6f6dc80bc6
Added more clang-tidy checks
Improved GitHub Action to run clang-format as part of clang-tidy

* Simplify clang-tidy workflow
* Added modernize-use-using, modernize-redundant-void-arg, readability-static-accessed-through-instance
* Add nolint for libecl typedefs
2023-04-14 14:07:45 +02:00
Magne Sjaastad
952e766c2f
Update clang-format.yml (#10068)
* Update to clang-format-15
Removed two custom .clang-format files in subfolders of AppFwk

* Fixes by clang-format
2023-04-13 07:05:53 +02:00
Jørgen Herje
36e01523cb
Summary table (#9997)
Summary Table for showing summary vectors in table format
- Resampling on date resolution
- Active for group, region and well
- Right click menu option from Summary case tree
2023-03-23 14:10:30 +01:00
Jørgen Herje
535811cc4f
Producer/Injector Connectivity Table (#9928)
- Crated new RimMatrixPlotWidget to show table data
- Create RimWellConnectivityTable for showing Producer/Injector connectivity table data
- Rename RimWellAllocationOverTimeCollection to RigWellAllocationOverTime for well allocation over time data storage
- Created heatmap color palette
- Move utils from RimWellAllocationOverTimePlot to RiaQDateTimeTools
- Create RimFlowDiagnosticsTools for producer/injector well utility functions


---------

Co-authored-by: jorgenherje <jorgenherje@users.noreply.github.com>
2023-03-21 08:32:38 +01:00
Kristian Bendiksen
245d483036
Summary observed data
* #9966 Summary calculations: add support for imported vectors.
* #9966 Summary Calculation: add support for imported and observed data.
* Summary Address: avoid extra level in tree for imported data.
* #9966 Update observed data when calculation is updated.
2023-03-15 13:39:57 +01:00
Magne Sjaastad
8f786fed5d #9914 Fix import of single case already present in ensemble 2023-03-06 10:45:49 +01:00
Magne Sjaastad
9bc3659584
Remove special summary case connected to a grid model
* Remove use of RimGridSummaryCase
* Remove unused summary plot filter text
* Delete unused files
2023-03-03 15:28:34 +01:00
Magne Sjaastad
f8c5cf389f
clang-format: Set column width to 140
* Set column width to 140
* Use c++20
* Remove redundant virtual
2023-02-26 10:48:40 +01:00
Magne Sjaastad
8768e186d8
#9671 summary calculations for summary items
* Summary Calculation: use shorter name in title
* Sort summary addresses to group calculated results last.
* Summary Calculation: add option to distribute calculation to other items.
* Add support for summary calculation for RimGridSummaryCase.
* Use short name for calculations in plot titles.
* Update ensembles in Data Sources when calculation is added.
* Summary Calculation: allow drag-and-drop of ensembles
* Summary Plot: fix axis range aggregation for calculated ensemble addresses.

---------

Co-authored-by: Kristian Bendiksen <kristian.bendiksen@gmail.com>
2023-02-26 08:08:06 +01:00
Magne Sjaastad
f0e78f32e8
Minor issues related to release
* Add shortcut for Plot Editor, and modify how command features are triggered
Use Ctrl-E to launch the Plot Editor.

* Add optional use of NOECHO and ECHO keywords in GRDECL files
* Add ECHO keywords to sector model export
* Add Help button to Preferences
2023-02-20 08:18:08 +01:00
Magne Sjaastad
349c88bfeb Use ads forward declares in RiuMainWindowBase 2023-02-02 15:20:34 +01:00
Magne Sjaastad
62ce2b18e0
RFT improvements
* Avoid accessing nullptr
* remove unused function
* Allow RFT data from single summary case to be used in RFT plots
* #9736 Support horizontal plotting of LAS curves
2023-01-27 10:29:11 +01:00
Kristian Bendiksen
061e0d4688 RiaDateStringParser: add option for day-first parsing of ambiguous date strings. 2023-01-19 09:00:05 +01:00
Magne Sjaastad
abc9e82ff5 System: Enable and use c++20
Enable c++20 in top level cmake. Keep c++17 for GrpcInterface, as the protoc tool does not work with c++20.
Several code adjustments to fix compiler issues.
2023-01-19 08:33:02 +01:00
Magne Sjaastad
28b3f16db1 #9614 Check last write time for ESMRY files and SMSPEC files 2023-01-05 09:29:19 +01:00
Magne Sjaastad
09e05e9996
Fix summary issues
* Add missing time conversion for month
* #9606: FIx wrong usage of function when accessing data from summary file
The result values are aggregated into the destination vector in RimSummaryCaseCollection::computeMinMax(), so make sure the vector is recreated per case.
* #9602 : Make sure the plot is updated correctly for "Time since simulation start"
* Move roundToNumSignificantDigits() to RiaNumericalTools
* Make sure the time axis is consistent when individual time range differs
2023-01-02 10:22:44 +01:00
Magne Sjaastad
984557a46a RegressionTest: Match on full name 2022-12-29 08:45:56 +01:00
Kristian Bendiksen
8b51160ac4
Roff support with submodule
* Roff: Add initial roff support (with roffcpp as submodule).
* Roff: Create viewer when importing roff files.
* Roff: add timing for roff import.
* Roff: precompute active cell indexes.
* Roff: parallelize using OpenMP.
* Roff: Handle exceptions when importing.
* Roff: improvements from review.
* Invert ordering

Co-authored-by: Magne Sjaastad <magne.sjaastad@ceetronsolutions.com>
2022-12-19 15:28:26 +01:00
Magne Sjaastad
38bfa9ef1f
#9588 Accumulate N cells for AABB tree 2022-12-19 15:24:53 +01:00
Magne Sjaastad
a423ecf95f
Several OpenMP improvements
Several optimizations based on profiling of 20M grid model. These fixes will improve the largest performance issues, but there are still more operations that can be refactored.

* OpenMP: Use in fault geometry generator
* OpenMP: Use when computing statistics for result values
* OpenMP: Use multithreading on fault detection
* Add RiaOpenMPTools
* VizFwk: Use openMP for texture generation
2022-12-19 13:49:03 +01:00
Magne Sjaastad
e4c0b45b15 Improve the help for a calculation
Add help text and plus AND example


Improve help pages for calculator
2022-12-14 08:57:08 +01:00
Magne Sjaastad
dfa1bc2cd0
Some fixes for new gcc/clang
Minor fixes for newer gcc/clang. These issues were seen when using ubuntu-latest (Ubuntu 22.04) on Github Actions.
2022-11-25 08:59:10 +01:00
Magne Sjaastad
82968ca1a9
Support linking of 2D intersection views
* Major refactor from RimGridView to Rim3dView
* Move view linker/controller functions to Rim3dView
* Add bitmask to define the content of a 3D view
* Link views based on matching content
* Enable bit mask operators at global scope
* Make it possible to use 2d intersection views as comparison views
* Fix crash when a view used as comparison view is deleted
* Move unlinking to Rim3dView

* Add options to snapshot only 3D views/plots as part of regression testing
* WBS plot: Improve default name, hide axis for some tracks
2022-11-24 10:46:54 +01:00
Magne Sjaastad
a577545212 Allow well target list to consume available space 2022-10-31 18:52:45 +01:00
Magne Sjaastad
e7a486c802
Improve curve naming for plot and use in RFT segment plots
* Improve plot naming for depth track plots
* Move template text replace to string tools
* More data available for object template text
* Set plot visible and define default object name template text
2022-10-12 12:41:08 +02:00
Magne Sjaastad
4a673b7cd5
Avoid crash when adding a grid case multiple times 2022-10-04 18:43:36 +02:00
Kristian Bendiksen
c2b5ab8d2c
#9307 Python: avoid assigning same port number to multiple grpc sessions
* Python: avoid assigning same port number to multiple grpc sessions
* Add retry count when checking for port number file
* Use grpc to find and use port number
* Add test used to start several instances of resinsight at the same time
Testing up to 50 instances works well

* Python: allow launch_port == 0 to assign port by GRPC in Instance.launch().
Also allow longer wait before failing the port number file reading:
it can take some time to launch when launching lots of instances at
the same time.
2022-09-26 14:19:21 +02:00
Magne Sjaastad
c734a22bd6
Improve user interface for axis linking
Several adjustments to UI as discussed with Håkon and Alireza.

* add link/unlink command to right-click menu of axis
* select curve in project tree when clicking on legend item
* make sure internal legend is always visible when toggling plot
* fix issue when using sub plot as data source for axis range
2022-09-09 16:06:56 +02:00
Magne Sjaastad
f3a3e04e1f
Fix missing update of export well name 2022-09-08 16:14:05 +02:00
Magne Sjaastad
945f1b1902
Use field auto values for summary plots
Use auto value concept in summary plot configuration. Default behavior is unchanged, but it is now possible to unlink a field to specify a custom value for this field.

Other changes:
* Add missing requirement for Svg in test application
* Use calculator icon and rename panel text
Use icon and relevant text to make it clear that the content in Calculator Data can be used for Grid Property Calculator and nothing else.
* Add example with scoped enum and auto value
* Use enum value starting av 10 to make sure enum values (not option item index) are working as expected
2022-09-05 14:12:49 +02:00
Magne Sjaastad
4cd38d7daf
Simplify access to RimMainPlotCollection
* Add current() to RimMainPlotCollection to avoid include of RimProject
* Remove "segment" prefix
* Reload data when RftCase changes
2022-08-19 14:30:25 +02:00
Magne Sjaastad
c8f642d83a
Add rename case to summary and grid cases (#9204)
* #9203 Summary Case : Add rename to right-click menu
* Janitor: Move ID and description to private fields
* Eclipse Case: Add rename to right-click menu
* Rename feature
2022-08-18 07:12:23 +02:00
Jon Jenssen
013b735a0d Add default dock window layouts and support hiding dock widgets before running tests. 2022-08-11 12:13:25 +02:00
jonjenssen
a3c561b7e5
Get rid of "ghost" windows on startup. (#9171)
* Get rid of "ghost" windows on startup.
Removes hide all docking windows feature for now, to be replaced by a new implementation. Will probably break some tests due to this.
2022-08-09 16:40:50 +02:00
Kristian Bendiksen
a87e05035d #9102 Thermal Fracture: handle field units. 2022-08-05 13:45:31 +02:00
Magne Sjaastad
76edb49e89 #9126 Improve plot and curve handling for ensembles
Add append plots and append curves to context menu of ensembles
Make sure we create an unique color when adding multiple ensembles
2022-07-08 17:54:37 +02:00
Magne Sjaastad
e5cf5f4cf3 Improve history curve color and symbols 2022-06-27 19:25:27 +02:00
Magne Sjaastad
d854a3d3e7
Merge pull request #9063 from OPM/more-rft-fixes-01
More RFT fixes
2022-06-17 17:24:58 +02:00
Magne Sjaastad
ccbda23b96
Merge pull request #9048 from OPM/9047-performance-avoid-update-project
- Avoid update of project when creating new objects
- Added icon resource cache
- Avoid use of descendantsIncludingThisOfType()
2022-06-13 13:54:55 +02:00
Magne Sjaastad
d36bf11c62
Several performance fixes (#9026)
* #9023 Performance: Use count instead of for loop

* #9023  Analyzer: Cache vector names for categories

* #9023 Performance : Use cached ensemble analyzer

* #9023 Performance : Add min/max values to ensemble statistics

* #9023 Performance : Improve statistics calculator

* #9023 Performance : Use high performance toInt()

* #9023 Performance : Build summary addresses in parallell
2022-06-07 21:09:36 +02:00
Magne Sjaastad
95e9ef8bf1 Rename to RiaFieldHandleTools 2022-06-03 08:00:55 +02:00
Magne Sjaastad
2b8bab3bd8 #9011 Disable input controls controlled by automation
Disable fields controlled by automation and append label text with (overridden)
2022-06-03 08:00:55 +02:00
Magne Sjaastad
5e53f5687d Improve auto name for curves and plots
- use vector name as plot title if a vector and the associated history vector is present
- use short vector name as fallback for curve name
- use Plot N as fallback name for sub plot
2022-06-03 08:00:55 +02:00
Magne Sjaastad
c74701b687 Rename several child() and children() functions 2022-05-31 15:05:07 +02:00
Magne Sjaastad
01e670a3d8
Add copy/paste of Summary Multi Plot (#8942)
* Guard use of back() on empty vector
* Add "Show Data Sources" to ensemble realizations
* Update summary plot as summary curve collection is not visible in tree view
* Set selection manager root in RiaApplication
* Always close both main windows if present
* Add copy/paste of summary multi plot
* Add test for RiuMainWindow::instance() before use
* Remove duplicated code
* Multiple Tree Views : Use getTreeViewWithItem() to find correct tree view
* Minor UI adjustments
2022-05-23 14:25:53 +02:00
Magne Sjaastad
26f1387bc6 Improve plot manager behavior
Create plots for vectors with no grouping identifier
Do not invalidate GUI on selection changed
Use same name as in project tree
2022-05-22 21:49:34 +02:00
Kristian Bendiksen
c3dfd9ed26 Summary tools: fix crash in when destructing RimStimPlanModel 2022-05-20 14:51:26 +02:00
Magne Sjaastad
fa8ad53981 Regression Test : Add memory usage to regression test logging 2022-05-19 12:48:54 +02:00
Magne Sjaastad
f52acd9a64 #8893 Rename quantity name -> vector name 2022-05-10 08:17:41 +02:00
Kristian Bendiksen
4304bbbc48 Grid Calculator: refactor summary curve calculator and add grid calculator. 2022-05-09 15:36:27 +02:00
Magne Sjaastad
8daf25ffb3 Performance : Cache result of some string manipulation functions
These functions get called quite often, and popped up based on profiling.
2022-05-05 14:15:45 +02:00
jonjenssen
3de8010c2b
Source stepping and toolbar updates (#8866)
* Move layout options to separate toolbar
* Enable stepping on quantities, remove special history curve stepping for now
* Allow stepping ensembles and cases
* Add step next/prev and add new sub plot
2022-05-03 11:30:09 +02:00
Magne Sjaastad
93614ef272
Merge pull request #8791 from OPM/8790-rename-to-group
Rename summary references to "Group"
2022-04-07 21:06:40 +02:00
jonjenssen
3590c52cdc
Deprecate single summary plots and plot collections. (#8777)
* Deprecate single summary plots and plot collections. Replace functionality using summary multi plots. Clean up some code. Fix crash when trying to normalize an empty curve
2022-04-06 17:39:07 +02:00
Magne Sjaastad
6417daf167 #8773 Source Stepping : Realization cases are missing in some cases 2022-04-06 10:05:43 +02:00
Magne Sjaastad
9c987855f2 Merge remote-tracking branch 'origin/patch_2021.10.3' into dev 2022-03-28 09:06:38 +02:00
Kristian Bendiksen
86ea679871
#8652 Import Surface: Fix ts-file import with properties on Linux (#8730)
The file had DOS line endings (\t\n) which where not properly trimmed on linux.

Fixes #8652.
2022-03-25 14:16:25 +01:00
jonjenssen
8d3f41ded8
Merge pull request #8732 from OPM/summarymultiplot_updates2
Summary Multiplot updates
2022-03-25 11:39:12 +01:00
Jon Jenssen
560917a481 Rename NewSummaryPlot command to what it actually is - OpenSummaryPlotEditor command. Remove unused includes.
Move Single Summary Plots to bottom of tree and show them as Single Summary Plots.
2022-03-21 13:05:57 +01:00
Magne Sjaastad
0ca70249ae
Move defines to RiaDateTimeDefines 2022-03-14 09:18:48 +01:00
Magne Sjaastad
806a149809
Fix several deprecation warnings (#8657)
* Use constructor instead of nullptr for WindowFlags
* Use constructor instead of nullptr for Alignment
* Disable deprecation warning for QProcess
* Add string split method to RaTextStringTools
* Add caf.cpp used to manage Qt function deprecations
* Use position()
2022-03-11 13:24:01 +01:00
Magne Sjaastad
0e57cfe201 Memory Management : Adjustment and fixes
Add release of several static singleton objects
Fix several minor memory leaks
2022-03-03 14:39:41 +01:00
jonjenssen
208ae7692b
Merge pull request #8578 from OPM/summaryplot_fromdatavector
Summary Plot: create new plot from data vector tree nodes
2022-02-22 11:32:35 +01:00
Magne Sjaastad
5c72d31cc9
Improve well path target configuration (#8570)
Improve the scripting possibilities for well targets
Added tests and examples
2022-02-19 13:18:49 +01:00
Magne Sjaastad
6c92206893
Make curve drawing more robust (#8537)
* Janitor : Improve robustness

* Guard nullptr access

* Limit the curve points to incoming from/to curve point index range

Co-authored-by: magnesj <magnesj@users.noreply.github.com>
2022-02-11 13:18:36 +01:00
Magne Sjaastad
ef4eb63bb9 Janitor: Clean up includes 2022-02-07 09:55:11 +01:00
Magne Sjaastad
d5b17976ed
Merge pull request #8459 from OPM/8458-summary-drop-target
Closes #8458
2022-01-21 14:32:51 +01:00
Magne Sjaastad
b0470d38ee #8463 Plotting : Add command line parameter to show 2D main window 2022-01-21 07:48:15 +01:00
Magne Sjaastad
40d59b7bdc Regression Test : Make it possible to override plot engine
Add GUI to override plot engine to either Qwt or QtCharts in regression test dialog
2022-01-20 14:34:34 +01:00
Magne Sjaastad
e203c76099
#8425 Summary Multi Plots: Add grouping on wells, groups, ...
* #8425 Multi Graph : Support grouping on object name
* #8425 Multi Graph : Improve creation of new graphs
* #8425 Multi Graph : Improve default tick mark count
* Handle history and non history as identical headers
* #8425 Multi Graph : Increase space below a graph
2022-01-10 14:51:31 +01:00
Magne Sjaastad
3c35244809
#8420 Janitor: Remove empty parameters in initialization macros 2022-01-07 08:31:52 +01:00
Magne Sjaastad
442abfea05 Janitor : Guard empty string 2022-01-06 15:49:20 +01:00
Magne Sjaastad
4d21f90bf9
Add summary multi plot
Improve robustness related to update of Summary Plot Manager

Add RimSummaryMultiPlot
Move shared code into RiaSummaryStringTools
Added "Create Summary Multi Plot" to menu of MultiPlot in project tree
2021-12-23 09:30:36 +01:00
Magne Sjaastad
5fcb81980d #8310 Summary Plot Manager : Add data source filtering 2021-11-19 15:42:26 +01:00
Magne Sjaastad
c945166e81 Janitor : Remove obsolete code 2021-11-19 15:42:26 +01:00
Magne Sjaastad
2a65636ba3 #8250 Use variadic macros and remove obsolete parameters 2021-11-14 15:26:09 +01:00
Kristian Bendiksen
53f102ee55 Stim Plan Model: Handle pressure values in field units. 2021-11-08 09:51:22 +01:00