Commit Graph
83 Commits
Author SHA1 Message Date
Kristian Bendiksen d8566b679f Rename RimFixedTrajectoryWellPath to RimPointBasedWellPath
- Renamed class from RimFixedTrajectoryWellPath to RimPointBasedWellPath
- Updated header and implementation files
- Changed PDM object display name to "Point-Based Well Path"
- Updated script keyword from "FixedTrajectoryWellPath" to "PointBasedWellPath"
- Modified CMakeLists_files.cmake to reference new filenames
- Updated all includes and instantiation references
- Applied clang-format-19 to modified C++ files
- Updated Python docstring to reflect new return type

The new name better describes the class purpose of creating well paths
from XYZ coordinate points. All tests continue to pass.
2025-08-29 16:28:30 +02:00
Kristian Bendiksen d2bed679e1 Rename wellpath_collection.import_fixed_trajectory_well_path() to import_well_path_from_points()
- Updated C++ GRPC interface method names and class names
- Renamed Python method in well_path_collection.py
- Updated all test functions and file names
- Renamed example file to match new method name
- All tests pass with the new method name

The method signature and functionality remain unchanged - only the name
has been updated to be more descriptive.
2025-08-29 16:28:30 +02:00
Magne Sjaastad 4135a743fe Release preparations
* Adds a bounds check on the node index to prevent accessing invalid memory locations.
This prevents potential crashes caused by out-of-bounds access when retrieving summary variable values.
* Updates warning message for incomplete deltas
* Plot based on a single realization from a file set ensemble is not restored correctly on project load
* Populate result addresses if no addresses are present
* Adds CNV_ (convergence) result name
* Avoid include of RiaResultNames.h in header file
2025-08-27 14:22:11 +02:00
Kristian Bendiksen 83ae9fb7ac #12569 Python: Add API for creating well paths from XYZ coordinates
Add import_fixed_trajectory_well_path() method to WellPathCollection that enables
creation of well paths from coordinate lists in Python. Implements feature request
for programmatic well path creation without file-based imports.

- Add RimFixedTrajectoryWellPath class for coordinate-based well paths
- Add GRPC interface for coordinate data transfer via key-value store
- Add comprehensive Python API with input validation and error handling
- Add example script importing well on Norne.
- Add 7 unit tests covering all functionality and edge cases

The API allows creating well paths like:
well_path = collection.import_fixed_trajectory_well_path(
    name="MyWell",
    coordinates=[[x1,y1,z1], [x2,y2,z2], ...]
)
2025-08-25 13:27:31 +02:00
Kristian Bendiksen b0483172b1 #12718 Add diameter and roughness specification for MD intervals
Implements interval-based diameter and roughness configuration for MSW completions
while maintaining backward compatibility with existing single-value approach.

