Commit Graph

275 Commits

Author SHA1 Message Date
Williham Williham Totland
4e08ff7f6d Adds ::Aquifer to Opm::EclIO::SummaryNode::Category. 2020-03-26 11:36:13 +01:00
Bård Skaflestad
5a701a2ee8 Merge pull request #1609 from wito/new-summarynode
New SummaryNode implementation
2020-03-26 11:34:21 +01:00
Williham Williham Totland
06d317d119 Review Actions: Un-consts SummaryNode members and un-statics some data vectors. 2020-03-26 08:20:50 +01:00
Bård Skaflestad
2f8ad86afd Summary Output: Implement 'WMCTL' Keyword
This outputs a numeric code, an integer value, for all configured
wells at all times and enables more visual inspection of how the
wells' active controls change over time--either in response to
explicit target modes in the input or as a result of limits becoming
active.

Note that due to the fall-back option of selecting the input value
if no dynamic value is available, we must ensure that the test code
does not specify well types (producer/injector) that conflict with
the keywords used in the backing data set.  Update the relevant
tests accordingly.
2020-03-20 22:07:32 +01:00
Williham Williham Totland
2c74b0961d Removes various minor edits. 2020-03-20 15:34:14 +01:00
Williham Williham Totland
fb4f026c97 Uses correct name in reference to enum value. 2020-03-20 14:27:08 +01:00
Williham Williham Totland
f884c90745 Refactors out duplicated code. 2020-03-20 14:21:18 +01:00
Williham Williham Totland
06eeae89e6 Reworks mode vectors for Opm::EclIO::SummaryNode. 2020-03-20 14:12:06 +01:00
Williham Williham Totland
89fe3c3d15 Reworks Evaluator::Factory for Opm::EclIO::SummaryNode. 2020-03-20 14:08:03 +01:00
Williham Williham Totland
99375eb5be Reworks requiredRestartVectors for Opm::EclIO::SummaryNode. 2020-03-20 14:08:03 +01:00
Williham Williham Totland
35afdd5131 Reworks ::requiredSegmentVectors() for Opm::EclIO::SummaryNode. 2020-03-20 14:08:03 +01:00
Williham Williham Totland
21e9c1b952 Implements the change to SummaryNode in ::Evaluator. 2020-03-20 14:08:03 +01:00
Williham Williham Totland
a6a144a5be Review action: Removes default: cases. 2020-03-20 14:08:03 +01:00
Williham Williham Totland
318ca70a0b Uses the correct names for enum values. 2020-03-20 14:08:03 +01:00
Williham Williham Totland
fda69e9d57 Review action: Reverts a number of changes at the request of @bska. 2020-03-20 14:08:03 +01:00
Williham Williham Totland
0174a16386 Reworks EfficiencyFactor::setFactors for Opm::EclIO::SummaryNode. 2020-03-20 14:08:03 +01:00
Williham Williham Totland
701175c776 Makes fallthrough explicit. 2020-03-20 14:08:03 +01:00
Williham Williham Totland
bb114b6a55 Renames enum access name. 2020-03-20 14:08:03 +01:00
Williham Williham Totland
855b23aa1b Minor formatting tweak. 2020-03-20 14:08:03 +01:00
Williham Williham Totland
e500fbbbca Reworks ::find_wells for Opm::EclIO::SummaryNode. 2020-03-20 14:08:03 +01:00
Williham Williham Totland
b12397c68e Minor formatting tweak. 2020-03-20 14:08:03 +01:00
Williham Williham Totland
cb0f27c719 Reworks ::updateValue for Opm::EclIO::SummaryNode. 2020-03-20 14:08:03 +01:00
Williham Williham Totland
b940d81aed Rewrites ::need_wells() for Opm::EclIO::SummaryNode. 2020-03-20 14:08:03 +01:00
Williham Williham Totland
0265b7fb46 Renames variables for clarity. 2020-03-20 14:08:03 +01:00
Williham Williham Totland
90a2eeb7fc Reworks to unified initialisation. 2020-03-20 14:08:03 +01:00
Williham Williham Totland
e317b9663a Removes extraneous type. 2020-03-20 14:08:03 +01:00
Williham Williham Totland
3af0bbf3cb Removes extraneous names. 2020-03-20 14:08:03 +01:00
Bård Skaflestad
4b85366d7e Merge pull request #1592 from jalvestad/opm_data_Groups
Changes in opm-common for current Production/Injection Group Control parameters
2020-03-19 16:53:07 +01:00
Kai Bao
1369a3509a adding a few connection summary keywords
COFR CWFR CGFR CWCT CGOR
2020-03-18 13:19:33 +01:00
Jostein Alvestad
82ea605cb8 removed default initialization for template group_control 2020-03-16 15:29:08 +01:00
Jostein Alvestad
68ac742f17 further changes for opm-data Groups 2020-03-16 13:51:05 +01:00
Williham Williham Totland
fb7d4315c9 Renames Opm::SummaryNode to Opm::SummaryConfigNode. 2020-03-13 15:40:41 +01:00
Arne Morten Kvarving
e747ce86b7 added: virtual method globalFieldProps to EclipseState
this will always return the global field props, even in parallel.
necessary since certain operations related to IO need to full global
view on the root process, even when running in parallel

