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