Commit Graph

11730 Commits

Author SHA1 Message Date
Atgeirr Flø Rasmussen
92bdcbf597 Reinstate lost logging of header and parameters.
Also re-add the ability to do strict parsing.
2020-09-03 14:07:33 +02:00
Atgeirr Flø Rasmussen
4f7421d64d
Merge pull request #2746 from bska/restart-active-group-constraints
Restore Groups' Active Constraints on Restart
2020-09-03 10:35:55 +02:00
Bård Skaflestad
6220cdf613 Restore Groups' Active Constraints on Restart
First step towards better restarts of models with group control.
2020-09-03 01:11:32 +02:00
Bård Skaflestad
bdc34a7580 Distribute Group Values at Parallel Restart
Mostly to prepare for restoring the groups' active controls from
restart information.
2020-09-03 01:11:32 +02:00
Bård Skaflestad
a0373ed428 Support Distributing Guiderates in Parallel Restart
In preparation of distributing group-related information (e.g.,
the active constraint).
2020-09-03 01:11:32 +02:00
Bård Skaflestad
399ff94bce
Merge pull request #2752 from joakim-hove/pass-udq-state
Pass the UDQState member when evaluating UDQ
2020-09-03 01:00:03 +02:00
Markus Blatt
5193b0c90e
Merge pull request #2756 from blattms/fix-opencl-shadowing-warnings
[opencl] Fixes shadowing variable warnings.
2020-09-02 22:51:28 +02:00
Markus Blatt
27931c4303 [opencl] Fixes shadowing variable warnings.
These seemed familar and I would have sworn that I already fixed them
somewhen. Might have been reintroduced by rebasing.
2020-09-02 22:46:44 +02:00
Markus Blatt
e997d7b130
Merge pull request #2751 from ducbueno/opencl-stdwell-clean
AddStandardWell functionality in OpenCL backend
2020-09-02 22:02:05 +02:00
Bård Skaflestad
d14aaa3401
Merge pull request #2709 from bska/report-guiderates
Report Guiderates at Well and Group Levels
2020-09-02 21:37:08 +02:00
Jose Eduardo Bueno
4d10d9ac76 Fixed issue when no std wells are present 2020-09-02 15:44:46 -03:00
Jose Eduardo Bueno
56c1c0862c Added StandardWell functionality to OpenCL backend 2020-09-02 15:00:34 -03:00
Bård Skaflestad
144baeeb42 Well Model: Report Guiderates at Well and Group Levels
This commit adds support for reporting the simulator's guiderate
values at the well and group levels to the output layer through the
wellData() and groupData() member functions.  We add several new
member functions that collectively assemble the values and assign
them to objects of type Opm::data::GuideRateValue for subsequent
output to the summary and restart files.

In particular

    getGuideRateValues(const Well&) const
    getGuideRateValues(const Group&) const

retrieve the guiderate values for all phases for those individual
wells and groups for which the guideRate_ data member defines a
value.  The most complicated function of this commit is

    calculateAllGroupGuideRates

which aggregates those individual contributions from the well (leaf)
level up to the root of the group tree (the FIELD group).  This
process uses an ancillary array ('up') to keep track of the parent
groups of all wells and all groups, and to ensure that we only visit
each parent group once (sort+unique on subsets of the 'up' array).

We do not currently support outputting guiderates for reservoir
voidage volume (GuideRateModel::Target::RES).
2020-09-02 17:22:04 +02:00
Bård Skaflestad
e1ce1c9124 Centralize Rate Vector Derivation for Guide Rates
This commit creates a single implementation function for deriving
'RateVector' objects that go into the guiderate calculation.  In
particular, we now use the same implementation function for both the
well and the group levels.  While here, also expose the group level
derivation as a free function and reimplement the FractionCalculator
version in terms of this free function.  Finally, remove the
previous attempt at such a free function taking only the group name.
This function no longer exists in isolation and is only accessible
through the FractionCalculator.

This is in preparation of reporting guiderate values to the output
layer (summary and restart files).
2020-09-02 17:22:04 +02:00
Bård Skaflestad
3c91761999 Well State: Add Predicate for Flow Rate Existence
This commit adds two new predicate member functions

    bool hasWellRates(well_name) const
    bool hasProductionGroupRates(group_name) const

that enable querying the existence of the corresponding flow rate
values for wells and group production.

This is in preparation of reporting the simulator's guiderate values
to the summary and restart files.
2020-09-02 17:22:04 +02:00
Bård Skaflestad
fdba34e071 IsXGroup: Return Explicit Boolean Value
Mostly to highlight that 'globalIsXGrup_' holds integers rather than
bools.  While here, also fix an error message formatting problem.
2020-09-02 17:22:04 +02:00
Bård Skaflestad
4be4c543e7
Merge pull request #2753 from akva2/janitoring
use std::make_unique where applicable
2020-09-02 16:24:21 +02:00
Arne Morten Kvarving
7305f84351 use std::make_unique where applicable 2020-09-02 15:35:39 +02:00
Joakim Hove
d330d883be Pass the UDQState member when evaluating UDQ 2020-09-01 15:09:13 +02:00
Joakim Hove
4b45623333
Merge pull request #2748 from joakim-hove/add-udq-state
Add UDQState argument to output writer
2020-09-01 15:07:21 +02:00
Bård Skaflestad
a0601b23eb
Merge pull request #2750 from akva2/avoid_unncessary_copies
fixed: use const refs in foreach constructs
2020-09-01 14:46:42 +02:00
Arne Morten Kvarving
182ec130b1 fixed: use const refs in foreach constructs
avoids unnecessary copies
2020-09-01 13:25:26 +02:00
Joakim Hove
c2f7e900b6 Add UDQState argument to output writer 2020-08-31 18:40:39 +02:00
Bård Skaflestad
cb067869bd
Merge pull request #2749 from bska/fix-debug-build
Fix Debug Build
2020-08-31 17:10:31 +02:00
Bård Skaflestad
2bd80947b9 Fix Debug Build
Remove left parenthesis character left over from transitioning to
the type-based parameter system.  The '(' produced a build failure
which only manifested in debug builds.

