Commit Graph

58 Commits

Author SHA1 Message Date
Arne Morten Kvarving
9ef643345d Schedule.hpp: forward Well 2023-01-18 11:01:41 +01:00
Bård Skaflestad
b4cebad6a9 Address Review Comments
In particular, add more unit testing and give names to a number of
index constants.

Thanks to [at]blattms for reviewing the initial version of this
patch.
2022-05-24 18:21:41 +02:00
Bård Skaflestad
67b7fe58b3 Don't Assert IWEL[24] == -1 Anymore
This setting is no longer magic.
2022-05-24 12:06:57 +02:00
Markus Blatt
274cee38c7 Renames header tests/WorkArea.cpp to tests/WorkArea.hpp 2022-01-21 10:18:56 +01:00
Joakim Hove
0a59bd8f61 Filesystem rename EclipseState/Schedule/ Schedule/ 2022-01-02 14:32:14 +01:00
Joakim Hove
aede532b9a Filesystem rename parser/eclipse/ input/eclipse 2022-01-02 14:32:14 +01:00
Joakim Hove
77053495b0 Add Runspec argument to Restart header constructor 2021-11-30 11:23:13 +01:00
Joakim Hove
1839dcdbd5 Assign tracer data to XWEL 2021-11-22 16:27:17 +01:00
Joakim Hove
b00707ff84 Assign tracer data to SWEL 2021-11-22 16:27:17 +01:00
Jostein Alvestad
85367ec6d7 corrections/improvements based on comments from reviewer 2021-10-25 14:27:28 +02:00
Jostein Alvestad
6b7875765d added unit tests to InteHead and DoubHead for NETBALAN 2021-10-25 14:27:23 +02:00
Joakim Hove
06fd01c6ba Create WellTestState object from restart file 2021-10-13 08:46:11 +02:00
Joakim Hove
7a1869fa60 Load WTEST configuration from restart file 2021-10-12 17:04:18 +02:00
Joakim Hove
7f24433337 Write WTEST configuration and state to restart file 2021-10-10 13:06:28 +02:00
Joakim Hove
f7b09380d4 Add WellTestState argument to AggregateWellData functions 2021-10-10 12:11:29 +02:00
Joakim Hove
9fe4be5ebf Rename data::WellRates -> data::Wells 2021-06-12 09:33:05 +02:00
Jostein Alvestad
26cc7897c6 correction to SWEL for prediction mode wells 2021-05-10 09:54:25 +02:00
Joakim Hove
2247b45872 Use SummaryState for connection rates in restart output 2021-03-25 07:21:31 +01:00
Bård Skaflestad
89e3efb2e4 Record Dynamic Well Status in Output Wells
This commit adds a new data member

    Well::Status dynamicStatus

to the data::Well object.  This member records the simulator's
notion of a well's open/shut/stop status and is especially needed to
support WECON-type status changes once the simulator maintains both
open and shut wells.

While here, also change multiple summary primitives to not look up
the same values repeatedly.
2021-03-18 17:26:33 +01:00
Joakim Hove
7b896359f6 Part 2: Use Opm::time_point 2021-03-03 15:13:34 +01:00
Joakim Hove
564c207a05 Use SummaryState::get_well_var() 2021-02-09 21:51:26 +01:00
Jostein Alvestad
b22334f08a correction of an unintended change in test_AggregateWellData.cpp 2020-11-24 10:54:58 +01:00
Jostein Alvestad
f2e32fa436 Added unit tests for corrections 2020-11-24 10:49:47 +01:00
Joakim Hove
53fe0f2d11 Add guide rate delay and damping to rst header class 2020-10-13 13:11:04 +02:00
Joakim Hove
f02ecb472f Store Value::Shut == -1000 for shut wells in IWEL 2020-10-07 18:38:46 +02:00
Joakim Hove
a33fd2483f Updates to well control mode reported in IWEL
With this commit the IWEL[ActWCtrl] is assigned a value independently of the
wells OPEN / SHUT status.

With this PR the index enum value Status is used instead of the previously used
item11. Also numerical constants are introduced for eclipse status values for
Shut, Stop, Open and Auto.
2020-10-07 18:28:11 +02:00
Williham Williham Totland
6d2f8cca5c Adds type information to integer literals. 2020-09-29 13:54:21 +02:00
Jostein Alvestad
dc97e71350 various updates of unit tests 2020-09-23 13:03:21 +02:00
Joakim Hove
dd1591f1a2 Use Action::State object to keep track of actions being run 2020-06-18 16:45:39 +02:00
Jostein Alvestad
fea794ee17 further corrections of unit tests and code clean up 2020-06-15 09:55:38 +02:00
Jostein Alvestad
862b7b7591 clean up code - correct unit tests 2020-06-15 09:55:36 +02:00
Joakim Hove
985cb279ff Allow negative rates when evaluating UDA values
corrections to iwel[10] open/shut flag

