Commit Graph

27 Commits

Author SHA1 Message Date
hnil
980a160651 -- added MECH to runspec 2023-08-16 14:15:23 +02:00
Svenn Tveit
c498234879 Re-added deleted code 2023-04-12 14:28:02 +02:00
Svenn Tveit
2502e05a6f Move H2STORE test below CO2STORE tests 2023-04-12 14:28:01 +02:00
Svenn Tveit
c7713c41f5 Added H2STORE keyword.
Activates H2-Brine PVT models in opm-material.
2023-04-12 14:28:01 +02:00
Tor Harald Sandve
5e054cdec9 allow for co2store + gas + water 2022-11-30 11:28:06 +01:00
Bård Skaflestad
d6a3405549 Ensure At Least One Well List per Well
If the input model sets the maximum number of well lists per well
to zero (or negative), then treat this as if the limit is defaulted
and reset the value to the default (one).
2022-10-27 16:15:24 +02:00
Joakim Hove
aede532b9a Filesystem rename parser/eclipse/ input/eclipse 2022-01-02 14:32:14 +01:00
Joakim Hove
0d565f9c10 Nupcol updates 2021-05-28 00:59:09 +02:00
Joakim Hove
2e52d46b68 Add class Nupcol 2021-05-21 14:40:36 +02:00
Bård Skaflestad
796318409d Partially Internalise AQUDIMS in Runspec
This commit internalises the items NANAQU (5) and NCAMAX (6) of the
AQUDIMS keyword into a new structure

    AquiferDimensions

hooked up to the 'Runspec' class.  This is in preparation of adding
restart output for analytic aquifers (Carter-Tracy and Fetkovich).
2021-03-09 22:29:00 +01:00
Tor Harald Sandve
195749d7bf add CO2STORE as alias for CO2STOR 2021-01-22 14:31:00 +01:00
Bård Skaflestad
5816d2dbd2 Push Compatibility Check To Parser Level
Leverage the 'prohibits'/'requires' support to enforce earlier
keyword compatibility checks.  This plays better with parallel runs.
2020-12-17 21:33:11 +01:00
Bård Skaflestad
1ca668b67c Make Saturation Function Family Available in Runspec
This information is generally useful so we should have a single
source of truth and not have to reimplement the logic every time
we need it.
2020-12-17 21:33:11 +01:00
Bård Skaflestad
ad8209d882 Relax EPS Activation Criterion
Existence of certain EPS keywords (SWL, SGCR, others) is sufficient
to activate the end-point scaling option.  The deck does not *need*
to have the ENDSCALE keyword in these cases, but it is recommended
that ENDSCALE nevertheless be used.

On the other hand, certain other keywords do require the presence of
ENDSCALE so record this in "requires" clauses.
2020-12-16 17:47:00 +01:00
Williham Williham Totland
6d2f8cca5c Adds type information to integer literals. 2020-09-29 13:54:21 +02:00
Tor Harald Sandve
f3e209b740 Add CO2STOR keyword in Runspec section 2020-09-22 14:53:35 +02:00
Arne Morten Kvarving
9b22cab024 changed: relocate and rename StoneType enum
unfortunate naming, unfortunate location
2020-03-10 11:09:49 +01:00
Bård Skaflestad
7c1b77ec5d Internalise TOLCRIT Keyword
This commit internalises the TOLCRIT keyword into the EclipseState
for subsequent use in determining critical saturations when
processing saturation function keywords such as SGOF and SOF3.
Specifically, we add a new type

    Opm::SatFuncControls

that, at present, stores only the TOLCRIT data item (defaulted to
the keyword's default value).  Client code can then retrieve the
value by calling the

    SatFuncControls::minimumRelpermMobilityThreshold()

member function.

Add a new data member of this type to the Opm::Runspec class so that
we complete the chain from EclipseState, and a few simple unit tests
to exercise the expected functionality.
2020-01-24 20:58:38 +01:00
Bård Skaflestad
c013639b51 Make Most Unit Tests Independent of LibECL
This commit switches a set of OPM-Common's unit tests away from
using direct calls to libecl functions and into using base types
from OPM-Common itself (along with Boost.Filesystem).

In particular summary related queries are replaced by calls to ESmry
member functions (wrapped in libecl-like interfaces to minimise code
changes).  We disable checks on unit strings since ESmry currently
does not have a way of associating those with individual variables.
2019-10-14 06:13:38 -05:00
Joakim Hove
07b2f47c7d Add micro class to contain information from ACTDIMS keyword 2019-08-28 23:22:02 +02:00
Franz G. Fuchs
6efe981234 use correct size of bit set, test added 2019-06-25 13:32:11 +02:00
Joakim Hove
2cd6fa2f49 Add overloads without ParseContext and ErrorGuard - update all tests 2019-01-04 13:59:28 +01:00
Bård Skaflestad
da2b6aec77 Runspec: Add Support for Parsing Limited Subset of WSEGDIMS
Capture the maximum number of segmented wells, the maximum number of
segments per well, and the maximum number of lateral branches per
(segmented) well.

These maximum sizes are needed to correctly define portions of the
contents of the INTEHEAD vector in a restart step.
2018-03-22 11:14:51 +01:00
Kai Bao
bb4936c6c1 adding POLYMW to phase class in Runspec 2018-03-09 08:38:10 +01:00
Bård Skaflestad
af07812167 Runspec: Add Support for Parsing Limited Subset of WELLDIMS
Capture the maximum number of connections/perforations per well, the
maximum number of wells (or sub-groups) per well/node group, and the
maximum number of well/node groups in the field.

These maximum sizes are needed to correctly define the portions of
the contents of the INTEHEAD vector in a restart step.
2018-03-08 10:50:47 +01:00
Tor Harald Sandve
bb0f4f2886 Add polymer to phase class in Runspec
Also add test for solvent in RunspecTests.
2017-06-16 14:01:10 +02:00
Jørgen Kvalsvik
e884b0664c Redesign cmake
Tune the makefile according to new principles, which adds a few bells
and whistles and for clarity.

Synopsis:

* The dependency on opm-common is completely gone. This is reflected in
  travis and appveyor as well. No non-kitware cmake modules are used.
* Directories are flattened, quite a bit - source code is located in the
  lib/ directory if it belongs to opm-parser, and external/ if third
  party.
* The sibling build feature is implemented through cmake's
  export(PACKAGE) rather than implicitly looking through source files.
* Targets explicitly set required public and private include
  directories, compile options and definitions, which cmake will handle
  and propagate
* opm-parser-config.cmake for downstream users is now provided.
* Dependencies are set up using targets. In the future, when cmake 3.x+
  can be used, these should be either targets from newer Find modules,
  or interface libraries.
* Fewer system specific assumptions are coded in, instead we assume
  cmake or users set up system specific details.
* All module wide configuration and looking up libraries is handled in
  the root makefile - all sub directories only set up libraries and
  compile options for the module in question.
* Targets are defined and links handled transitively because cmake now
  is told about them. ${module_LIBRARIES} variables are gone.

This is largely guided by the principles outlined in
https://rix0r.nl/blog/2015/08/13/cmake-guide/

Most source files are just moved - if they have some content change then
it's nothing more than include fixes or similar in order to make them
compile.
2017-06-01 15:29:23 +02:00