Commit Graph

830 Commits

Author SHA1 Message Date
Arne Morten Kvarving
56df430bd6 readDeck: make the ParseContext an internal detail 2023-01-17 09:36:31 +01:00
Arne Morten Kvarving
cc4fd831a8 add missing WellTestConfig.hpp includes 2023-01-17 06:04:56 +01:00
Arne Morten Kvarving
60b23e8bb1 move ParseContext configuration to readDeck
this way we do not need to include InputErrorAction in Main.hpp
2023-01-16 22:17:39 +01:00
Arne Morten Kvarving
7c797f9e7b add missing FieldData.hpp includes 2023-01-16 11:34:17 +01:00
Arne Morten Kvarving
d8ce4bfd0c add missing WVFPEXP.hpp includes 2023-01-14 00:30:56 +01:00
Markus Blatt
e03227501a
Merge pull request #4376 from akva2/wellmicpproperties_hpp_include
add missing WellMICPProperties.hpp includes
2023-01-13 19:02:00 +01:00
Arne Morten Kvarving
d5fbbdc328 add missing WellEconProductionLimits.hpp includes 2023-01-13 15:26:24 +01:00
Arne Morten Kvarving
f74f2ded8e add missing WellMICPProperties.hpp includes 2023-01-13 14:01:56 +01:00
Arne Morten Kvarving
97f76412ae add missing WellPolymerProperties.hpp includes 2023-01-13 13:02:37 +01:00
Arne Morten Kvarving
325963fb63 add missing WellTracerProperties.hpp includes 2023-01-13 12:03:46 +01:00
Arne Morten Kvarving
131f52773f add missing WellBrineProperties.hpp includes 2023-01-13 11:14:18 +01:00
Arne Morten Kvarving
a0f85c8a93 add missing WellFoamProperties.hpp includes 2023-01-13 10:18:26 +01:00
Arne Morten Kvarving
351181f355 add missing WellSegments.hpp includes 2023-01-12 14:37:32 +01:00
Arne Morten Kvarving
7f7b373a2d add missing WellConnections.hpp includes 2023-01-12 12:24:32 +01:00
Arne Morten Kvarving
e2b8092894 add missing RFTConfig.hpp includes 2023-01-12 10:39:49 +01:00
Arne Morten Kvarving
30c5069519 add missing UDQConfig.hpp includes 2023-01-12 09:39:36 +01:00
Arne Morten Kvarving
bc5aad9554 add missing UDQActive.hpp include 2023-01-11 15:25:56 +01:00
Arne Morten Kvarving
88ece0fdd8 add missing Actions.hpp includes 2023-01-11 13:52:11 +01:00
Arne Morten Kvarving
09dc3d9449 add missing Balance.hpp includes 2023-01-11 11:26:25 +01:00
Arne Morten Kvarving
7034b5528d add missing ExtNetwork.hpp includes 2023-01-11 09:47:15 +01:00
Arne Morten Kvarving
5236a443f8 add missing GConSale.hpp includes 2023-01-11 08:49:47 +01:00
Arne Morten Kvarving
4e21e96660 add missing GConSump.hpp includes 2023-01-10 15:00:25 +01:00
Arne Morten Kvarving
7fffe402cd add missing NameOrder.hpp includes 2023-01-10 12:47:00 +01:00
Arne Morten Kvarving
4bdec3a58b avoid GasLiftOpt.hpp where possible
and add where necessary
2023-01-10 09:54:33 +01:00
Arne Morten Kvarving
b010a1717a add missing RPTConfig.hpp includes 2023-01-09 15:22:12 +01:00
Arne Morten Kvarving
1dd0897eca add missing GuideRateConfig.hpp includes 2023-01-09 14:26:03 +01:00
Arne Morten Kvarving
eedd646523 avoid double underscored symbol 2023-01-03 16:34:49 +01:00
Arne Morten Kvarving
17d54c1416 setupZoltanParams: avoid use of sstream 2023-01-02 15:24:03 +01:00
Arne Morten Kvarving
254f9c0388 DeferredLoggingHelpers: avoid using stringstream 2022-12-23 09:40:10 +01:00
Arne Morten Kvarving
f17a90170d use exception classes from opm-common 2022-12-13 12:56:13 +01:00
Atgeirr Flø Rasmussen
130f552dac Must set location for every variable. 2022-12-07 13:37:38 +01:00
Atgeirr Flø Rasmussen
18f6f5e4e3 Push index map to Damaris for output ordering. 2022-12-07 13:05:44 +01:00
Torbjørn Skille
8dec3958bd Updates related to unsupported keywords and options
Majority of unsupported keywords and unsupported keyword options are now critical (simulator will stop).
2022-12-02 12:46:43 +01:00
Bård Skaflestad
e3d05d1129 Promote Segment Data in WRFTPLT to Supported Status
While there are a few arrays we admittedly don't create, the level
of support is now sufficiently complete that declaring values other
than 'NO' as "supported" is warranted.
2022-11-28 11:33:34 +01:00
Arne Morten Kvarving
c7016854d9 changed: make the deck an implementation detail in Opm::readDeck 2022-11-24 13:00:38 +01:00
Bård Skaflestad
a49f0bc8c2
Merge pull request #4189 from plgbrts/rwgsalt
removed RWGSALT from unsupported keywords list
2022-11-01 22:11:31 +01:00
OPMUSER
af922366e8 Remove KRNUM from Unsupported Keyword List (Back-Port)
Remove KRNUM from Unsupported Keyword List, as it is now supported. This should be back-ported, to prevent a warning stating the keyword is not supported.
2022-10-27 20:19:05 +08:00
Paul Egberts
f294e2c832 removed RWGSALT from unsupported keywords list 2022-10-20 11:38:09 +02:00
Atgeirr Flø Rasmussen
1eec214c89
Merge pull request #4169 from blattms/dune-2.9-fix-deprecations
Dune 2.9 fix deprecations
2022-10-17 15:17:29 +02:00
Markus Blatt
8d522a2c42 Get rid deprecation warning for newer DUNE versions. 2022-10-14 21:29:09 +02:00
Bård Skaflestad
629edd3919 Add Serialization Support for std::bitset<3>
Needed in upcoming work for communicating dynamic phase quantities
per segment in a multisegmented well.
2022-10-14 18:29:52 +02:00
Arne Morten Kvarving
ecc36f6ce8 fix cmake handling
- use imported target for linking
- use separate damaris cmake script
- handle HAVE_DAMARIS config variable in the usual way

