Commit Graph

59 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
Bård Skaflestad
33d09936c3 Merge pull request #1719 from GitPaean/aquifer_keywords
adding aquifer summary keywords
2020-10-05 22:49:32 +02:00
Kai Bao
fd773423b0 adding the following aquifer summary keywords
AAQR, AAQT, AAQP
2020-10-02 13:18:51 +02:00
Håkon Hægland
ce4f2a157b Fixed typo in operator==() 2020-09-29 15:33:59 +02:00
Håkon Hægland
56ab32035a Added support for ALQ in the serialization.
Added support for ALQ in operator==() and Rates::read().
2020-09-29 15:33:59 +02:00
Håkon Hægland
10a9a5707c Add support for WGLIR.
Add support for summary output of WGLIR (lift gas injection rate).
2020-09-29 15:33:59 +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
Bård Skaflestad
f55d0fa57c Output: Transport Guiderate Values to Output Layer
This commit introduces datamembers of type

    Opm::data::GuideRateValue

to the Opm::data::Well and Opm::data::GroupData structures.
Collectively, these datamembers enable transporting guiderate values
calculated elsewhere--e.g., in the opm-simulators module--to the
output layer for final processing and output to the summary and/or
the restart files.

We support outputting both production and injection guiderate values
at the group level.  Guiderate values at the well level are
interpreted as production or injection according to the well type.
2020-07-19 19:07:23 +02:00
Bård Skaflestad
32fa286f8e GuideRateValue: Insert Copyright Notice
Missed in commit 4f7d41ee1.

Pointy Hat: [at]bska.
2020-07-10 17:52:38 +02:00
Bård Skaflestad
4f7d41ee10 Output: Add Container for Transporting Guiderate Values
This commit introduces a container

    Opm::data::GuideRateValue

that packages a 'std::array' and 'std::bitset' into that array.
This container is intended as the main vehicle for transporting
per-phase guiderate values (Oil, Gas, Water, and Resvoir Voidage
Volume supported initially) calculated by the simulator to the
output layer.  We support the serialization operations read and
write in order to plug into the collective communications layer used
in the simulator.

Add unit tests to exercise the new container.
2020-07-09 16:44:15 +02:00
Joakim Hove
305b2a166a Add data::GroupValues member to RestartValue 2020-07-03 16:40:42 +02:00
Bård Skaflestad
68b4f38464 Make Structure for Per-Group Summary Data from Simulator
This commit adds a level of indirection to the current per-group
summary quantities that is directly assigned by the simulator.  In
particular, introduce a new structure named

    GroupData

that contains a 'GroupConstraints' object and make the per-group
values into 'map<string, GroupData>' rather than the current
'map<string, GroupConstraints>'.  This is in preparation of adding
support for reporting group-level production/injection guiderates
(Gx[IP]GR) to the summary file.

Update tests and APIs accordingly.
2020-07-02 10:57:46 +02:00
Tor Harald Sandve
42e55ec342 Add brine output 2020-06-30 16:19:16 +02:00
Bård Skaflestad
a4a04ebf51 Restart Tag System: Introduce Tag for OPM Extended Vectors
This is intended to supersede the RESTART_AUXILIARY tag.  There is
no practical difference between vectors that are needed for restart
and vectors that are not needed for restart.  They all go into the
SOLUTION section of a restart file.

Vectors tagged as RESTART_OPM_EXTENDED will not be output unless the
user does requests OPM-extended restart files.
2020-06-11 14:31:53 +02:00
Joakim Hove
9956492730 Remove unused function from Group output data 2020-04-28 16:17:43 +02:00
Kai Bao
e09b0a2de4 addressing reviewing comments from OPM/opm-common#1695 2020-04-17 01:06:22 +02:00
Kai Bao
34ca02c253 adding summary keywords for MSW
SPRD, SPRDH, SPRDF, SPRDA
2020-04-17 00:38:21 +02:00
Joakim Hove
02a5501c0b Add method out::Well::find_connection(std::size_t global_index) 2020-03-23 13:43:50 +01:00
Jostein Alvestad
a4d3ec33f1 correction to buffer.write in opm/data/Groups 2020-03-18 14:13:05 +01:00
Jostein Alvestad
a18439bbcc intital changes for adding opm/output/data/Groups 2020-03-16 13:35:25 +01:00
Bård Skaflestad
38f458a672 Add Restart Infrastructure for Well's Active Control
This commit introduces a new protocol for communicating a well's
active constraint (i.e., its current target control mode) between
the running simulator and the restart file.  In particular, we add a
new type

    Opm::data::CurrentControl

whose data members indicate if the well is a producer or injector
and, depending on that state, carries information about the
pertinent active control mode.  The 'prod' member should be defined
for producing wells and the 'inj' member should be defined for
injectors.  Default-constructed objects of this type are 'invalid'
and not output to the restart file.  Add a CurrentControl member to
the Opm::data::Well type to enable communicating this information
using existing restart interfaces.

