This commit moves the parseEclipseFile() function from the
upscale_relperm.cpp example to the RelPermUpscalerHelper class[%].
This, in turn, enables using the same implementation in most
relevant example utilities.
While here, also call the centralised {get,set}VoigtValue()
functions rather than local implementations.
[%] Suggested by: Arne Morten Kvarving
This commit switches function addNonStandardUpscalingKeywords() to
using a reference to a modifiable Parser rather than ParserPtr.
While here, also switch to using std::make_shared<>() when
constructing the parser object.
opm-parser#677 changes the return types for the Deck family of classes.
This patch fixes all broken code from that patch set.
https://github.com/OPM/opm-parser/pull/677
This commit replaces the hard-coded conversion factor from mD to
m**2 (metres squared) with an expression based on the Units.hpp
facility of module opm-core.
Note: This may introduce slight changes to the upscaling result due
to reduced rounding error in the unit conversions.
We need access to the raw, unconverted property vectors to use the
existing algorithm for defining (e.g.,) capillary pressure ranges.
This subtle point was missed during the initial transition to using
the opm-parser module for input handling.
This commit replaces the hard-coded conversion factor from mD to
m**2 (metres squared) with an expression based on the Units.hpp
facility of module opm-core.
Note: This may introduce slight changes to the upscaling result due
to reduced rounding error in the unit conversions.
We need access to the raw, unconverted property vectors to use the
existing algorithm for defining (e.g.,) capillary pressure ranges.
This subtle point was missed during the initial transition to using
the opm-parser module for input handling.
This means that PINCH must be used in the input deck,
whereas before, z_tolerance was available as a program
parameter (but only for some programs). A benefit is that
all programs will now uniformly accept PINCH in the input
decks.
this is currently just "RHO", an non-standard addition for
opm-upscaling and needs to be added to the Eclipse parser manually
before it is set loose on the deck file...
we need to call mpi_init when compiled against mpi (in particular mpich)
even if running with a single node.
this fixes this across all apps in a uniform way (the dune-intended approach)
The <have_boost_redef.hpp> header was introduced (commit
OPM/opm-core@82369f9) as a work-around for a particular interaction
in the Autotools-based setup of OPM-Core and the Dune core modules.
Notably, Dune's "Enable" trick for Boost failed on some older
Autoconf systems. Now that we're using CMake, however, that kluge
is no longer needed because OPM-Core always
#define HAVE_BOOST 1
i.e., as an explict true/false value.
Therefore, we need no longer include <have_boost_redef.hpp> . The
header will be removed at a later time.
In the 4.6.x range of GNU compilers, the cmath header include math.h, adding
isinf() and isnan() to the global namespace as well as std. When used in if
statements, there is then an ambiguity between the std version which returns
bool and the global function which returns int; for more details see:
<http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48891>
If we qualify the functions explicitly with their namespace, this error goes
away.
- Code using the ...Upscaler classes must supply an SI-converted parser.
- Code manipulating arrays of PERMX values (for example) must take care
to use the non-converted values, as it is usually written with millidarcies.