fixing issues when user does not provide an outputDir via a command_line

avoid adding damaris's command lines when we dont have damaris
2022-10-13 12:23:06 +02:00
Atgeirr Flø Rasmussen
d27ed995bf Use OpmLog. 2022-10-13 12:23:06 +02:00
Atgeirr Flø Rasmussen
c1b3c5e973 Rename option to EnableDamarisOutputCollective. 2022-10-13 12:23:06 +02:00
Atgeirr Flø Rasmussen
066897bbf9 Remove file added by mistake. 2022-10-13 12:23:06 +02:00
Atgeirr Flø Rasmussen
430d8995eb Reformatting with clang-format. 2022-10-13 12:23:06 +02:00
Atgeirr Flø Rasmussen
76bacff3cf Move XML template to separate file, fix formatting, and use path. 2022-10-13 12:23:06 +02:00
Atgeirr Flø Rasmussen
fd1d1d15a4 Bugfix: remove quotes around _File_Mode. 2022-10-13 12:23:06 +02:00
Atgeirr Flø Rasmussen
926c213628 Make ensureOutputDirExists() callable outside readDeck.cpp, and use it.
This is necessary because when using Damaris we must have the output dir ready
when we initialize Damaris. In the existing code, this was ensured only
from the setupLogging() call.
2022-10-13 12:23:06 +02:00
Atgeirr Flø Rasmussen
e347959d79 Set _PATH_REGEX_ for non-async, also reformat. 2022-10-13 12:23:06 +02:00
Atgeirr Flø Rasmussen
408fadca8e Add #define to fix compile on clang.
Necessary due to primitive check for std::unique_ptr in the XSD library.
2022-10-13 12:23:06 +02:00
Joshua Bowden
fa7af3540c Changes needed to add Damaris functionality. The current state is that we output the pressure field and we use both HDF5 and parallel HDF5.
Damaris initialization is added after InitMpi but before starting the simulation. Damaris will invoke a separate core for writing in
parallel and leave the rest of cores for the simulator. The main changes are in main where start_damaris and then in eclwriterm where
we use damaris to output the PRESSURE. To test Damaris one can use --enable-damaris-output=true and to use parallel HDF5 one can use
--enable-async-damaris-output=true (false is the default choice)
2022-10-13 12:23:06 +02:00
Markus Blatt
fcc3690832 Added missing include of config.h in cpp files. 2022-10-12 15:28:38 +02:00
Tor Harald Sandve
408624cf57
Merge pull request #4148 from osae/hysterKillough
Killough hysteresis now supported.
2022-10-12 07:52:35 +02:00
Arne Morten Kvarving
d08ab74630 fixed: add missing includes
and mark parameter maybe_unused
2022-10-06 13:16:46 +02:00
Ove Sævareid
38436df417 Killough hysteresis now supported. 2022-10-05 18:20:00 +02:00
Atgeirr Flø Rasmussen
2542f0c549 Flag NETBALAN as partially supported. 2022-09-30 15:41:11 +02:00
Tor Harald Sandve
1849c95c2c
Merge pull request #4048 from hakonhagland/krnum
Add support for directional relative permeabilities
2022-09-26 09:10:48 +02:00
Arne Morten Kvarving
cbba899fd7 SetupZoltanParams: make sure .json file exists
also check for unknown configuration and make sure supplied
boost version has a supported ptree version
2022-09-16 21:00:40 +02:00
Bård Skaflestad
52d653efee
Merge pull request #4117 from akva2/zoltan_params
added: command line option for zoltan customization
2022-09-16 16:24:24 +02:00
Bård Skaflestad
35ee6fa855
Merge pull request #4109 from akva2/serializer_split
Split up serializer and move main code to opm-common
2022-09-16 16:03:43 +02:00
Arne Morten Kvarving
301c33410a simplify and fix MPI packing for strings 2022-09-16 15:36:43 +02:00
Arne Morten Kvarving
c1c850538a added: command line option for zoltan customization
modeled after the linsolver support. a few built-in presets,
as well as reading options from a json file
2022-09-16 13:51:29 +02:00
Arne Morten Kvarving
7362386d3d changed: split out serialization in separate class
make it a template over a packer.
make EclMpiSerializer an instance of this template with
a MPI based packer, and move broadcasting functionality
to the new class
2022-09-16 13:11:45 +02:00
Arne Morten Kvarving
975e096d4c changed: make container handlers in eclmpiserializer protected
users only use operator()
2022-09-16 11:59:40 +02:00
Arne Morten Kvarving
b1092c1a12 changed: refactor MPIPacker
to limit the overload party, we put packing details for
specific types in separate structs.
emit compiler error if unsupported type is given,
better to detect this on compile time rather than runtime
2022-09-15 14:04:41 +02:00
Håkon Hægland
8b1bcb36bc Adds support for KRNUM 2022-09-14 15:34:41 +02:00
Arne Morten Kvarving
fdb2743ca9 changed: handle tuples in eclmpiserializer
thus we can remove support in MPIPacker
2022-09-13 15:54:37 +02:00
Arne Morten Kvarving
f0bc0f42c6 changed: handle all pairs in eclmpiserializer
thus we can remove support in MPIPacker
2022-09-13 14:44:52 +02:00
Arne Morten Kvarving
f159eb524b changed: handle all vectors in eclmpiserializer
thus we can remove support in MPIPacker
2022-09-13 13:29:47 +02:00
Arne Morten Kvarving
6e83e349d6 changed: move variadic broadcast into EclMpiSerializer 2022-09-13 13:29:47 +02:00
Arne Morten Kvarving
75dbf60f7a
Merge pull request #4093 from akva2/serializer_handle_sets
changed: handle all sets in eclmpiserializer
2022-09-13 13:05:21 +02:00
Bård Skaflestad
7e44ddd2bd
Merge pull request #4100 from totto82/wvfpexp_user
remove WVFPEXP from unsupported keywords
2022-09-13 12:46:58 +02:00
Arne Morten Kvarving
dfa870c313 changed: handle all sets in eclmpiserializer
thus we can remove support in MPIPacker
2022-09-13 12:39:07 +02:00
Arne Morten Kvarving
4cd9272a76 changed: handle all arrays in eclmpiserializer
thus we can remove support in MPIPacker
2022-09-13 12:08:39 +02:00
Arne Morten Kvarving
603e44068c changed: handle all maps in eclmpiserializer
thus we can remove support in MPIPacker
2022-09-13 11:32:37 +02:00
Arne Morten Kvarving
c6beb479d3 changed: remove optional support in MPIPacker
handled by the serializer
2022-09-13 10:49:54 +02:00
Arne Morten Kvarving
4a81e5c92d fixed: remove forwarding in variadic functions
these are l-values so the forward call is a noop. if they
would be pr or x-values, forwarding multiple times is not
correct.
2022-09-13 10:16:55 +02:00
Tor Harald Sandve
683ed0df1f remove WVFPEXP from unsupported keywords 2022-09-13 09:30:04 +02:00
Arne Morten Kvarving
1838b39d2e changed: split ParallelRestart.hpp/cpp in two bits
the mpi serialization bit is put in MPISerializer.hpp/cpp,
while the parallel restart bit stays in ParallelRestart
2022-09-08 13:36:51 +02:00
Arne Morten Kvarving
bb0701ed01 remove unused serialization code 2022-09-07 10:10:16 +02:00
Markus Blatt
15ca494164
Merge pull request #4084 from akva2/tran_distribute_eclmpiserializer
changed: use EclMpiSerializer to distribute transmissibilities
2022-09-07 10:05:05 +02:00
Arne Morten Kvarving
e93e18a55d changed: use EclMpiSerializer to distribute transmissibilities 2022-09-07 09:39:15 +02:00
Arne Morten Kvarving
b53ab951d0 drop primitive serializer support for data:: types 2022-09-06 16:04:02 +02:00
Arne Morten Kvarving
5b81e9eaee fixed: do not include EclMpiSerializer without mpi 2022-09-06 14:03:32 +02:00
Arne Morten Kvarving
1d00ed47ba changed: use EclMpiSerializer in loadParallelRestart 2022-09-06 12:02:07 +02:00
Arne Morten Kvarving
a5c8ed50d5 added: data::SegmentPressures mpiserializer test 2022-09-05 13:05:46 +02:00
Arne Morten Kvarving
6ff0d0cdc4 added: data::GuideRateValue mpiserializer test 2022-09-05 11:17:44 +02:00
Arne Morten Kvarving
237832b86d added: primitive serializer support for std::bitset 2022-09-05 11:17:27 +02:00
Atgeirr Flø Rasmussen
51e5459be5 Add packing support for classes needing it.
Since Rates is not longer a POD, it needs explicit
packSize()/pack()/unpack() support. This also applies
to classes containing Rates, namely Connection and Segment.
Similarly, SegmentPressures is not a POD.
2022-08-24 15:11:27 +02:00
Atgeirr Flø Rasmussen
04180031e1 Limit warnings to terminal during deck input.
With this, the tag limit of 10 is used from the very start of the run,
and not only after the deck has been read.
2022-08-16 14:43:07 +02:00
Arne Morten Kvarving
d2ba2e75e8 remove include of Well header 2022-08-11 11:49:42 +02:00
Elyes Ahmed
5c2b60bcd0 rebasing 2022-07-28 20:40:34 +02:00
OPMUSER
f9ba52e91b Update UnsupportedFlowKeywords.cpp
Remove MINPORV from unsupported keyword list
2022-07-09 20:13:30 +08:00
OPMUSER
65addddb06 Update UnsupportedFlowKeywords.cpp
Remove TEMPVD from the unsupported key list, as tested as working.
2022-07-08 18:20:18 +08:00
OPMUSER
b784a6d78b Update UnsupportedFlowKeywords.cpp
Remove RTEMPA from the unsupported keywords list as testing shows it is supported.
2022-07-08 17:36:12 +08:00
Markus Blatt
6aea0fab37 Added instantiations of OrderedMap with truncated keys for parallel. 2022-06-27 13:09:09 +02:00
Markus Blatt
ebb8fc7aae Warn about about long fault -name 2022-06-27 13:09:08 +02:00
Bård Skaflestad
252d0afe8e Emit Actual Message on Input Failure
This gives more information to the user and hopefully aids them in
resolving the underlying issue.
2022-05-20 16:30:19 +02:00
Markus Blatt
51d8c9536e Spelling fix geomtry -> geometry.
Actually one should rename the function used from opm-common, too.
But that is for later...
2022-04-27 20:52:30 +02:00
OPMUSER
89461ed058 Radial and Spider Grid Keywords Not Supported
Add the DR, DTHETA and OUTRAD keywords as unsupported keywords with messages to enable the user to debug the input deck.

