Commit Graph

617 Commits

Author SHA1 Message Date
Magne Sjaastad
ee4c8362e5 Make sure eclipse case is opened before creating contour map to avoid crash 2023-11-10 09:01:28 +01:00
Magne Sjaastad
39fc9d5c36 Add support for grid calculations as data source for statistics
- add data source selection, either Case Property or Grid Calculation
- add Time Step Selection, can be used for both dynamic case properties and Grid Calculations
- optionally release grid calculation data when statistics is computed
- recursive grid calculations is supported
2023-11-08 08:39:04 +01:00
Magne Sjaastad
7eb3e98bb2 Optionally apply a grid calculation on all grids 2023-11-07 19:14:58 +01:00
Magne Sjaastad
2069ad55cf Refactor RimSummaryAddressModifier
Use std::variant to wrap curve and ensemble curve set.
Move some code into RimSummaryAddressModifier
2023-11-06 10:20:22 +01:00
Magne Sjaastad
12f24af154 Remove obsolete source stepping code
After merging the cross plot with the summary plot, the sources stepping can be simplified. Remove obsolete sources stepping code, to prepare for other source stepping issues.
2023-11-06 10:20:22 +01:00
Magne Sjaastad
4f25fb4463 Create multiple RFT plots based on the selected RFT plot
Show a dialog with all available RFT wells, and let the user select from this list. Create a copy of the RFT plot, and replace well name in the copy.
2023-11-06 10:10:22 +01:00
Magne Sjaastad
a91afff937 Make sure axis is set correctly when appending plots
The plots are duplicated, and the axis objects are referenced using ptrField. Make sure resolveReferencesRecursively() is called after the plot is inserted into the project tree.
2023-10-30 11:20:21 +01:00
Magne Sjaastad
cb7fe4fae5 Valve Import: Avoid duplicated import 2023-10-20 15:43:18 +02:00
Magne Sjaastad
bc7ec5f40c Fishbones : Add support for creating three different parameter sets 2023-10-19 14:49:42 +02:00
Magne Sjaastad
0ec5913024 Create Cross Plot: Improve text and add menu separator 2023-10-19 14:49:42 +02:00
Magne Sjaastad
5f0f483025 Show Plot Data: Add special handling for well log plots
Well log plots do not derive from RimPlot, add special handling.
2023-10-19 07:50:02 +02:00
Magne Sjaastad
f763f73ba3 Regression Curves: Use a contrast color for the regression curves
Use a list of predefined colors, and select the color with the larges RGB difference to the source curve. This will ensure that we avoid ending up with fully white or fully black curves, unable to see.
2023-10-19 07:50:02 +02:00
Kristian Bendiksen
8930b5b32d #10728 Fractures: add new conductivity in fracture mode to approximate Reveal behavior 2023-10-18 18:30:18 +02:00
jonjenssen
7494302275
Fault Reactivation updates (#10727)
* Generate reservoir element sets
* Add support for materials
* Add local coordinate system support for exported model
2023-10-18 09:10:08 +02:00
Magne Sjaastad
0a40e24851 Disable IO for RicPasteAsciiDataToSummaryPlotFeatureUi preview text field 2023-10-13 16:31:14 +02:00
Magne Sjaastad
4a3cdc4e94
Avoid use of time_t when using sliders in GUI
* Avoid use of time_t when using sliders in GUI
Sliders use int as internal representation of values, and time_t can cause overflow
2023-10-12 10:02:58 +02:00
Magne Sjaastad
cdda7480f3
Show Plot Data missing for some plots
* Add plotContentAsText() to bar chart builder
* Add show plot data to analysis plot
* Refactor analysis plot
* Enable context menu in Analysis Plot
* Add show plot data for general RimPlots
* Show plot data for correlation report in three separate text dialogs
2023-10-11 08:54:52 +02:00
Magne Sjaastad
51fe80b897 Create cross plot menu from list of addresses in preferences 2023-10-09 13:28:36 +02:00
Magne Sjaastad
445672cbb2 Remove use of obsolete cross plot code
Remove obsolete summary cross plot classes and features
2023-10-05 07:47:47 +02:00
Magne Sjaastad
10189da362
Fix display of intersection lines in 3D view
* 10675 Fix missing intersection line geometry
* Change to list of visible surface intersection lines
* Enable surface intersection band for any intersection
* Show labels for intersection curves in 3D

The polylines are defined in the display coordinate system without Z-scaling. The z-scaling is applied to the visualization parts using Part::setTransform(Transform* transform)
The annotation objects are defined by display coordinates, so apply the Z-scaling to the coordinates.

* Improve naming of surfaces
* Use scaling factor of 1.0 for flat intersection views
2023-10-03 09:04:46 +02:00
Magne Sjaastad
21843820e6
Update clang-tidy.yml
* Make sure clang-tidy action use .clang-tidy config file
Use add-paths to instruct create-pull-request to a sub folder to avoid diff from Qt and vcpkg

* Use empty() in macro to avoid clang-tidy warning
* Add NOLINT to CAF_ASSERT
* Add NOLINT to cvfAssert
2023-10-03 09:04:08 +02:00
Kristian Bendiksen
8df4dd42eb Refactor: rename RimWellLogFile to RimWellLogLasFile 2023-10-02 16:04:53 +02:00
Kristian Bendiksen
d177491843 #10648 Refactor summary reader: return std::vector<double> instead of taking ptr. 2023-10-02 09:16:52 +02:00
Magne Sjaastad
263e39b97b
Add regression curves to ensemble statistics curves
* Add statistics enum
* Support ensemble statistics curve as data source for regression curves
* Allow creation of regression curves from statistics curves
* Make sure regression curves are updated after source curves
* Add state to use full or user defined range for regression source data
* Add isRegressionCurve
* Make sure source stepping works when regression curves are present
2023-09-30 11:07:23 +02:00
Kristian Bendiksen
9832604c66 Refactor: Rename RigWellLogFile to RigWellLogLasFile. 2023-09-29 14:48:20 +02:00
Kristian Bendiksen
78becc81ac Fault Reactivation Export: print pore pressure per step to file. 2023-09-29 14:43:48 +02:00
Jon Jenssen
33670df887 Add support for user defined index filters, makes some debugging tasks easier 2023-09-29 09:56:30 +02:00
Magne Sjaastad
d34bb8a64c
Improve ensemble cross plot statistics
* Support cross plot in plot templates
* Fix source stepping for cross plots
* Show cross plot data in "Show Plot Data"
* Use bin size and realization count when computing cross plot statistics
2023-09-28 14:32:32 +02:00
jonjenssen
0ccddcb836
Fault Reactivation updates (#10665)
* Support getting pore pressure for all nodes
* Misc fixes and updates in fault reactivation UI
* Disable fault reactivation result unless you load an odb from a valid working folder
2023-09-27 15:15:17 +02:00
Kristian Bendiksen
74a656f47c Fault reactivation export: improve error handling. 2023-09-27 12:41:35 +02:00
Kristian Bendiksen
959c9d48fa #10649 ApplicationLibCode: Use collection.empty() instead of comparing with size 2023-09-27 10:16:37 +02:00
Kristian Bendiksen
8e5788bb24 Reveal: dump StimPlan XML for debugging thermal completions. 2023-09-25 09:33:37 +02:00
Kristian Bendiksen
636535e720 Fault Reactivation Model: include local coord rotation in INP export. 2023-09-20 19:55:39 +02:00
Magne Sjaastad
146412c600 Add support for summary cross plot curves in summary plots 2023-09-20 13:58:22 +02:00
Magne Sjaastad
b87fa0bc74 Support cross plot curves in plot templates 2023-09-20 13:58:22 +02:00
Magne Sjaastad
f07a5db559 Use post fix Y in RiaSummaryCurveDefinition 2023-09-20 09:58:48 +02:00
magnesj
0cd6cdd67e Fixes by clang-format 2023-09-20 09:58:48 +02:00
Magne Sjaastad
806f367566 Rename to SummaryCategory 2023-09-20 09:58:48 +02:00
Magne Sjaastad
e8aada80c5 Rename to plotAxis() 2023-09-20 09:58:48 +02:00
Magne Sjaastad
7d7442c3f8 Sort AICD templates based on ID 2023-09-19 19:58:08 +02:00
jonjenssen
5d3fb8ceb9
Fault reactivation (#10624)
Update result to generate well paths based on information from model generator. Store settings in JSON file.
Add method to access local coordinate system definition
2023-09-19 18:03:36 +02:00
Magne Sjaastad
70dcb48830 Fix Import Summary Cases Recursively
Make sure that the loaded summary cases are added to the project.
2023-09-15 13:59:37 +02:00
jonjenssen
bd7f34f835
Fault Reactivation Modeling updates (#10602)
* Add timestep selection
* Add import geomech model to context menu
* Add command for running fault reactivation 
* Change order of nodes for exported elements
* Add command to quickly show model in 3D view
2023-09-14 08:29:28 +02:00
Magne Sjaastad
13b4c19bbb
Import of AICD valve definition from text file
* Add readKeywordContentFromFile
* Add import of AICD values from Completor and Eclipse
2023-09-12 19:45:32 +02:00
Kristian Bendiksen
1899184a41 Janitor: Remove deprecated method. 2023-09-11 17:39:38 +02:00
jonjenssen
a2632982b5 Code updates 2023-09-06 13:51:59 +02:00
Jon Jenssen
3817cea3cf Fix grid generation.
Add model thickness parameter.
Add support for reloading INP files from recent files
Add working directory field to fault reactivation model and put INP export there.
2023-09-06 13:51:59 +02:00
Kristian Bendiksen
6845c09c0c Add command for exporting INP files. 2023-09-06 13:51:59 +02:00
Kristian Bendiksen
107a74bd68 GeoMech: Add Abaqus "inp" file reader. 2023-09-06 13:51:59 +02:00
jonjenssen
32326bfa9b Add fault reactivation modeling 2023-09-06 13:51:59 +02:00
jonjenssen
e5fa4ae8c4
Support filtering on element sets (#10570)
* Add support for filtering on element sets in geomech cases
2023-09-04 15:48:08 +02:00
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
1ed7dcbd4a Add surface collection to RimTools 2023-08-31 13:50:39 +02:00
Magne Sjaastad
b1157436fe #10523 Export sector model: Support more result categories
Allow export of GENERATED and INPUT_PROPERTY in addition to STATIC.
2023-08-21 13:58:58 +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
jonjenssen
4c1947af11
Automatically create a new seismic view if no 3d views already exists when importing seismic data. (#10510) 2023-08-16 07:10:48 +02:00
Magne Sjaastad
ef2de3e5c6
Support well path geometry for summary RFT data
* Compare well path names when matching sim well names
* 10501 Make it possible to use well path geo when plotting summary RFT data
2023-08-15 13:37:23 +02:00
Magne Sjaastad
0bada502fb 9498 Add parsing of network name
Use merged commit
2023-08-14 11:20:01 +02:00
Magne Sjaastad
267aee9d91 Reorder and simplify resampling tabs for summary data
Show year as the left most tab, and minute as the right most tab.
2023-08-11 13:54:03 +02:00
Magne Sjaastad
9677a18bfa Use copy icon to copy text to clipboard 2023-08-11 13:54:03 +02:00
Magne Sjaastad
45be0e6d6d
Use precompiled headers to speed up build
* Add precompiled headers to Commands, and improve usage
* Use precompiled headers on github action
2023-08-11 12:41:40 +02:00
jonjenssen
2172199999
Add seismic 3d view (#10472)
* Show seismic, surfaces, annotations and wellpaths in new view not requiring a grid loaded first.
2023-08-07 16:35:59 +02:00
Kristian Bendiksen
5bf2c2a89d #10367 Janitor: Remove unneccessary 'this' pointers 2023-08-07 13:38:27 +02:00
Magne Sjaastad
35e2e43c3a Fix crash if main window is null
When launching a script, the main window must be created. It is the Process Monitor that received info from the process and passes the text to process monitor and Message Panel.
2023-07-07 16:11:35 +02:00
Magne Sjaastad
1da509166a
Improve CmdFeature base class
Add default implementation of isEnabled() and add const
2023-06-26 14:28:46 +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
1b85f628a0 Decline Curves: zoom to include forecast data when creating curves 2023-06-16 16:49:40 +02:00
Magne Sjaastad
06b5c9afbf
Adjustments for release
* Add notification of parent object when multiple objects are updated

* Make sure unchecked curves are removed from track

* Use object names instead of "Sub Items" when possible

* Set default simulation well visualization to top of reservoir

* Show plot window after plot is created

* Allow setting plot rendering flags

* Add more plots for update when clicking in 3D view

* Seismic Difference: Fix typo for poly line data extraction

* Version RC_5
2023-06-16 09:27:35 +02:00
jonjenssen
803b67506a
Add basic support for calculating and showing seismic difference (#10377)
* Add basic support for calculating and showing seismic difference
2023-06-12 11:56:48 +02:00
Magne Sjaastad
91762aaeb1
RC3 adjustments
* Update icons for summary and ensemble templates

* Icons for regression and decline

* #10374 LineEditor: Hide the placeholder widget when not used

* #10376 Assign a case ID to delta summary case

* Do not show decline range text in plot
2023-06-10 16:30:34 +02:00
Kristian Bendiksen
3b4244bdbf #10360 Decline Curve: allow selecting subset of time range
Fixes #10360.
2023-06-08 12:50:54 +02:00
Kristian Bendiksen
f1794abff2 #10358 Regression Analysis: Allow selecting subset of time range for regression 2023-06-08 12:50:54 +02:00
Magne Sjaastad
76102a8396
Maintenance issues
* Improve toggling of checked state of sub items
Toggling state is only supported for objects in an array. For example, this will ensure that faults are toggled without altering the fault result object.

* Use gray instead of black for icons

* #9719 Use delete instead of deleteLater to avoid visual artifacts
Artifacts are seen in the Property Editor related to obsolete group boxes. This seems to be related to deleteLater().

* Improve text in menu when toggling sub items

* #10011 Make sure all grid cases are visible in RFT data source

* #10354 Show more info when hovering on curves in summary plot

* #10355 Copy model text info in 3D view to clipboard

* Make sure cell filter option is propagated to new field
Make sure the previous value of  m_showFaultsOutsideFilters_obsolete is propagated into m_applyCellFilters

* Fix wrong spelling when using of stylesheet color
2023-06-06 15:45:54 +02:00
Magne Sjaastad
bcc00adea1
Add edit button to grid calculation expressions
Implement add calculation from grid cell result
2023-06-05 09:07:14 +02:00
jonjenssen
17f09878d2
Enable filters for curve intersections (#10329)
* Enable cell filters
* Enable property filters
* Clean up fault collection interface and use similar setting for controlling filters as in intersection collection
* Enable cell/property filters on geomech intersections
* Enable cell and property filters for box intersections
2023-06-05 07:33:04 +02:00
Magne Sjaastad
576156763a Add missing update to intersection box
Make sure that default values set in the Rim-object is propagated to UI
2023-06-03 15:01:06 +02:00
Magne Sjaastad
709457f7c2
About text: Add Python version
#10224 About text: Add Python version
2023-06-02 14:04:23 +02:00
Magne Sjaastad
a9f412b1f6
Maintenance fixes
* Remove light mode from theme selection
The light mode is not working well, and was intended to be used when exporting to pdf from dark mode.

* Allow direct edit of summary case name
The name for a summary case can be automatically created. If the user starts to edit the name manually, set the name option to Custom. Make the descriptionField available as not read-only, then it is possible to edit the name directly in the project tree using F2 or double-click.

* Allow drag of ensembles
* Add support for drag/drop of well segments
* Add support for well segment number stepping in toolbar
2023-05-30 15:56:19 +02:00
Jørgen Herje
5975fe6765
Rename RimWellLogDiffCurve to RimWellLogCalculatedCurve and additional improvements
* Rename from DiffCurve to CalculatedCurve and add operators selection
* Add option to select depth source for resampling in CalculatedCurve

- Select source for depth values for resampling
- Depths from first curve, second curve or union of these
- Added unit tests for function creating union depth values and calculate value with selected operator.

* Guard divide by zero

* Adjust algorithm for union of depths

- Prevent duplicated depth values (no need for enter/exist of k-layer when resampling)
- Add threshold for depth distance
- Update unit tests
2023-05-27 10:30:03 +02:00
Magne Sjaastad
cca852ef1f
Adjustments related to user course
* #10285 Grid Cross Plot: Fix group highlighting
* #9329 Make Show plot data more robust
* Do not show the curve color tag for grid cross plot curves
* #10310 Add tab to show plot data for well log curves
2023-05-26 11:47:26 +02:00
Magne Sjaastad
b7420ebc70
Use rock type colors when "Facies" is imported 2023-05-26 11:26:22 +02:00
Magne Sjaastad
2776012bce #7134 Create modelled well path from well path
From an existing well path, find some coordinates along the geometry and create a new modelled well path based on these coordinates.
2023-05-23 12:13:53 +02:00
Magne Sjaastad
40080a99de
9978 Improve UI for long drop-down lists, use tree selection more
* Improve tree selection editor
- always call defineEditorAttributes
- use heightHint in editor attributes 
- use tree selection editor as default editor for std::vector

* Use tree selection editor instead of list selection editor
List selection editor must be used when editing std::vector<cvf::vec3d> and similar. Replace other use of list selection editor with tree selection editor.

* Set checked state based on text string for integer only models
For models with only integer values, use text string to define the items to be selected. The full list will always be visible, and the checked state will be updated when editing the filter text.

Example: "1, 5-7" will set items 1, 5, 6, 7 checked and all other items unchecked

* Minor fixes
- Set placeholder text after content is added (to ensure correct data type)
- Fix check of integers. `canConvert<int>()`returns true for both QString and int. Thus convert to string and then check for int conversion.

* Activate filtering when unchecking all items in list with only integers
- Reactivate filtering when uncheck of all items for a list with only integer values (to keep consistency between filter and list)
- Update function name for clarity

---------

Co-authored-by: Jørgen Herje <jorgen.herje@ceetronsolutions.com>
2023-05-22 15:44:37 +02:00
Jørgen Herje
2247dced58 Update naming and imports
- Correct naming
- Update includes
2023-05-22 15:42:24 +02:00
Jørgen Herje
b83fe73395
Displacement curves fault faces (#10243) 2023-05-22 11:37:57 +02:00
Kristian Bendiksen
a3090c5ead #10268 Regression Analysis: improve default look of curve 2023-05-19 20:00:12 +02:00
Kristian Bendiksen
c23cdee17d #7206 Add regression analysis. 2023-05-16 09:42:18 +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
Magne Sjaastad
5ee764af48
Refactor result definition 2023-05-11 08:37:58 +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
Magne Sjaastad
3bca1507b2 Fix launch of unit tests 2023-04-28 15:20:02 +02:00
jonjenssen
f4cf143401
Import SEG-Y files by converting to VDS (#10175)
* Add seg-y import GUI
2023-04-27 01:32:59 +02:00
Magne Sjaastad
0907f57de9
Use target_include_directory
* Fwk: Avoid use of include_directories
* Remove target_include_directories from Commands
* Refactor cmake includes
- Avoid using include_directories, and use target_include_directories.
- Use add_subdirectory directly from main cmakefile, do not use in ApplicationLibCode.
2023-04-25 13:14:26 +02:00
Kristian Bendiksen
26f13012b4 #10128 Reveal Summary: add ensemble import. 2023-04-25 09:42:18 +02:00
jonjenssen
d8def3d986
OpenVDS should always be used (#10166)
* OpenVDS should always be used, remove optional defines
2023-04-24 18:23:31 +02:00
Jørgen Herje
d7b2da35b0
Fix bug selected well log file for source well (#10159)
Did not use selected well log file in dialog for source well when generating depth adjusted las file - chose first las file available for source well.
2023-04-24 13:31:19 +02:00
jonjenssen
13dd472a0d Workaround to make sure seismic data item gets selected after importing seismic data. 2023-04-22 00:39:47 +02:00
jonjenssen
0e7cf49b17
OpenVDS seismic access (#10145)
Add OpenVDS support for reading seismic data from VDS files
2023-04-21 16:38:04 +02:00