calculated and stored as private data members in EclipseGrid.
The API for the class is unchanged except for some minor changes for exportACTNUM, exportZCORN and exportCOORD.
These changes have triggered some very few modifications in the opm-grid and opm-simulators repo.
This commit adds a new query method,
bool Schedule::hasGroup(groupName, timeStep)
which report whether or not a particular named group exists at a
particular time step (zero-based report step index). If this
function returns 'true', then it is always safe to call
Schedule::getGroup2(groupName, timeStep)
with the same arguments. Otherwise, the latter will throw an exception.
The new 'hasGroup' overload thus enables the same query types as the
existing 'hasWell' overload set. The immediate use case for this
new overload is a reworking of the system for evaluating derived
summary parameters (e.g., FOPT or GGLR).
Add a new unit test to exercise the new overload.
This commit replaces the existing RFT file output defined in terms
of private class 'RFT' with the function RftIO::write(). While
here, also explicitly add requisite headers that were included only
transitively.
This commit implements a new file writing function
void Opm::RftIO::write()
that is intended to replace the current RFT output functionality
defined in terms of private class 'RFT' in EclipseIO.cpp. We
support the basic RFT output consisting of
- Timestamp (elapsed and date)
- WELLETC metadata including all unit conventions
- Connection cell (I,J,K), connection cell hostgrid (blank for
main grid only), connection cell centre depth, connection cell
pressure, and connection cell water and gas saturations
Connections in inactive cells are omitted. Note that unit of
measure strings aren't implemented in terms of UnitSystem::name()
due to the strings being padded on the left for centering effect.
Add unit tests to exercise the new writer.
This commit introduces a new output stream, 'RFT', that is intended
as a new backend for writing RFT files. At present this supports
integer, float, and PaddedOutputString<8> element types since those
are the types needed for basic RFT data. We will extend the element
support if needed for PLT and/or Segment data.
We support formatted and unformatted output streams and distinguish
between opening a new stream and opening an existing output stream
(essentially between open modes ios_base::out and ios_base::app).
Add unit tests to exercise the possible combinations.
The DeckKeyword::DeckKeyword(const std::string&) constructor has been removed
and the DeckKeyword now requires a ParserKeyword pointer in the constructor.