Back port candidate for release.
2022-04-20 14:19:56 +08:00
Tor Harald Sandve
0c9bb3990e
Merge pull request #3830 from plgbrts/vapwat
Adding explicit input specification of water-gas ratio (RVW) and RVW output plus simulator gas-water system with salt precipitation and water evaporation for
2022-04-07 09:03:26 +02:00
Markus Blatt
282951dc44
Merge pull request #3848 from blattms/binary-package-version-no-buildtime
Use empty string for buildtime if BUILD_TIMESTAMP is not set.
2022-04-05 14:54:58 +02:00
Bård Skaflestad
dfdfbbd7d7 Don't Process Corner-Point Data If No Valid Cell Geometry
If no cell has a valid corner-point geometry, typically caused by
using GDFILE to read non-finite data such as all ZCORN = -1.0E+20,
then we must not attempt to generate a grid structure.  If we do, we
will typically just fail somewhere deep down in the corner-point
processing code and generate a diagnostic message that's hard to
decipher.

With this commit we instead output a diagnostic message of the form

    Failed to create valid EclipseState object.
    Exception caught: No active cell in input grid has valid/finite cell geometry
    Please check geometry keywords, especially if grid is imported through GDFILE

This may not be a lot better than the original diagnostic

    Processing grid
    flow: ${ROOT}/opm-grid/opm/grid/cpgpreprocess/preprocess.c:768: is_lefthanded: Assertion `! searching' failed.
    Aborted (core dumped)

but does at least suggest that the grid data may be faulty.
2022-03-25 14:35:55 +01:00
Markus Blatt
08fd5da6a7 Use empty string for buildtime if BUILD_TIMESTAMP is not set.
In combination with the relevant changes in opm-common this
prevent flow in binary Linux packages from having a timestamp in the
executable that changes with every rebuild.

With the changes in opm-common  one can now set the variable
OPM_BINARY_PACKAGE_VERSION to a meaningful version string (Debian
11.2: 2021.10-4). If that is done and flow is built from tarballs it
will now not have a time stamp and print the package version to the
PRT file. E.g.

Flow Version     =  2021.10 (Debian 11.2: 2021.10-1)
2022-03-23 22:46:40 +01:00
Paul Egberts
390a5a4b82 clean up 2022-03-06 21:02:22 +01:00
Paul Egberts
797fdc278b water-gas ratio input and output plus simulator for salt precipitation and water evaporation 2022-03-01 20:52:43 +01:00
Markus Blatt
a520733d5b
Merge pull request #3774 from plgbrts/expli-salt
allow for explicit initialization of SALT and SALTP
2022-02-11 14:35:57 +01:00
Tor Harald Sandve
ad799b3e80 Add more performance summary output
This commit ads: NEWTON, MLINEARS, MSUMLINS, MSUMNEWT, NLINEARS, NLINSMIN, NLINSMAX
2022-02-03 15:03:37 +01:00
Markus Blatt
4407fdd3db std::regex_replace use $n for referencing and not \n. 2022-01-27 17:22:09 +01:00
Markus Blatt
710d648eda Prevent multiple *.?.dbg/prt files in production crashed parallel runs.
There was a fallout when skipping concating these files to the
default ones (PR #1708). We should also have deactivated creating
these files at all. As a result these files appeared in all parallel
runs that were aborted.

This change now prevents creating and logging to these files in
parallel in a default
run (--enable-parallel-logging-fallout-warning=false).

Developers can still activate logging and concating to see whether
everything is only logged on the io process by passing
--enable-parallel-logging-fallout-warning=true.

Closes 3725
2022-01-27 17:21:29 +01:00
Paul Egberts
590920db6b allow for explicit initialization of SALT (salt concentration) and SALTP (precipitated salt) 2022-01-18 11:12:43 +01:00
Paul Egberts
f69aa171fe removed some salt-precipitation related keywords from the unsupported keyword list 2022-01-14 11:46:39 +01:00
Joakim Hove
6b92443cb4 Downstream filesystem reorganisation in opm-common 2022-01-02 14:33:34 +01:00
OPMUSER
d6f7cb59a7 Validate ROCKCOMP Upadate 2021-12-20 18:06:17 +08:00
OPMUSER
34652f2d5d Remove NEXTSTEP from Unsupported List 2021-12-14 11:31:38 +08:00
OPMUSER
0ee2ed0311 Update PartiallySupportedFlowKeywords.cpp 2021-12-10 20:17:12 +08:00
OPMUSER
f7327c06f7 Update PartiallySupportedFlowKeywords.cpp 2021-12-10 19:56:54 +08:00
Markus Blatt
9a80d806c0 Setup parallel solvers for tracers. 2021-11-17 16:02:16 +01:00
Arne Morten Kvarving
24e252f46d fix serial build after PR #3675
annoyingly, dune has a casting operator for mpicollectivecommunication
-> MPIComm but for some reason does not have a casting operator for
the dummy collectivecommunication -> No_Comm
2021-11-10 10:41:24 +01:00
Arne Morten Kvarving
e67bae5453 fix: serial build after PR #3671 2021-11-09 15:57:24 +01:00
Bård Skaflestad
676cdb8307
Merge pull request #3674 from akva2/broadcast_variadic
added: utility to broadcast multiple variables in one operation
2021-11-09 14:51:23 +01:00
Joakim Hove
06e71f1345 Broadcast updated transmissibility after runtime updates of MULT? 2021-11-09 14:22:19 +01:00
Joakim Hove
5f4efbde73 broadcast<T> with Schedule and TransMult specialization 2021-11-09 14:22:19 +01:00
Arne Morten Kvarving
2120cbf043 added: utility to broadcast multiple variables in one operation 2021-11-09 13:02:05 +01:00
Bård Skaflestad
40fdb9e1d6 Mark GRAVITY Keyword as Supported in the Simulator
The input layer now converts this input to DENSITY data.
2021-11-07 22:34:31 +01:00
Arne Morten Kvarving
06bd25575f use std::filesystem directly 2021-11-01 12:31:58 +01:00
Joakim Hove
a79fd67104 Mark keywords DIFFC, DIFFUSE and GPMAINT as supported 2021-10-26 07:42:14 +02:00
Joakim Hove
695254fc7c Broadcast WellTestState after initialization 2021-10-19 11:16:41 +02:00
Joakim Hove
daabe1ca76 Make sure WellTestState is initialized also on non IO rank 2021-10-19 11:16:41 +02:00
Joakim Hove
9a9ccb90b8 Make sure to filter out wells from other processes in WellTestState 2021-10-19 11:16:41 +02:00
Atgeirr Flø Rasmussen
fc80451e3d Silence unused argument warning. 2021-10-15 13:26:44 +02:00
Joakim Hove
2c68f12769 Load WellTestState from restart file 2021-10-13 08:46:48 +02:00
Bård Skaflestad
0f13f4095b Mark 'comm' As Potentially Unused
The communicator is only needed in parallel builds.
2021-10-10 20:38:45 +02:00
Bård Skaflestad
d028937925 Remove Unused 'Comm' Parameter
Remnant from ealier refactoring work.
2021-10-08 12:44:27 +02:00
Bård Skaflestad
1feab761d6 Extract Helper Functions From readDeck
Mostly to reduce the number of nested conditionals and long lines.
2021-10-07 22:01:47 +02:00
Atgeirr Flø Rasmussen
d1391de639 Minor whitespace fixes. 2021-10-05 13:59:16 +02:00
Elyes Ahmed
0202b00d59 clean up after review 2021-10-05 13:07:52 +02:00
Elyes Ahmed
f53c597f90 Replacing use of MPI_COMM_WORLD with a variable communicator. 2021-10-05 13:07:52 +02:00
OPMUSER
be7395a137 Keyword Validation Fixes: GCONINJE, WTEST and AQUCT
Keyword Validation Fixes: GCONINJE, WTEST and AQUCT. Just minor edsits
2021-09-30 16:14:40 +08:00
Joakim Hove
56afec81b4
Merge pull request #3548 from joakim-hove/broadcast-udq+action
Broadcast UDQState and Action state after restart loading
2021-09-28 19:31:53 +02:00
Tor Harald Sandve
c790b14753 Make WTEST more robust
Only open wells that are solvable, operable and economical
2021-09-28 10:07:12 +02:00
Joakim Hove
8943e90e17 Broadcast UDQState and Action state after restart loading 2021-09-28 09:54:15 +02:00
Markus Blatt
a927f8e23b Unify parallel try-catch clauses with Macros and catch everything.
Not a big fan of Macros but here at least they seem ot be the only
option. The problem is that the catch clauses must all catch the same
exceptions that have a entry in ExceptionType, because they might be
nested. In addition we did not have a catch all clause, which is added
now and is needed in case a called method throws an unexpected exception.
2021-09-24 09:25:44 +02:00
Bård Skaflestad
1dc3832966
Merge pull request #3540 from hakonhagland/python_set_sched
Initialize blackoil simulator from Opm::Schedule shared with Python.
2021-09-23 13:32:31 +02:00
Joakim Hove
f581208fa0 Load Action state from restart file 2021-09-22 12:43:10 +02:00
Håkon Hægland
5ad65c70ee Initialize blackoil simulator from schedule shared with Python.
Adds a new constructor to Main.hpp that takes shared pointers to Deck,
EclipseState, Schedule, and SummaryConfig. This makes it possible to
share these variables with Python without worrying about lifetime issues
of the underlying C++ objects. For example, a Python script can first
create an opm.io.schedule.Schedule object which is modified from Python.
Then, assume the same Python script creates an
opm.simulators.BlackOilSimulator which is initialized with the same
schedule object. Since the underlying C++ object is a shared pointer,
the Schedule object in Python may go out of scope (get deleted by Python)
without having the C++ schedule object being deleted. And the Python
BlackOilSimulator may continue to be used after the Python Schedule object
has been deleted since it still has a valid C++ schedule object.
2021-09-21 15:52:59 +02:00
Joakim Hove
357540bfca Create Action::State external to the vanguard 2021-09-19 10:17:58 +02:00
Markus Blatt
b056557f57 bugfix: Detect exception during beginReportStep in parallel a. abort
Previously, exceptions happening at this stage have deadlocked
flow. E.g.  UniformTabulated2DFunction in opm-material throws
a NumericalIssue if the values passed are outside the tabulated
reason. This function is e.g. called in 2-phase CO2-storage cases
during BlackoilModel::initializeWellState

BTW: This is only the first step as it is not very user friendly that
a simulation aborts at this (late) stage.
2021-09-15 20:50:49 +02:00
Joakim Hove
eeab23ebab Add Parser argument to restart loader 2021-09-09 15:08:14 +02:00
Joakim Hove
3e66fc9555 Add Runspec argument to restart loader 2021-09-04 19:35:53 +02:00
Markus Blatt
598e9fa102 [bugfix] Fix sequential run after #979
Definition of the communicator was moved inside a
`#if HAVE_MPI` there. This commit queries the
communicator again below to fix this.
2021-09-02 13:12:23 +02:00
Markus Blatt
edd6c6fe85 [bugfix] Prevent segmentation fault for unkown keywords in parallel.
If there are unknown keywords and the parser throws an exception
then we nevertheless broadcasted the eclipseState and schedule.
Unfortunately, these might be null pointers in this case and
the serializer will run into a segmentation fault (e.g. when
serializing the non-existent TableManager)