Expand existing unit tests to exercise the new data member.
2020-02-06 12:01:41 +01:00
Joakim Hove
27da0024af Merge pull request #1288 from joakim-hove/flowing
Determine that wells are flowing from nonzero rates
2019-12-05 10:09:39 +01:00
Bård Skaflestad
25931145e0 Aquifer Restart: Load Values Pertinent to Fetkovich Model
This commit expands the basic aquifer restart support to also
include essential values for the Fetkovich analtic model.  In
particular, we now also load the initial aquifer pressure and the
initial aquifer volume directly from the SAAQ restart vector, but
only if we know that the aquifer in question is of Fetkovich type.
2019-12-04 19:57:14 +01:00
Bård Skaflestad
7b3de57e92 Load Restart: Support Basic Quantities from Analytic Aquifers
This adds a basic protocol for retrieving simple scalar data for
each analytic aquifer, specifically from XAAQ.  At the moment we
only support retrieving the aquifer pressure and the total produced
liquid volume from the aquifer and into the reservoir model.
2019-12-04 17:43:27 +01:00
Joakim Hove
3deef64d19 Use numerical flow rates to determine Well::flowing() 2019-12-04 17:15:30 +01:00
Arne Morten Kvarving
ef9bc3cf3f Merge pull request #1265 from akva2/comparison_operators_output_structures
added: comparison operators for various output structures
2019-11-28 15:19:23 +01:00
Arne Morten Kvarving
6600994104 added: comparison operators for various output structures 2019-11-28 13:30:48 +01:00
Arne Morten Kvarving
a34bc76b46 added: serialize the whole connection struct to OPM_XWEL 2019-11-27 14:13:31 +01:00
Tor Harald Sandve
5d3125c532 Add output of well phase potential 2018-11-07 15:38:23 +01:00
Tor Harald Sandve
2d5d0953ee Add support for output of well productivity index 2018-11-02 15:57:21 +01:00
Bård Skaflestad
47141dfabf data::Wells: Remove a few blank lines
Suggested by: [at]joakim-hove
2018-10-25 09:09:31 +02:00
Jostein Alvestad
fe060c7f48 Changes to contribute to write segment data to summary file 2018-10-25 09:09:31 +02:00
Bård Skaflestad
80154e8f5f Serialization: Add Initial Support for Segment Information
This commit extends Opm::data::Wells to include a set of output
vectors for well segment information.  At present we define output
structures for segment rates and segment pressures.  The immediate
use case is properly assigning restart vector items RSEG[8 .. 11],
but these same values are also usable for outputting the summary
vectors SPR, SOFR, SGFR, and SWFR.  Future expansion is likely.
2018-10-25 09:09:31 +02:00
Bård Skaflestad
48047f8c7a Restart Output (Wells): Store Effective 'Kh' Product
Mostly to forward to SCON array.

While here, also fix 'Missing initializer' warnings in the
'get_completions' unit test.
2018-07-10 17:37:49 +02:00
Joakim Hove
3975db2ff3 Rename CompletionSet -> ConnectionSet 2018-06-11 14:03:32 +02:00
Tor Harald Sandve
206241c9ae Store global index instead of active index in well completions
Fix bug in output of completion related stuff when run on mulitiple
cores.
2018-02-08 14:11:04 +01:00
Tor Harald Sandve
55ed844438 Add cell data in perforation cells to data::well::completion
With this no cell data is needed in opm-output
2018-02-07 14:32:01 +01:00
Tor Harald Sandve
5822c362f5 Communicate well data 2018-02-06 14:47:35 +01:00
Sveinung Rundhovde
ffb85c98bf Add support for GVPR keyword 2017-12-19 10:22:55 +01:00
Andreas Lauser
30ebb323d7 wells: add support for energy 2017-11-29 14:02:41 +01:00
Sveinung Styve Rundhovde (IT SI SIB)
ff3d0cda28 Add vaporized_oil to Rates 2017-11-17 09:36:05 +01:00
Lars Petter Øren Hauge
0695ac5894 Add dissolved_gas to Rates 2017-11-15 12:02:42 +01:00
Arne Morten Kvarving
2a3afbe846 initialize values to avoid maybe-unitialize-use-warnings 2017-06-09 12:11:35 +02:00
Arne Morten Kvarving
bc3eac293f make constructors explicit 2017-06-08 17:15:38 +02:00
Arne Morten Kvarving
8a90f30ed8 add (default) constructor to Rates 2017-06-08 17:14:33 +02:00
babrodtk
1ec5baeb2e Fixed auxillary=>auxiliary 2017-02-15 14:50:17 +01:00
Joakim Hove
d64a040a2c Document enum TargetType. 2016-11-16 16:29:30 +01:00
Jørgen Kvalsvik
99df6acb8d Remove deprecated SimDataContainer pointer 2016-11-10 11:01:27 +01:00
Jørgen Kvalsvik
c167dc4e62 {F,G}MW{IN,PR} support
Add support for the FMWIN, FMWPR, GMWIN and GMWPR keywords.
2016-11-02 12:18:39 +01:00
Jørgen Kvalsvik
f2c895c701 Return zero for non-existing well/completion
To be consistent with the general summary behaviour and more input
tolerant, 0.0 is returned when some phase, completion or well is
requested that isn't provided by the simulator.

Solves the issue discussed in https://github.com/OPM/opm-output/pull/122
and extends the test input deck to trigger this behaviour.
2016-10-31 11:49:56 +01:00