Commit Graph

10150 Commits

Author SHA1 Message Date
Tor Harald Sandve
614025b28b clean up the logging message 2019-10-18 16:08:07 +02:00
Tor Harald Sandve
5dcfd1c8f1 check bhp and thp constrains first 2019-10-18 16:08:07 +02:00
Tor Harald Sandve
4fea282934 fixup-rebase 2019-10-18 16:08:07 +02:00
Atgeirr Flø Rasmussen
32b31a2606 Address review comments. 2019-10-18 16:08:07 +02:00
Atgeirr Flø Rasmussen
f618073492 Some small logic fixes.
- Make sure to reopen revived wells.
 - Do not use thp limit for potential calculations when well is bhp controlled.
 - Stopped wells do not check controls.
 - Set thp to control when appropriate in updateWellStateWithTarget().
2019-10-18 16:08:07 +02:00
Atgeirr Flø Rasmussen
6b011c1bfb Use new method to determine operability under THP control. 2019-10-18 16:08:07 +02:00
Atgeirr Flø Rasmussen
a536b90891 Improve stopped wells logic and log messages. 2019-10-18 16:08:07 +02:00
Atgeirr Flø Rasmussen
2b9f5fb4fb Use robustSolveBhpAtThpLimitProd() for potentials and initialization. 2019-10-18 16:08:07 +02:00
Atgeirr Flø Rasmussen
7581275b03 Add robustSolveBhpAtThpLimitProd() method. 2019-10-18 16:08:07 +02:00
Atgeirr Flø Rasmussen
d5d890ff23 Make checkConstraints() stop after first broken constraint. 2019-10-18 16:08:07 +02:00
Atgeirr Flø Rasmussen
e8daf663ab Solve the bhp = bhpfunc(thp, rate(bhp)) equation better. 2019-10-18 16:08:07 +02:00
Atgeirr Flø Rasmussen
f55c9647b7 Allow up to factor 3 extrapolation in VFP. 2019-10-18 16:08:07 +02:00
Tor Harald Sandve
c21428419a support REIN for solvent 2019-10-18 16:08:07 +02:00
Tor Harald Sandve
0b96b31d8c add some safaguards for trivial guiderates 2019-10-18 16:08:07 +02:00
Tor Harald Sandve
88d8e2a68e don't set the control from the schedule, unfix the restart issue 2019-10-18 16:08:07 +02:00
Tor Harald Sandve
f71d6c8623 implement proper guiderate support
Tested on simple problems including GUIDERAT
2019-10-18 16:08:07 +02:00
Tor Harald Sandve
53896ffca8 Use well and group controls from opm-common.
This PR remove the usage of well_control_ from opm-core
and instead uses the control classes for wells and groups
from opm-common.
This PR also removes the usage of the group classes from
opm-core.
2019-10-18 16:08:07 +02:00
Arne Morten Kvarving
ba4b965785
Merge pull request #2024 from totto82/cleanMissingFeatureList
Remove supported keywords from the missing feature list
2019-10-18 15:11:51 +02:00
Tor Harald Sandve
b053558b3f Remove supported keywords from the missing feature list 2019-10-18 12:56:12 +02:00
Tor Harald Sandve
cf7c8552a5 Always allocate buffers when restarting 2019-10-18 09:07:06 +02:00
Joakim Hove
3ef94af74e
Merge pull request #2067 from joakim-hove/missingR
Missing features on R
2019-10-17 14:54:38 +02:00
dr-robertk
18c31bda0b
Merge pull request #2047 from totto82/enableRockcompFlow
enable rockcomp in flow
2019-10-17 14:12:35 +02:00
Steinar Foss
973c039853 added keywords beginnign w/ M. 2019-10-17 13:05:15 +02:00
Tor Harald Sandve
8c7d7e3d2e enables rockcomp in flow 2019-10-17 12:44:49 +02:00
Joakim Hove
a6c890e274 Missing features on R 2019-10-17 11:29:33 +02:00
Bård Skaflestad
7296e7fe82
Merge pull request #2060 from akva2/decouple-libecl-final
remove libecl dependency
2019-10-16 22:18:42 -05:00
Joakim Hove
d7561aabd1
Merge pull request #2065 from stefoss23/add_keywords_L
Added keywords beginning w/ L.
2019-10-16 22:31:40 +02:00
Joakim Hove
4490f31540 stdout logging only for rank 0 2019-10-16 15:19:00 +02:00
Steinar Foss
6ad1471e9f added keywords beginning w/ L.
...

...
2019-10-16 13:46:22 +02:00
Joakim Hove
337f36bac1
Merge pull request #2057 from stefoss23/add_keywords_IJKL
Added keywords beginning w/ I, J, K and L.
2019-10-15 18:26:53 +02:00
Arne Morten Kvarving
8261a51e6e remove libecl dependency 2019-10-15 14:36:05 +02:00
dr-robertk
abf793726d
Merge pull request #2046 from totto82/sync_logging
Add logging in ebos
2019-10-15 14:19:34 +02:00
Markus Blatt
0bc1630cc9 CollectToIORank: Made localIdxToGlobalIdx lookup working.
Since the indexMaps do not contain the global element index anymore
(but the global id). The old code did not work anymore.

