Commit Graph

802 Commits

Author SHA1 Message Date
Andreas Lauser
ec0ac4869c consolidate the unit system to opm-parser
since the unit code within opm-parser is now a drop-in replacement,
this simplifies things and make them less error-prone.

unfortunately, this requires quite a few PRs. (most are pretty
trivial, though.)
2018-01-02 14:28:06 +01:00
Andreas Lauser
5b40f3e643 set the Rv and Rs factors to the saturated values for cells which have no gas and no oil
the purpose of this is to get a more defined behaviour when doing the
gravity correction/upstream cell determination in the flux term.

I consider this to be just a kludge, so if anyone has a better idea of
what the composition for the non-existing gas and oil phases is,
please tell me. (note that generic compositional models do not exhibit
this issue because the composition of all fluids is always fully
defined because each component is assumed to dissolve in every phase.)
2018-01-02 14:28:06 +01:00
Joakim Hove
39647c6ad3 shared_ptr<EclipseGrid> -> const EclipseGrid& 2018-01-02 14:28:06 +01:00
Pål Grønås Drange
877bd70c54 transmult and initconfig are ref's, use ref for EclipseState constructor 2018-01-02 14:28:06 +01:00
Tor Harald Sandve
57548be345 Fix two phase EQUIL initialization 2018-01-02 14:28:06 +01:00
Liu Ming
a9ae704a35 it should be the same number in EQLNUM. 2018-01-02 14:28:06 +01:00
Liu Ming
d3ea24f653 use correct region number. 2018-01-02 14:28:06 +01:00
Liu Ming
f089b00a30 Rise up a warning if equil region has no active cells. 2018-01-02 14:28:06 +01:00
Markus Blatt
9e4af968db Fix incomplete type error for std::ofstream in examples
On my system I got
```c++
error: variable ‘std::ofstream file’ has initializer but incomplete type
         std::ofstream file(fname.str().c_str());
```
This is fixed with this commit by including fstream. Previously,
this include might have happened implicitely.
2018-01-02 14:28:06 +01:00
Markus Blatt
c32ff2b404 Prevent dereferencing the end iterator.
This happened for empty regions and surfaced when compiling
with "-D_GLIBCXX_DEBUG  -DDEBUG -DGLIBCXX_FORCE_NEW".
2018-01-02 14:28:06 +01:00
Pål Grønås Drange
fac5dd017d Using getInputGrid API from Parser, changed GridManager to no longer accept Deck in constructor 2018-01-02 14:28:06 +01:00
Pål Grønås Drange
e6a4cda9a8 Using API get3DProperties() 2018-01-02 14:28:06 +01:00
Pål Grønås Drange
de0aeac570 Updated opm-core to use new EclipseState API in opm-parser 2018-01-02 14:28:06 +01:00
Joakim Hove
12991490bd Replaced SimulatorState -> SimulationDatacontainer
Have removed the SimulatorState base class, and instead replaced with
the SimulationDatacontainer class from opm-common. The SimulatorState
objects were typcially created with a default constructor, and then
explicitly initialized with a SimulatorState::init() method. For the
SimulationDataContainer RAII is employed; the init( ) has been removed -
and there is no default constructor.
2018-01-02 14:28:06 +01:00
Liu Ming
6fb9db5dcf rename ParseMode as ParseContext. 2018-01-02 14:28:06 +01:00
Liu Ming
7ce3151081 rename ParseMode in examples folder. 2018-01-02 14:28:06 +01:00
Jørgen Kvalsvik
32c5b5e862 Remove Equil + EquilWrapper, replace with upstream
Upstream (opm-parser) now provides a better Equil + EquilRecord, and
simultaneously deprecated EquilWrapper. This patch fixes the resulting
breakage.

One important note: The new Equil does not expose integers for live
oil/wet gas initialization procedure methods, but rather booleans
through constRs/constRv methods. This is how the variable behaves
according to the Eclipse reference manual (EQUIL keyword section).