Thanks to Håkon Hægland for bringing the issue to our attention.
2020-08-31 16:33:52 +02:00
Bård Skaflestad
fcd0de667b
Merge pull request #2732 from bska/fix-from-to-equal-msg
Broken Constraints: Fix Diagnostic Message
2020-08-31 13:57:45 +02:00
Bård Skaflestad
efed640e63 Broken Constraints: Fix Diagnostic Message
Especially, grab a copy of the "oldControl" to avoid reading through
a reference for which the underlying object is reset in

    setCurrent*GroupControl()

This in turn avoids generating confusing diagnostic messages of the
form

    Switching production control mode for group G from FLD to FLD
2020-08-31 13:04:39 +02:00
Bård Skaflestad
5392726a8f
Merge pull request #2745 from akva2/no_macro_properties
Continue replacing macros for typetags et al
2020-08-31 13:00:56 +02:00
Joakim Hove
aa37f986ae
Merge pull request #2736 from joakim-hove/add-udqstate
Add UDQState member to eclbasevanguard
2020-08-31 07:35:08 +02:00
Arne Morten Kvarving
f4f5fa3a5d changed: remove one missed TTAG usage
also include header for the Scalar property definition
2020-08-28 10:44:53 +02:00
Arne Morten Kvarving
9a000c6d07 changed: remove SET_TAG_PROP macro usage 2020-08-28 10:44:53 +02:00
Arne Morten Kvarving
3b21a8a481 changed: remove SET_TYPE_PROP macro usage 2020-08-28 10:44:53 +02:00
Arne Morten Kvarving
93a3ebf8f7 changed: remove NEW_PROP_TAG macro usage 2020-08-28 10:44:53 +02:00
Joakim Hove
0fabb02db4 Add vanguard member UDQState 2020-08-27 17:31:39 +02:00
Joakim Hove
f6d2b4fd27
Merge pull request #2737 from joakim-hove/extract-eval-udq
Extract UDQ eval to separate function call
2020-08-27 17:09:33 +02:00
Joakim Hove
ef4af80821
Merge pull request #2741 from joakim-hove/add-const-cast
Use const_cast< > in variant serialization
2020-08-27 15:22:19 +02:00
Arne Morten Kvarving
941e4916f8 changed: remove SET_PROP macro usage 2020-08-27 14:02:05 +02:00
Arne Morten Kvarving
7d853d2e05 changed: remove SET_SCALAR_PROP macro usage 2020-08-27 13:01:51 +02:00
Arne Morten Kvarving
fca83318aa changed: remove SET_INT_PROP macro usage 2020-08-27 13:01:51 +02:00
Arne Morten Kvarving
a79c37a041 changed: remove SET_STRING_PROP macro usage 2020-08-27 13:01:51 +02:00
Arne Morten Kvarving
0e71c0e29b changed: remove SET_BOOL_PROP macro usage 2020-08-27 13:01:51 +02:00
Arne Morten Kvarving
e8248b44ff changed: remove NEW_TYPE_TAG macro usage 2020-08-27 13:01:51 +02:00
Arne Morten Kvarving
914053ac3c changed: remove GET_PROP_VALUE macro usage 2020-08-27 13:01:51 +02:00
Joakim Hove
3c565ef59e Use const_cast< > in variant serialization 2020-08-27 11:01:22 +02:00
Markus Blatt
70805ca1d4
Merge pull request #2728 from blattms/fix-parallel-rebased
Fix parallel ebos
2020-08-27 10:54:14 +02:00
Markus Blatt
944b646092 Add WELLDIMS to datafile of test_ecl_output.
Somehow the checking is now stricter for the tests due to
the changes in eclbasevanguard. Fixes test failures of
test_ecl_output.
2020-08-27 09:05:09 +02:00
Markus Blatt
410ad3bc82 Only setup message limiter if logger is actually there.
Needed for test_ecl and test_ecl_output.
2020-08-27 09:05:09 +02:00
Markus Blatt
2b557a42ff Make unique_ptr instantiation exception safe for the kids in readDeck. 2020-08-27 09:05:09 +02:00
Markus Blatt
322bc8d9cc only check deck on process 0 2020-08-27 09:05:09 +02:00
Markus Blatt
c958034d26 Adapt and use readDeck from EclipseBaseVanguard, too.
This reduces code duplication ad should fix the bad_cast exception
when running ebos in parallel.
2020-08-27 09:05:09 +02:00