Unfortunately, we are using CpGrid specific functions (scatterData)
to get the mapping. Therefore this might be broken if other grids are
used.
2019-10-15 14:03:24 +02:00
Markus Blatt
9735bdadfc Load restart with global grid only available on one processor.
For this the master (IO) rank loads the RestartValue and then
broadcasts it to the other ranks.
2019-10-15 14:03:24 +02:00
Atgeirr Flø Rasmussen
11aeb82e8e
Merge pull request #2058 from blattms/fix-unused-variable-wells
Fixes unused variable warning in standard wells.
2019-10-15 10:07:18 +02:00
Joakim Hove
ab779b4213
Merge pull request #2056 from goncalvesmachadoc/goncalvesmachadoc-missingFeaturesList
Add few missing unsupported keywords to the list
2019-10-15 09:47:05 +02:00
Markus Blatt
7e5c810125 Fixes unused variable warning in standard wells.
Only occurs when compiling with -DNDEBUG since the body of the
for-loop is an assert using the loop variable. Loop is now deactivated.
2019-10-15 09:16:36 +02:00
Joakim Hove
1777fc5a03
Merge pull request #2028 from joakim-hove/rm-props-iget
Adapt to removal of GridProperty::iget()
2019-10-15 07:54:03 +02:00
Bård Skaflestad
aaae8a4f49
Merge pull request #2052 from bska/rewrite-ecl-output-test
Reimplement 'test_ecl_output' Unit Test Using ESmry
2019-10-14 21:31:37 -05:00
Bård Skaflestad
e33be89e6d Reimplement 'test_ecl_output' Unit Test Using ESmry
This commit switches the 'test_ecl_output' unit test to using the
EclIO::ESmry class from OPM-Common.  We add simple alternative
implementations of ecl_get_field_var() and ecl_get_general_var() in
terms of ESmry to avoid rewriting the test code itself.

As class ESmry does currently not support reading non-unified
(separate) summary files (.S000n), we temporarily switch the deck to
using unified output.
2019-10-14 19:43:11 -05:00
Steinar Foss
0510173408 MissingFeatures.cpp: added keywords beginning w/ I, J, K and L. 2019-10-14 15:48:21 +02:00
Markus Blatt
7784d53198 Fix wrong globalSize.
That has gotten a little to big and hence the vector
globalCartesianIndex_ and DistributedIndexMapping::ranks_ ,too.
2019-10-14 14:32:22 +02:00
Markus Blatt
1124b82f05 Move translation of global cartesian index of global grid to IoRank.
Previously, it was still assumed that all ranks knew the global grid
and each map on CollectDataToIORank::indexMaps_ was a mapping of
send/receive index to the index of the cell using the mapper of  the
corresponding global grid.

With this patch inside of CollectDataToIORank::DistributeIndexMapping
indexMaps is a mapping from send/receive index to global cartesian
index until the destructor is run. Inside of the destructor of the
iorank the remapping to mapped index of the global grid happens and
the ranks array is computed.
2019-10-14 14:32:22 +02:00
Markus Blatt
39979ad3f7 Only access globalTransmissibility on IO rank in EclWriter.
For other ranks this will not be available in the future.
2019-10-14 14:32:22 +02:00
Markus Blatt
5812b767ef Always initialize mpiRank in constructor and use it consistently.
We cannot use grid->comm().rank() to check whether we are an
IORank since for an unbalanced grid this will always be zero in the
master branch.
2019-10-14 14:32:22 +02:00
Markus Blatt
cb396dfac6 Make sure subclass functions are not called before subclass is initialized.
This at least slightly improves the old design. In that design the
subclass had no own constructor but inherited the one of the base class.
That base class constructor called certain subclass
functions (createGrids_, filterConnections_, updateOutputDir_, and
finalizeInit_)that would initialize raw pointers of the
subclass. Hence subclasses where not allowed to have non-pod members
and those used later (e.g. deleted in the destructor) had to be
initialized in these functions.

The new (still ugly) design introduces constructors into the
subclasses and skips inheriting constructors. Now one must call a base
class function classImplementationInit which will still call the
functions createGrids_, filterConnections_, updateOutputDir_, and
finalizeInit_, but at least at this point the baseclass is fully
constructed and the subclass is constructed as much as
possible/needed (non-pod types will be initialized now.)
2019-10-14 14:32:22 +02:00
Markus Blatt
4e6bbddbf5 Use global grid only on IO process in EclWriter 2019-10-14 14:32:22 +02:00
Markus Blatt
bcff77fb4a Construct and ECLTranmissibility only on IO process, 2019-10-14 14:32:22 +02:00
Markus Blatt
42c20171eb make and use equilGrid only on IO process.
With the change of CPgrid to only holding the grid on one process
it will be an empty grid on all other processes. This has really
strange side effects like Schedule::filterConnections removing all
well perforations on theses processes.
2019-10-14 14:32:22 +02:00
Markus Blatt
5001645d6a Make code compile without MPI. 2019-10-14 14:32:22 +02:00