Broadcasting is now only done if parsing was successful.
2021-09-02 11:14:46 +02:00
Cintia Goncalves Machado
b675d86aa8 add radial to regression test 2021-09-01 00:13:02 +02:00
Joakim Hove
060eac4999 Add basic functionality for validating special case keywords 2021-08-24 13:50:40 +02:00
Bård Skaflestad
ec264159b1 Load Analytical Aquifers from Restart File
This commit activates the restart support for analytical aquifers.
Analytic aquifer keywords do not exist in the input file for
restarted runs since the 'SOLUTION' section is empty apart from from
the 'RESTART' specification.

We use the 'RestartIO::Aquifer' class to load the information from
the restart file and then assign this information to the
AquiferConfig object hosted by the EclipseState.  Loading Schedule
information from the restart file is still contingent on the
'--sched-restart=false' command line setting.
2021-08-19 21:07:05 +02:00
Bård Skaflestad
6da47344a3 Record New Supported Keywords
We recently added support for

  * RPTONLY
  * RPTONLYO
  * SUMTHIN
2021-08-17 10:29:36 +02:00
OPMUSER
272ae1c8f8 Minor updates
Delete time stamp
update WCONPROD, TRACER and TRACERS
2021-07-10 14:05:33 +08:00
OPMUSER
22a2720e5a Partially Supported Keywords Validation
All keywords that can be checked with the existing validation frame work. All failures will continue, even if the message says "will STOP". The only exception is GUIDERAT(2) as parser check results in the STOP; however, this going to change so the STOP will happen with this code.