also virtualize the EclipseGrid accessor to add assert in parallel
to ensure only root-process access
2020-02-28 10:25:10 +01:00
Arne Morten Kvarving
ae10af208f changed: hide the templated 'has' and 'get' interfaces in FieldPropsManager
motivation: an upcoming parallel frontend to the field props manager.
templated functions cannot be virtualized, and thus having these exposed
would give a great chance of confusing the users in the downstream
code, where properties would be caught from the (potentially) empty
backend instead of from the frontend.
2020-01-28 14:31:25 +01:00
Atgeirr Flø Rasmussen
3ee092792c Remove duplicate warnings for unhandled summary keywords. 2020-01-24 12:27:32 +01:00
Joakim Hove
691296f91a Remove old 3D property implementation 2020-01-19 23:04:46 +01:00
Joakim Hove
ecb5fce19b Only active cells (#1298)
Use FieldProps implementation for 3D properties
2020-01-13 15:46:06 +01:00
Joakim Hove
8f6c2c70f6 UDAalue::get<double>() will return raw value - not SI.
Add new function UDAValue::getSI() which will return SI value of numerical
input, and throw an exception if internal state is not numeric.
2020-01-06 12:05:51 +01:00
Arne Morten Kvarving
3cf79037e2 add equality operator to Location
also put it in Opm namespace
2020-01-03 08:24:33 +01:00
Joakim Hove
89ab99e6b9 UDQ: fix bug with parsing of expressions like A - B - C - D
- In the case of several tokens separated with +/- the final tree is assembled
   from left, was previously from the right. This fixes evaluation bug with
   expressions like A - B - C which were eventually evaluated as A - (B - C).

 - Improved handling of different types; both transiton from scalar to sets of
   wells and groups, and also groups in general. In particular you can now
   assign to a group variable:

        DEFINE GUXXX  WOPR * 0.25

 - Actually hook up the evaluation of group variables from the Summary code.
2019-12-17 16:59:06 +01:00
Joakim Hove
8fdbde5a48 Bugfix: use correct 3D property container 2019-11-27 16:19:16 +01:00
Joakim Hove
517dbfddc5 Use FieldProps to get FIPNUM for region cache 2019-11-20 08:38:26 +01:00
Joakim Hove
8bd9aeaf9d Change RegionCache constructor to accept std::vector<int> fipnum 2019-11-20 08:36:03 +01:00
Joakim Hove
613ec70dab Rename Well2 -> Well and Group2 -> Group 2019-11-13 23:19:26 +01:00
Joakim Hove
7356c76c58 Merge pull request #1204 from joakim-hove/summarynode-location
Add Location member to SummaryNode instances
2019-11-11 16:37:43 +01:00
Joakim Hove
f17eefcaf7 Add Location member to SummaryNode instances 2019-11-11 15:31:36 +01:00
Cintia Goncalves Machado
7a274b2717 Add summary keywords FCPR, FCPT and CCPT 2019-11-11 09:26:36 +01:00
Joakim Hove
1d95cd8248 Merge pull request #1200 from goncalvesmachadoc/goncalvesmachadoc-addProdInjReportPRT
Add WVIR
2019-11-07 16:22:06 +01:00
Cintia Goncalves Machado
db34bcaa21 Add WVIR
Add well voidage injection rate.
2019-11-06 14:58:35 +01:00
Bård Skaflestad
2eb3a06024 Replace Writer for Summary/SMSPEC Files
This commit replaces the existing system for writing summary and
specification (SMSPEC) files with a new implementation based on
class EclOutput.  We package the evaluators of individual parameters
in a set of classes determined by the parameter's category which
each implement a virtual 'update()' function.  This update function
ultimately writes new values into a SummaryState object.

Add a factory-like system for instantiating the appropriate class
depending on a SummaryNode's 'category()'.  Also, add a helper class
for managing the parameters that a configured in a simulation
model's SUMMARY section in order to distinguish these from those
parameters that are merely needed for restart purposes.  The summary
class's 'eval()' function then becomes a loop over the evaluators
for parameters in SUMMARY followed by a loop over the evaluators for
restart vectors.

We reimplement the 'internal_store()' function in terms of an
std::vector of a helper structure 'MiniStep' which holds a ministep
ID (contiguous counter started at zero), a report step ID, and all
the evaluated parameters of this ministep.  The final write function
then consists of outputting those ministep structures that have
accumulated since the previous call to write().  If a simulation
does not call write at all, then this will accumulate all parameters
for all ministeps throughout the simulation history.

We create the SMSPEC file at most once, and write to it at most each
report step.  We create the summary file once (if unified) or at
each report step (if separate).
2019-10-12 20:21:17 -05:00