Commit Graph
89 Commits
Author SHA1 Message Date
Bård Skaflestad 4956e880a4 Summary/Restart: Get CTF From Simulator
This commit switches to getting the output files' connection
transmissibility factor from Opm::data::Connection instead of
Opm::Connection.  This is in preparation for implementing the WELPI
feature, in which the CTFs are occasionally adjusted based on the
dynamic simulation state.
2020-10-05 23:34:01 +02:00
Kai Bao 6093a80dff fixing the compilation due to interface change 2020-10-02 14:09:01 +02:00
Bård Skaflestad 6ea0e73512 Prepare for Creating Network-Level Summary Output
This commit adds a level of indirection to the existing group-level
data (active controls and guiderates), and adds a new 'NodeData'
level to the 'data::' protocol for transporting values from the
simulator to the output layer.

Update all call sites and users accordingly.
2020-09-20 17:46:01 +02:00
Joakim Hove 8d11a04033 Add report_step argument to UDQConfig::eval() 2020-09-08 08:23:45 +02:00
Joakim Hove 11e70ca779 Handle undefined UDQ expressions 2020-09-02 23:03:03 +02:00
Joakim Hove 3b0e795e0b Add UDQState argument to output writer 2020-09-01 13:18:59 +02:00
Joakim Hove 305b2a166a Add data::GroupValues member to RestartValue 2020-07-03 16:40:42 +02:00
Joakim Hove 1704a35a92 Recover UDQ values from restart file 2020-06-25 16:18:59 +02:00
Joakim Hove dd1591f1a2 Use Action::State object to keep track of actions being run 2020-06-18 16:45:39 +02:00
Joakim Hove 5444eade2f Use std::shared_ptr<Python> for Python argument in Schedule 2020-03-31 10:26:55 +02:00
Bård Skaflestad 1113c25eb1 Restart: Save/Restore Cumulative Injected Reservoir Volume
This commit adds support for persisting the *VIT cumulative summary
vector at the well, group, and field levels in the simulation
restart files.  Connection level currently not supported.
2020-03-27 14:59:29 +01:00
Joakim Hove 50fb51d56e Add Python arg to Schedule constructor 2020-03-27 12:43:18 +01:00
Joakim Hove cdbccce62a Ensure base restart file is written before loading restarted case 2020-01-30 10:20:01 +01:00
Joakim Hove fc20150336 Use time points from Schedule in restart testing 2020-01-30 10:20:01 +01:00
Joakim Hove a33108dee0 Properly differentiate between base case and restart case in test 2020-01-29 12:45:42 +01:00
Joakim Hove 1d8ea3c92e Remove unused inline test data 2020-01-29 11:35:28 +01:00
Joakim Hove 198b208258 Test use of FieldPropsManager in WellConnections 2019-11-29 16:42:29 +01:00
Arne Morten Kvarving 529a181617 fixed: serialize thp to OPM_XWEL 2019-11-28 23:22:14 +01:00
Arne Morten Kvarving 6600994104 added: comparison operators for various output structures 2019-11-28 13:30:48 +01:00
Torbjørn Skille c6f8a41c43 updates of ERst api, supports multiple occurrences of array names 2019-11-05 15:01:17 +01:00
Arne Morten Kvarving c06d5912ea fixed: build using gcc 5 (ubuntu xenial)
the tuple-from-initializer-list constructor is explicit.
2019-10-17 09:49:15 +02:00
Bård Skaflestad d1db2ec396 Reimplement test_Restart in Terms of TimeStampUTC
Only affects the 'first_sim()' helper function.
2019-10-16 20:03:08 -05:00
Bård Skaflestad 411da1d8a5 Make 'test_Restart' Mostly Independent of libecl
In particular, swith to using class EclIO::ERst to read the files
produced by RestartIO::save().
2019-10-14 06:13:38 -05:00
Joakim Hove ff69737b99 Add start_time argument to SummaryState 2019-09-19 22:09:15 +02:00
Joakim Hove 5748d06914 Remove unused arguments from EclipseIO::writeTimestep() 2019-06-14 14:38:25 +02:00
Joakim Hove 08305b6e30 Extract Summary::eval() out from Summary::add_timestep() 2019-06-07 14:45:18 +02:00
Bård Skaflestad 16e49a0223 RestartIO: Reimplement save() in Terms of OutputStream::Restart
This commit switches the file handling operations of the gateway
function RestartIO::save() to using the OutputStream::Restart
component.  Briefly, this means replacing write_kw() function calls
with calls to Restart::write(), especially since the latter natively
handles PaddedString<8> data.
2019-06-03 14:19:48 +02:00
Joakim Hove 94b160258e Remove old well implementation 2019-05-22 21:44:50 +02:00
Joakim Hove 9e288a9d78 Refactor SummaryState
- Change SummaryState::add() -> SummaryState::update(), the
   SummaryState::update() method is semantically aware of totals.

 - Add an internal variable to the SummaryState class to keep track of the
   elapsed simulation time.