Comments and agreement between continue and STOP actions appreciated-
2021-07-10 14:05:33 +08:00
OPMUSER
741fddc2f7 Update UnsupportedFlowKeywords with Some Output Comments
Just minor changes to the output strings for better clarity.
2021-07-10 14:05:33 +08:00
OPMUSER
82834c0a3b Unsupported Keywords: Fix RVCONST add ROCKOPTS
Added ROCKOPTS to unsupported keyword list, as there are no opm-test examples, is this correct?

If ROCKOPTS is supported what is supported?
2021-07-10 14:05:33 +08:00
Atgeirr Flø Rasmussen
3253a79693 Instantiate pack etc. for new integer type.
The std::uint_fast64_t is used in WriteRestartFileEvents, from
opm-common.
2021-07-08 17:55:28 +02:00
Bård Skaflestad
2627a05c1e
Merge pull request #3433 from osae/tracerDefaultTrue
Default activation of tracer model.
2021-07-07 11:54:28 +02:00
Ove Sævareid
738877fc1b Default activation of tracer model. 2021-07-06 17:06:10 +02:00
Joakim Hove
2b680f27af Load udq state results from restart file 2021-07-03 10:08:25 +02:00
Joakim Hove
528078e8e1 Assemble UDQState external to the vanguard 2021-07-01 08:24:59 +02:00
Bård Skaflestad
b79b08e86f
Merge pull request #3414 from OPMUSER/RUNSPEC-GRID
Add GRAVITY keyword to UnsupportedFlowKeywords
2021-06-28 13:26:43 +02:00
OPMUSER
5d9e3811af Add GRAVITY keyword to UnsupportedFlowKeywords
Add GRAVITY keyword to UnsupportedFlowKeywords with message to use DENSITY instead.
2021-06-28 18:11:49 +08:00
Bård Skaflestad
3fe922b27f
Merge pull request #3404 from OPMUSER/RUNSPEC-GRID
PartiallySupportedKeywords for RUNSPEC and GRID Sections
2021-06-27 17:04:20 +02:00
Bård Skaflestad
5e883e562c Chase Type Specific Aquifer Data API Change
This commit switches to using the new 'typeData' interface for
representing type-specific aquifer data items.  In particular we use
the new 'typeData.is<>()' and 'typeData.get<>()' member functions to
query and access the data that is specific to each aquifer type
(e.g., Carter-Tracy or numerical).