further corrections SWEL for handling udq-restarts correctly

further changes to get correct SWEL in ECL-Restart file

added comment to clarify change

correction to group sequence and group controls for EclRST-file

changes to correct IGRP[NWGMAX+5]

corrected compile errors/warnings

further minor code corrections

initial changes to include group current Prod/inj Constraint in summary file

further changes to currentsStatusGroupControl to Summary output

further corrections and additions of Field current controls

further corrections for IGRP

minor corrections to code style

corrections for tests

changes to correct test_AggregateWellData

a few more initial changes for next version of igrp/sgrp

changes to igrp & sgrp according to tests

changes to handle special conditions at report step 0

corrections due to changes in Summary.cpp

changes to improve code quality and robustness

Add default value to igrp[nwgmax+5]

corrections and code improvements base on testing

corrections to handling of GCONINJE

further corrections for IGRP

even further corrections IGRP

changes to correct SGRP

correction to IGRP defaults

corrections to SWEL and IGRP

further corrections for IGRP

removed some comments
2020-06-15 09:55:27 +02:00
Bård Skaflestad
c71ffd1415 Add Restart I/O Support for Well's THP
This commit adds support for saving and restoring a well's THP
quantitiy.  We put the THP into the summary facility's list of
"required restart quantities" and pick up the value converted to
output units from the SummaryState.

On restart we restore the THP value to internal (SI) units and
transport the value to the simulator in data::Well::thp.  While
here, also add the THP value to the RstWell object although
currently not strictly needed in that context.
2020-05-19 22:20:55 +02:00
Bård Skaflestad
317d1ba14e Restart: Prepare to Output Well/Group Guide Rates
This commit identifies vector items in XWEL and XGRP that hold guide
rate values at the well and group levels, and adds functionality to
output those values to the restart file.  We do not identify such
value at the FIELD level.  As with other summary-like quantities, we
expect to pick up the fully converted values from a SummaryState
object.

Calculating and storing the guide rate quantities in SummaryState is
the subject of future work.
2020-05-18 21:56:57 +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
bc28de3372 Don't Output Dynamic Data to Restart File for SEQNUM=0
This commit introduces a special case for the restart file writing
code.  In particular we no longer write dynamic data vectors (e.g.,
*WEL, *GRP, *CON) to the restart file if we're being asked to output
the initial condition (i.e., report step/sequence number 0).

Add the report step as a new explicit parameter to createInteHEAD()
instead of inferring this value from the "sim_step" and output
dynamic sizes as zero for report_step=0.  While here, also correct
an omission from earlier commit 7986e99e.  We must ensure that the
maximum number of wells in the field (intehead[163]) is at least as
large as the current number of active wells (intehead[16]).

Update "intehead" test to account for report_step being passed
directly as an argument to InteHEAD::stepParam().
2020-03-30 14:39:04 +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
7da79ae532 Convert rst quantities to SI units 2020-02-14 06:43:25 +01:00
Joakim Hove
6afd05db1b Add group mamber to RstWell 2020-02-06 11:59:10 +01:00
Joakim Hove
9456d05ec4 Fix keyword inconsistency in test data 2020-01-30 10:20:01 +01:00
Joakim Hove
69822e880f Add POD struct for state with wells and groups from restart file 2020-01-22 12:23:26 +01:00
Jostein Alvestad
1e0a43c4f8 corrections to unit tests 2019-12-17 16:34:45 +01:00
Joakim Hove
613ec70dab Rename Well2 -> Well and Group2 -> Group 2019-11-13 23:19:26 +01:00
Joakim Hove
ff69737b99 Add start_time argument to SummaryState 2019-09-19 22:09:15 +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
Bård Skaflestad
d08760a922 Restart: Provide Continuous Cumulatives in OPM Extended Files
This commit removes the restriction that cumulative totals are not
output in the case of creating OPM Extended Restart files.  There
was a reason why we did not do this when the new restart facility
was introduced, but that reason no longer applies.
2019-04-28 21:44:13 +02:00
Bård Skaflestad
849eb80e41 IWEL: Identify Items for Active and Requested Well Controls
This commit refines our understanding of IWEL items relating to well
constraints.  In particular Item 8 is the well's active control mode
as determined by the simulator from dynamic state variables.  On the
other hand, Item 16 is the constraint that is requested in the
simulation run input for prediction wells (keywords WCONINJE,
WCONPROD) while Item 50 is the requested constraint for wells
controlled by observed rates (WCONINJH, WCONHIST).

Special Note: This commit outputs the requested control mode to Item
8 and will need an update later once the simulator becomes aware of
the distinction.
2019-02-10 19:14:30 -06: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