- Incorrect sorting was due to incorrect detection of first and last timestep for vector data.
- First/last timestep is for value above 0.0 and not threshold.
* #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>
* Use unique_ptr
* Improve default assignment of curve appearance
* Improve display of color tags in tree view items
* Select curve or ensemble instead of plot
* Only change curves connected to a Rim-object
* Improve color management for ensemble curves
Use a base color for statistics curves and set realization curves transparent
Make sure new curves are assigned a unique color
Harmonize how dropped addresses are handled
* Update all tags always
The update of tags for a subset of tree nodes is currently broken. Always update all tags.
* Add const
* 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
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
* Move RigWellResultFrame implementation into separate file
Update/correct includes accordingly
* First step of moving attributes from public to private
- Move public members to private and create interface
- Single public member remains due to strong dependency on usage of reference and reference to its object public members
* Second step of moving attributes from public to privatee
- Remove usage of reference directly to attributes. Interface with copy and set.
- Moving attributes in RigWellResultFrame and RigWellResultBranch
* Move class RigWellResultBranch into separate file
- Calculate by visible cells: Calculate flow diag by use of visible cells in 3D view (already existing functionality).
- Filter producers: select producer wells based on visibility in 3D view. Synch connected injectors - even if they are not visible in 3D view.
- Filter injectors: select injector wells based on visibility in 3D view. Synch connected producers - even if they are not visible in 3D view.
When starting resinsight from a working folder, the project file paths can be relative to this folder (current working folder). If files are referenced relative to current working folder, the file references can start with either '..' or '.' Make sure that these paths are left unchanged.
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
- 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>
* #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.
* #9963 Rft reader: Search for DATA file when required
WSEGLINK is used to establish the branch topology for MSW wells. Search and read WSEGLINK data when segment data is requested by the user. This can be a time consuming operation.
Avoid doing this search for standard RFT plots.
* Make sure that single summary curves are displayed correctly
* Make sure single summary curves are visible in the plot
When multiple ensemble curve sets are toggled on/off, it is required to do a full RimSummaryPlot::loadDataAndUpdate() that will call RimEnsembleCurveSet::updateCurves() on all ensembles in the plot. This can be a heavy operation, but will happen only once.
* Add CON*RAT track for tubing branch
* Set long summary vector name as default, and allow both in curve name
* Use line shift if multiple quantities are present on axis title
Insert line shift if multiple quantities are present, otherwise insert space between individual vector names and the unit text.
* Move Groups between Field and Wells
* Bump version
* Show segment plots in Well Log Plot collection
* Improve menu text for operations related to segment plots
* Show reservoir rates for annulus and device
* Make sure curve objects are visible in the Project Tree
* When importing the first summary case, expand case in project tree
* Bump version
* Add support for word wrap in checkbox label
* QLabelEditor: Add word wrap and support for wide label
Add support for one label widget spanning the area usually consumed by a label widget and an editor widget.
* Use word wrap in summary calculation dialog
* Make sure text for multiple wells in same grid cell is displayed correctly
* Improve selection of result in Advanced Snapshot Export
* Restore the main window that was on top when project was saved
* Trim string to make sure '/' is exported with no space in front
* #9872 RFT-plot: Make colors stable for curves in RFT plots
* Set version to RC_02
* #9923 Call loadDataAndUpdate() after visibility of curves is updated
This will ensure that all zoom ranges are recalculated based on visible curves.
* #9923 Put new segment plots in RFT Plot collection
* #9923 Add "Create Rft Sement Plot" to RFT plot collection
* #9923 Make sure the main window is displayed when required
Make sure the main window is opened and views updated when a grid model is opened from a summary case.
* #9923 Make sure fieldChanged is triggered when required
Exclude field having the target state. If these fields are included, the one and only call to setValueWithFieldChanged() can contain a field with the target state value. When setting a value to a field with the same value, nothing happens and the UI will get an inconsistent state (some curves toggled off are still visible in a plot).
When importing new wells, consider all wells when connecting multi segment wells
Make sure that import of individual well paths will give the same ordering as importing all wells in a single operation.
* Move members to private in RigWellResultPoint
* Create simulation well path geometry using well topology
* Add separate MSW well pipe centerline computations
* Review comments
---------
Co-authored-by: magnesj <magnesj@users.noreply.github.com>
* 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>
* Add realization number to mouse over text for Ensemble RFT
* Refactor Curve Info Text Provider functionality
- Refactor provider implementation, to separate RiuWellLogTrack from the point tracker and text provider.
- Move creating of point tracker outside of RiuWellLogTrack.
- Makes it possible to override/write new CurveInfoTextProvider implementation when needed.
* Add guards for nullptr
- Added custom tickmark configuration in time axis properties for `Time Mode = Date`
- Refactor code to separate handling of time axis properties and regular axis properties in RimSummaryPlot
- Add method for setting major ticks by use of list for RiuPlotWidget interface.
* 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
* Fix eternal loop causing the application to hang
* Revert changes related to file well path introduced in 70bb22
* Use some iterations to find representative cells for computation of cell sizes
* Compute characteristic cell size based on active cells
* Compute cell face normal based on a suitable active cells
Using all cells as basis for face normal is fragile. Some models have highly distorted/twisted cells, but all active cells should be geometrically more stable.
* Remove obsolete code
* Fix path modification of a relative folder
Replace start token '.' with file path to the project file to make sure that the path './wells/a-1h.dev' can be imported correctly.
* Add more logging when keywords are missing from import
- Set default frequency enum to relative frequency [%]
- Set current view selected in filter by 3D view visibility by default
- Add labels for statistics data
- Add UI to change number of bins in histogram
- Add control of font size of axis values and axis titles
* Update radial grid operations in submodule
* Optionally display cell center and cell corners when clicking on cell
* Add support for import of radial grids
* Modify node coordinates to match host cell
- Download of Ubuntu packages from Azure is unstable. Add mirror sites to improve reliability.
- Improve use of clang-format and include source code changes
Move AppEnum init to RifDataSourceForRftPlt
Simplify constructors for RifDataSourceForRftPlt
Rename enum names in RifDataSourceForRftPlt::SourceType
Add missing pressureDepthData in RimDataSourceForRftPlt
* 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
- Make default flag = false, thus highlighting must be activated
- To prevent unwanted logic for new RimPlot objects
- Activate highlighting for RimSummaryPlot, RimVfpPlot and RimCorrelationMatrixPlot
- Add font size settings
- Move legend to right side of plot
- Set default selected time steps to time step count = 10
- When excluding time steps, duplicates rates from next valid time step onto excluded time steps
- Allow time step selection "Show all time steps" or "Time step count" for subset of time steps
- Allow excluding on the active set, i.e. all or subset, of time steps
* Remove reference well feature from plot objects
* Move Reference Well functionality to WellLogExtractionCurve
* Reset reference well selection if new selected well path equals ref
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.
- Plot for showing well allocation over time.
- Select time range
- Option to exclude time steps in selected range
- Possible value types: Flow rate, flow rate percentage, flow volume, accumulated flow volume, accumulated flow volume percentage
- Group small contributors into group "Others"
* Added fmtlib to LicenseInformation.txt
* Add license info for roffcpp
* Regression Tests: Guard use of invalid bounding box
* Regression Test: Check if file is present before opening
* 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
* Select view when MDI window is activated
* Update linked views when property filter is linked
* Do not ask for restore of cell filters if none are present
* Update tree view when linking of property filters is disabled
* Add check box for multiple results in Result Info box
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
NB! This fix will update the location of well target at sea level, and can potentially change the MD from sea level to first user defined well target. This will affect completions defined for the modelled well, as they are defined by MD.
* #9439 Make MD more predictable when toggling sea level target.
* #9439 Avoid updating well path tangents when toggling sea level target
* Disable IO of well target at sea level
Co-authored-by: Magne Sjaastad <magne.sjaastad@ceetronsolutions.com>
* Add checkbox for enable/disable usage of ref well for curve
- Individual control of utilizing reference well selected on plot-level.
- Default use state = true
- Make ref well path read only
* Upgrade adjustment algorithm to map values from ref well
- Map values from reference well into selected well
- Linearize depth values between top and bottom of k-layer.
- Neglect values and depths outside of common k-layer region
- Handle smoothing of curves after mapping
* Set curve name based on use ref well flag
* Use auto name for parameter track curves
Co-authored-by: Magne Sjaastad <magne.sjaastad@ceetronsolutions.com>
* #9551: Guard nullpointer if no RFT data is present
* Hide RFT in tree view if no RFT file is found
* Avoid display of 3d main window when importing a summary case
* Use specific grid import feature instead of general file import feature
* Update titles after dropping vectors into plot
* Do not replace _Name variables
* Make sure signals are wired when opening a project file
* Add auto name field and set default on
* Remove includes from header files
* Copy and overwrite property filters when linked
When linking property filters between different cases, the property filter settings are copied and the property filter is evaluated per case. The previous implementation worked only for a single case.
* Move field to private
* 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
* Janitor: Improve getter for RigActiveCellInfo::gridActiveCellCounts.
* #9493 Grid Calculator: calculate on only active cells.
* #9493 Grid Calculator: filter with active cells.
* Fix calculation for input grid cases
Co-authored-by: Magne Sjaastad <magne.sjaastad@ceetronsolutions.com>
Fractures: Add UI for user-defined perforation length for az fractures
Add user defined perforation length for azimuth fractures.
Janitor: remove duplication
The geometry was not properly cleared when on legend changed, and would lead to
crash when number of legend levels decreased.
Janitor: Fix two crashes when loading repro case
* Allow linking of property filters across cases with same IJK size
* Recalculate when grid is replaced
Find dependencies between calculations and order them accordingly
* Make sure property filter is updated when completion type is cleared
* Clear geometry cache in views to make sure geometry is recreated
* Calculate required input parameters to completion type calculations
* Recompute values when depth changes
* Use full name for grid case view
* FIx signed / unsigned issue
* Support drag/drop of file names into Main Window
* Add function to check if two grid cases are of equal size
* Result Info: Show cell result text for all linked views
* Improve how to specify cells to be included in calculation
- move view filter to calculation
- improve how to assign values to non-visible cells
- avoid computation between grids of different size
Closes#9482
* RFT curves: Disable auto color by default
* RFT curves: Fix wiggling legend caused by too many plot updates
* RFT Curves: Search multiple layers for CONFAC data
* Move plot orientation to Depth Axis, Advanced group
* Result Info: Use monospace font
* #9447 Result Info: Add support for multiple properties when clicking on a cell
* Improve alignment in generated text
* #9435 Do not auto update curve appearance during source stepping
* Update toolbar after vector is dropped into empty plot
* Use summary vector text in RiaSummaryDefines
* Fix missing update of curve color when curve is highlighted
* Place copy of contour map in correct collection
* Allow linking of contour maps
* Improve handling of contour views and 3D views
* Guard nullptr
* Guard assert seen on Linux
* Zoom all on contour map when unlinked to reset zoom
If a contour map is linked to a 3D view, the view can get distorted. Call ZoomAll to reset to sensible defaults.
* Remove default rainbow legend
* #9432 Clean file cache when all wells are deleted
* Key Events: Avoid eating Delete key events
Do not use a key short cut on menu actions that are always enabled. Will eat events from other actions.
* #9433 Well Path Import: Keep prefix when trying to match existing well path
* #9424 Show vector name in curve names when history vector is present
* #9426 Curve Legend disappears when curve is unchecked
* Remove duplicate call to visibilityChanged
* Remove unused code
* Hide contour plot collection when empty
* Update the project tree when a linked view is removed
* Make sure the window title is in sync with link state
* Do not use link state to find window tile ordering
* Make curve selection optional to avoid flickering in depth plots
* Replace undefined with zero for some curves
* Add spacing factor for min and max depth
- add CONGRAT
- add pressure track
- add CONFAC
- fix some plot layout issues
- Fix bug for first segment MD location
- Add default scale factor 1e-3 for gas curves
- Avoid inf values in some curves, seen in PRESSURE and CONFAC
- Use assignment in statements instead of std::get
* Opm Parser: Include PATHS when importing WSEGLINK
Add PATHS to supported keywords to be able to use include files with alias in file path.
* Move opm-parser-tests into OPM solution folder
* #9371 RFT Curves: Add scaling factor
* Make sure isUsingAutoName is guarded by project file date
* Rearrange font and legend group in property editor
- update project tree after plot is generated
- set default text tracker orientation to vertical
- call base class fieldChangedByUi to handle hiding of Stimplan plot
* 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
* Add curve name template and handling of string variables
* Mark autoName as obsolete field
* Use key-value map to populate variable values
* Add curve naming methods Auto, Custom and Template
* Add topology curves and default plot
* Improve visual appearance
* Update sub module opm-common
* Add support for INCLUDE keyword to allow parsing of include files recursively
* Search for *.DATA with fallback to *.SCH to automatically import WESEGLINK data
* Find annulus branch based on MD diff on segment start
* Stop growing device branch if segment starts at a lower MD than previous
* Adjust the max value for summary curves to get more space on top of plot
* Compute axis range before computing auto plot settings
* Use axis object name as key when computing aggregated min/max
* Guard infinite recursion for enableAutoValue()