2019-05-13 11:06:32 +02:00
Joakim Hove 04d42c2f4e Move well and well related files to Well/ subfolder 2019-03-08 07:15:49 +01:00
Bård Skaflestad e685eccdc9 Restart: Save/Restore Historical Cumulative Production
This commit adds support for saving and restoring cumulative
production quantities like WOPTH, GWPTH, FGPTH, GGITH, and WWITH.
While here, also cater to the case of wells alternating between
injecting gas and injecting water.  This means that we'll save and
restore cumulative gas/water injection for all injectors,
irrespective of current injecting phase.

Update unit tests accordingly.
2019-02-10 19:14:30 -06:00
Bård Skaflestad 9e97dde466 Restore Cumulative Summary Quantities in Restart
This commit hooks the new helper function restore_cumulative() up to
the gateway restart function

    RestartIO::load()

by changing the return type from "RestartValue" to

    std::pair<RestartValue, SummaryState>

with the pair's '.second' being restore_cumulative()'s return value.

Update callers including unit tests accordingly, specifically such
that the gateway function

    EclipseIO::loadRestart()

internally resets its Summary object's cumulative quantities using
'load().second'.  This is, strictly speaking, a violation of the
"const" qualifier on EclipseIO::loadRestart(), but the language
permits the usage because the 'impl' pointer in this case will be a
constant pointer to a mutable 'Impl' object.
2019-02-10 19:14:29 -06:00
Joakim Hove 2cd6fa2f49 Add overloads without ParseContext and ErrorGuard - update all tests 2019-01-04 13:59:28 +01:00
Joakim Hove 1ba51534ae Move SummaryState implementation to EclipseState/Schedule/ 2018-11-09 20:44:37 +01:00
Joakim Hove 967e3ad3af Merge pull request #526 from totto82/addDRSDTR
Add DRSDTR and DRVDTR
2018-11-06 08:21:32 +01:00
Tor Harald Sandve 95179f393c Fix vappars and dr[sv]dt logic
The simulator should either use VAPPERS or dr[sv]dt, both the
combination drsdt and drvdt is allowed.
2018-11-05 13:38:42 +01:00
Bård Skaflestad 4348438044 Summary: Ensure that we don't step backwards during simulation
This commit, a preparation for restoring cumulative quantities from
a restart file, reinitialises Summary::prev_time_elapsed in the case
of simulation restart and adds a check to

    Summary::write_timestep()

which throws if the input argument 'secs_elapsed' is prior to the
previously recorded elapsed time.  The latter is a change in the
behaviour of write_timestep(), but ensures that we don't integrate
rate quantities across a very large timestep in the case of
simulation restart and also prevents double accumulation.

Update impacted unit tests accordingly, and move FIRST_SIM's START
date into the RUNSPEC section where it belongs.
2018-11-04 21:48:35 +01:00
Jostein Alvestad ef6e0b084d Corrected merge conflicts with upstream master
Write cumulative production / injection only in eclipse compatible mode
2018-09-19 16:02:17 +02:00
Bård Skaflestad 41d0a56967 Test Restart: Use Non-Default SummaryState Values
Needed by the new restart code.
2018-09-19 16:02:12 +02:00
Jostein Alvestad 3fb7149226 Added change to rseg item 11 2018-09-19 16:02:10 +02:00
Jostein Alvestad 5b1ec7b5b0 Added code to write restart data for groups and segmented wells to restart file - consistent with Eclipse 100 2018-09-19 16:02:02 +02:00
Jostein Alvestad cedadaf649 Added code to implement writing XGRP to the restart file. 2018-09-19 16:01:58 +02:00
Joakim Hove 71d92c3dc8 Add opm_formatted property to the IOConfig 2018-09-12 11:34:57 +02:00
Joakim Hove 45e81a02fa Use plain C api for temporary testarea 2018-09-07 05:53:20 +02:00
Joakim Hove 3e95d3f42b Fixup: THPRESPR -> THRESHPR 2018-09-05 17:53:33 +02:00
Joakim Hove 4a10023c0d Make sure the THPRESPR field is written in solution section 2018-09-04 08:38:15 +02:00
Joakim Hove ae3c4e0d8c Rename THPRES string to THPRESPR 2018-09-03 17:15:01 +02:00
Joakim Hove f80644b616 Remove special case for Travis 2018-07-19 06:44:20 +02:00
Bård Skaflestad 0be3f2c76f Unit Tests: Supply Enough Parameters for data::Connection
We must provide cell_pressure, cell_saturation_water,
cell_saturation_gas, and effective_Kh.

Forgotten in commit 687f108.
2018-07-12 00:46:46 +02:00
Joakim Hove 3975db2ff3 Rename CompletionSet -> ConnectionSet 2018-06-11 14:03:32 +02:00