While here, also expand the reported data items for numerical
aquifers to one initial pressure value for each aquifer cell.  This
is needed for restart purposes.
2021-06-25 09:58:27 +02:00
OPMUSER
7dee294c50 Clean License & Copyright Header
Clean License & Copyright Header - Done
2021-06-25 15:34:19 +08:00
Bård Skaflestad
704c33f08f Chase Restart Loading API Change 2021-06-25 09:11:09 +02:00
OPMUSER
2cf11dfe05 Revised RUNSPEC and GRID PartiallySupportedFlowKeywords.cpp
Revised version for RUNSPEC and GRID partially supported keywords. Fixed miss match with value type and comments etc. Also Trap NUMRES != 1 with STOP if > 1.
2021-06-25 13:17:13 +08:00
OPMUSER
e7b28b1b5f Removed NUMRES from UnsupportedKeywords List
Removed NUMRES from UnsupportedKeywords list and will trap values not equal to 1 in the PartiallySupportedKeyword list. PartiallySupportedKeyword update to follow.
2021-06-25 13:01:29 +08:00
OPMUSER
c3fe22a6cf PartiallySupportedKeywords for RUNSPEC and GRID Sections
RUNSPEC and GRID keywords for partially supported keywords
2021-06-23 12:58:35 +08:00
Arne Morten Kvarving
592af11e55 avoid include in header
also add include for config.h
2021-06-18 11:43:54 +02:00
Joakim Hove
969fc20154
Merge pull request #3373 from verveerpj/improve_validation
Add keyword validation using a predicate function
2021-06-15 07:47:37 +02:00
Peter Verveer
fd753e20c4 Add keyword validation using a predicate function 2021-06-14 18:10:36 +02:00
Joakim Hove
b1600b904f Rename data::WellRates -> data::Wells 2021-06-14 15:27:56 +02:00
Joakim Hove
454220b9e7 Rename data::WellRates -> data::Wells in opm-common 2021-06-13 08:37:56 +02:00
Bård Skaflestad
bd9b9a7118 Prepare to Save/Restore Richer Set of Aquifer Values
This commit adds logic to communicate more dynamic aquifer values
between the simulation and I/O layers.  In particular, we ensure
that we allocate the 'aquFet' and 'aquCT' substructures of the
dynamic aquifer data as appropriate and that we collect this
information on the I/O rank as part of the restart output process.
We furthermore make the 'ParallelRestart' facility aware of dynamic
aquifer data in preparation of loading these values from the restart
file.
2021-05-28 14:47:17 +02:00
Joakim Hove
d2510714e0 Check that stdout is attached to terminal before applying color 2021-05-28 10:20:10 +02:00
Arne Morten Kvarving
d55df4330e fixed: do not use Opm:: prefix when inside namespace Opm 2021-05-25 12:06:06 +02:00
Atgeirr Flø Rasmussen
dee7030784
Merge pull request #3273 from akva2/clang_cleanups
Quell various clang warnings
2021-05-21 09:22:31 +02:00
Bård Skaflestad
91dae1aa6f
Merge pull request #3269 from akva2/small_cleanups
Some small cleanups
2021-05-19 23:50:01 +02:00
Alf Birger Rustad
7c9d87de4f Remove GLIFTOPT and NETWORK from unsupported keywords. 2021-05-19 13:19:26 +02:00
Arne Morten Kvarving
a7507cf544 fixed: forward structs as structs
clang warns
2021-05-18 12:07:04 +02:00
Arne Morten Kvarving
8c34172ef0 remove some Opm:: qualifiers inside Opm namespace 2021-05-18 10:09:45 +02:00
Arne Morten Kvarving
ca1a799e95 changed: put partially supported keywords in separate compile unit
avoid triggering full simulator rebuilds when updating
this list
2021-05-12 14:29:33 +02:00
Arne Morten Kvarving
306593af3b changed: put unsupported keywords in separate compile unit
avoid triggering full simulator rebuilds when updating
this list
2021-05-12 14:29:33 +02:00
Cintia Goncalves Machado
5c51d4dea4
Remove COPYREG and add RPTSOL
Remove COPYREG (https://github.com/OPM/opm-simulators/issues/3234) and add RPTSOL (https://github.com/OPM/opm-simulators/issues/3248) as non-critical missing keyword
2021-05-12 12:04:01 +02:00
Joakim Hove
df2f27ab43
Merge pull request #3230 from GitPaean/aquifer_keyowrds_supported
removing numerical aquifer keywords from unsupported keyword list
2021-05-11 07:22:55 +02:00
Kai Bao
2d24abb630 removing numerical aquifer keywords from unsupported list
AQUNUM, AQUCON
2021-05-10 22:48:56 +02:00
Bård Skaflestad
9139e3c2f1
Merge pull request #3213 from akva2/no_opm_in_opm
fixed: do not use Opm:: prefix when inside namespace Opm
2021-05-05 16:15:50 +02:00
Arne Morten Kvarving
a4c0af09d9 fixed: do not use Opm:: prefix when inside namespace Opm 2021-05-05 11:59:18 +02:00
Joakim Hove
24285009a8 The MAPUNITS keyword is supported 2021-05-05 08:12:40 +02:00
Bård Skaflestad
aa1df1352f
Merge pull request #3197 from akva2/move_to_comp_units
Move to separate compilation units
2021-04-30 16:50:54 +02:00
Arne Morten Kvarving
17963b07c1 ParallelRestart: use forwarding 2021-04-30 13:18:44 +02:00
Arne Morten Kvarving
0cb0971673 ParallelFileMerger: move to separate compile unit 2021-04-29 12:57:27 +02:00
Arne Morten Kvarving
bbfda699d3 KeywordValidation: use forwarding 2021-04-29 12:46:49 +02:00