- Add RimDiameterRoughnessInterval class for individual MD intervals
- Add RimDiameterRoughnessIntervalCollection for managing interval collections
- Extend RimMswCompletionParameters with interval-specific mode support
- Support both metric and field unit systems
- Provide validation and overlap detection for intervals
2025-08-21 08:48:43 +02:00
Kristian Bendiksen e58a8cd8cd #12773 Python: Add API for creating valve templates
- Add RimcValveTemplateCollection GRPC command with add_template method
- Support ICD, ICV, and AICD valve types with custom parameters
- Add setter methods for orifice diameter and flow coefficient
- Include Python tests and example demonstrating usage
- API: valve_templates.add_template(completion_type='AICD', orifice_diameter=7.3, flow_coefficient=0.2)
2025-08-19 08:35:45 +02:00
Kristian Bendiksen 13f6a57782 #12609 Python: Add functions to build valves from Python 2025-08-15 18:57:35 +02:00
Kristian Bendiksen e539170884 #12568 Python: add API for sampling given positions in a grid case 2025-08-08 08:58:31 +02:00
Kristian Bendiksen 464dd46ea9 #12568 Python: Add support for reading XYZ coords and inc, azi and dogleg 2025-08-08 08:58:31 +02:00
Magne Sjaastad 377d300767 #12719 Allow import of same well multiple times
Also exposes the well path collection object through the project object, and updates examples.
2025-08-08 08:56:15 +02:00
jonjenssen 09f180ee53 Add support for duplicating editable well paths from python 2025-08-04 15:25:05 +02:00
Magne Sjaastad 309c4af07e #12593 Simplify object methods exposed to Python 2025-06-16 11:05:00 +02:00
Magne Sjaastad 25346e6cfe Move RigSurface classes into Surface folder 2025-05-21 18:09:22 +02:00
Kristian Bendiksen a5ce90083d Corner Point Case: create view only when in GUI mode. 2025-05-20 20:39:07 +02:00
Kristian Bendiksen 1a55fa11c3 #12459 Add regular surface domain object. 2025-05-20 20:39:07 +02:00
Kristian Bendiksen 752d4efc42 Update error handling in Rimc* classes. 2025-05-12 17:31:48 +02:00
Kristian Bendiksen 135695fcb5 #5556 Refactor python error handling. 2025-05-12 17:31:48 +02:00
Magne Sjaastad 3c5221236a Use lambda functions and simplify createSummaryCasesFromFiles 2025-05-12 13:04:10 +02:00
Magne Sjaastad 3c7e8ee120 Refactors summary case creation into a tool class
Moves the summary case creation logic from the `RicImportSummaryCasesFeature` class to a new `RiaEnsembleImportTools` class.
2025-05-12 13:04:10 +02:00
Kristian Bendiksen 67ebdc5f07 Polygon: make polygon from python editable. 2025-05-07 12:07:31 +02:00
Kristian Bendiksen e5dc280ce0 Add python api for creating corner point grid. 2025-05-07 12:07:31 +02:00
Kristian Bendiksen dd2fdad5dd #12342 Python: Add api for creating polygon
Fixes #12342.
2025-04-10 17:58:59 +02:00
Magne Sjaastad 6b332269b4 Add scripting to fishbones (#12286)
* Improve python code generation tests
* Add setValveLocations
* Move code into RimFishbonesDefines
* Add scripting to fishbones
* Add scripting methods for fishbones
* Add example and test
2025-03-25 08:31:08 +01:00
Magne Sjaastad 04cd253fc6 Move files
Fix includes
2025-02-13 15:12:24 +01:00
Magne Sjaastad ca0179d118 Remove obsolete CMake statements
When using modern CMake and Qt6 we can remove obsolete source_group() and QT_MOC_HEADERS
2025-01-28 07:01:42 +01:00
Magne Sjaastad ddefd39fc2 Python: Make more well completion parameters available
Add access to all MSW parameters in Python : "msw_settings = well_path.msw_settings()"
Make all parameters of the well completion object available in Python.
2024-11-25 09:38:23 +01:00
Magne Sjaastad 7677466d29 Make sure plot create from Python is visible 2024-10-30 13:54:03 +01:00
Magne Sjaastad df091336e0 Move summary tools into separate folder 2024-10-22 07:28:43 +02:00
Kristian Bendiksen e9c46c5cec Rename RimSummaryCaseCollection to RimSummaryEnsemble. 2024-07-30 08:55:12 +02:00
Magne Sjaastad 78759feb15 Update GUI editor if a new summary vector is set created
Make sure the user interface is updated when summary data is set from Python using summary_case.set_summary_values
2024-03-22 08:46:28 +01:00
Kristian Bendiksen d177491843 #10648 Refactor summary reader: return std::vector<double> instead of taking ptr. 2023-10-02 09:16:52 +02:00
Kristian Bendiksen 1edac5762d #10568 StimPlan Template: Add python api for appending Pressure Table Items 2023-09-07 09:18:41 +02:00
Magne Sjaastad f20a83c710 Add create_statistics_case
Remove original implementation not working in gridcasegroup.py
Add create_statistics_case object method
2023-07-11 09:22:14 +02:00
Magne Sjaastad 91c253f8fe Python support for grid case groups 2023-07-11 09:22:14 +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
Jørgen Herje 6205418dde Fix warning for conversion from std::vector to QStringList 2023-04-28 15:09:31 +02:00
Jørgen Herje 862e67755a Add Python support for import of property files for .roff and .grdecl (#10183)
- Add RimcEclipseCase
- Add tests for import case properties (.roff and .grdecl)
- Make rips handle list of strings as input in Pyton API
2023-04-27 10:53:33 +02:00
Kristian BendiksenandMagne Sjaastad 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
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 5ec32f8613 Update text for curve names and plot titles when source data changes
* 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
2022-12-09 08:46:36 +01:00
Kristian Bendiksen a695edc13a #9386 Fractures: add python api to scale fracture templates 2022-10-24 07:45:29 +02:00
Kristian Bendiksen accf5713ac #9323 Thermal Fracture: add python methods for importing fracture template.
Fixes #9323.
2022-10-06 10:07:37 +02:00
Kristian Bendiksen 8193f24a55 Thermal Fracture: guard for nullptrs for surface export. 2022-10-03 08:33:55 +02:00
Kristian Bendiksen 619807b81f Thermal Fracture: add python script for exporting template as surface. 2022-10-03 08:33:55 +02:00
Magne Sjaastad 3ff5d238b1 Remove unused members and remove includes 2022-08-25 13:56:53 +02:00
Kristian Bendiksen 193bc35f6b #8876 Fracture: add option to use align dip with formation dip 2022-06-16 08:38:24 +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
jonjenssen d156160daf Summary Multiplot: sync plot selection in tree with view (#8788)
* Make sure the subplot selected in the tree is shown in the multiplot viewer. 
* Clean up multiplot toolbar handling a bit
* Remove old summary plot toolbar.
2022-04-07 16:24:27 +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
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