Code has been updated to reflect this.
2018-01-02 14:28:06 +01:00
Jørgen Kvalsvik
04a368cfc6 Add missing opm-parser headers
opm-parser pull #695
https://github.com/OPM/opm-parser/pull/695
2018-01-02 14:28:06 +01:00
Jørgen Kvalsvik
da411e49a5 Fixes includes wrt opm-parser PR-656
Several files stopped compiling due to relying on opm-parser headers
doing includes. From opm-parser PR-656
https://github.com/OPM/opm-parser/pull/656 this assumption is no longer
valid.
2018-01-02 14:28:06 +01:00
Joakim Hove
0cf00f240b Changed to use new table api from opm-parser. 2018-01-02 14:28:06 +01:00
Tor Harald Sandve
d77e33b5dc Use cell depths based on averaging cell corners 2018-01-02 14:28:06 +01:00
Tor Harald Sandve
ca902168ed Change the number of integration points in the initialization
The number is changed from 100->2000 to increase accuracy.
2018-01-02 14:28:06 +01:00
Arne Morten Kvarving
e11257d8ce fix Equilibration test by adding some fuzz
Backports parts of a7b1e69a45c14ec88a82b92ee704424f1ea1b41c
2018-01-02 14:28:06 +01:00
Andreas Lauser
b04db90cfe use the error macros from opm-common 2018-01-02 14:28:06 +01:00
Joakim Hove
cbc41cfbf7 Relocated warning headers. 2018-01-02 14:28:06 +01:00
Joakim Hove
f7da1ca81c Fxied bug in table-container use. 2018-01-02 14:28:06 +01:00
Joakim Hove
4e620e7eb6 Changed Table code to use TableContainer 2018-01-02 14:28:06 +01:00
osae
cb9d8709f9 Support for equil-initialisation for datum depth outside oil zone. 2018-01-02 14:28:06 +01:00
Atgeirr Flø Rasmussen
ecb7dec752 Make grid in deck have larger number of cells.
This makes some tests succeed that use this deck only
for its properties and not its grid: if the grid in the
deck has fewer cells than the grid that is used for the
test we will fail in the SATNUM mapping.
2018-01-02 14:28:06 +01:00
Bård Skaflestad
b337714d4d RegionMapping<>: Support arbitrary region IDs
This commit introduces a new public method, activeRegions(), that
retrieves those region IDs that contain at least one active cell.
We furthermore extend the cells() method to support lookup of
arbitrary region IDs.  Non-active region IDs produce empty cell
ranges.

Intended use case is

    for (const auto& reg : rmap.activeRegions()) {
        const auto& c = rmap.cells(reg);

        // use c
    }
2018-01-02 14:28:06 +01:00
Bård Skaflestad
b08f89e68a convertSats(): Transpose loop nest for locality of data 2018-01-02 14:28:06 +01:00
Bård Skaflestad
2cbf99fcde Mark non-template functions in headers as 'inline' 2018-01-02 14:28:06 +01:00
babrodtk
f1e102a54e Fixed several warnings 2018-01-02 14:28:06 +01:00
Andreas Lauser
973e89d4a4 InitStateEquil: fix valgrind complaint about uninitialized values
it seems that it was pure luck that this worked so far!
2018-01-02 14:28:06 +01:00
Joakim Hove
fd3a0ad136 Using TableManager to get tables. 2018-01-02 14:28:06 +01:00
Atgeirr Flø Rasmussen
1375968541 Suppress warnings. 2018-01-02 14:28:06 +01:00
Joakim Hove
94ea28a2a0 Updated to use ParseMode. 2018-01-02 14:28:06 +01:00
Arne Morten Kvarving
9290cfe32e fix tests
- cannot use BOOST_CHECK_CLOSE around 0 due to a relative test
- slacken a tolerance significantly
2018-01-02 14:28:06 +01:00
Atgeirr Flø Rasmussen
fa53925642 Make some programs stricter about parameter parsing.
This applies to programs which always require at least one parameter.
2018-01-02 14:28:06 +01:00
Atgeirr Flø Rasmussen
fedc92d1b4 Fix unneeded-internal-declaration warning.
Again related to anonymous namespace function only being used
in template functions.
2018-01-02 14:28:06 +01:00
Markus Blatt
a8ac4f053d Put spaces around operators. 2018-01-02 14:28:06 +01:00
Markus Blatt
b4b9557b85 Rely on auto instead of querying the explicit type
via e.g. typename UgGridHelpers::Face2VerticesTraits<Grid>::Type
2018-01-02 14:28:06 +01:00
Markus Blatt
b942633b3c Ported initStateEquil to using the GridHelpers.
Currently the keyword EQUIL is not supported by the fully
implicit blackoil simulator when using CpGrid. This
commit is a first step towards this as it makes the
implementation of initStateEquil generic.
2018-01-02 14:28:06 +01:00
Atgeirr Flø Rasmussen
2770843d6f Silence unused argument warning. 2018-01-02 14:28:06 +01:00
Andreas Lauser
baee24ecde PVT properties: allow them to be temperature dependent
Note that this patch does not introduce any real temperature
dependence but only changes the APIs for the viscosity and for the
density related methods. Note that I also don't like the fact that
this requires so many changes to so many files, but with the current
design of the property classes I cannot see a way to avoid this...
2018-01-02 14:28:06 +01:00
Robert K
ab75ba3ee5 remove unused typedef to avoid compiler warning and keep code clean. 2018-01-02 14:28:06 +01:00
Andreas Lauser
87adfef018 adapt the the table related API changes of opm-parser 2018-01-02 14:28:06 +01:00
Tor Harald Sandve
18dd2c6e39 Include goc and woc in the span for the phase pressure calculation 2018-01-02 14:28:06 +01:00
Tor Harald Sandve
02f6d8f8eb Remove fix for GOC and WOC above/below reservoir 2018-01-02 14:28:06 +01:00
Tor Harald Sandve
efffb8c385 Fix sign error in the specified oil pressures at at WOC and GOC
The oil pressure at the contact for the special cases:

contact	location	po(contact)
GOC 	above 	-inf
GOC 	below 	+inf
WOC 	above 	-inf
WOC 	below 	+inf
2018-01-02 14:28:06 +01:00