Commit Graph

124 Commits

Author SHA1 Message Date
Ove Sævareid
0f7e66e151 Alternative solvent extension for the black oil model. 2020-11-17 12:33:19 +01:00
Tor Harald Sandve
fbccdbf68e Make a flow version that uses the polyhedreal grid
Currently the simulator creats the polyhedreal grid from an eclGrid from opm-common

TODO
 - make it possible to create the grid directly from DGF or MRST format
 - fix issue on norne.
2020-11-10 15:49:59 +01:00
Atgeirr Flø Rasmussen
316b28923d Rename parameter --linear-solver-configuration to --linsolver. 2020-10-12 17:03:00 +02:00
Atgeirr Flø Rasmussen
65817c9068 Removed old amg/cpr code that can be replaced.
The replacement consists of using the FlexibleSolver code.
2020-10-08 15:12:41 +02:00
Arne Morten Kvarving
9a000c6d07 changed: remove SET_TAG_PROP macro usage 2020-08-28 10:44:53 +02:00
Arne Morten Kvarving
3b21a8a481 changed: remove SET_TYPE_PROP macro usage 2020-08-28 10:44:53 +02:00
Arne Morten Kvarving
941e4916f8 changed: remove SET_PROP macro usage 2020-08-27 14:02:05 +02:00
Arne Morten Kvarving
7d853d2e05 changed: remove SET_SCALAR_PROP macro usage 2020-08-27 13:01:51 +02:00
Arne Morten Kvarving
fca83318aa changed: remove SET_INT_PROP macro usage 2020-08-27 13:01:51 +02:00
Arne Morten Kvarving
a79c37a041 changed: remove SET_STRING_PROP macro usage 2020-08-27 13:01:51 +02:00
Arne Morten Kvarving
0e71c0e29b changed: remove SET_BOOL_PROP macro usage 2020-08-27 13:01:51 +02:00
Arne Morten Kvarving
e8248b44ff changed: remove NEW_TYPE_TAG macro usage 2020-08-27 13:01:51 +02:00
Arne Morten Kvarving
914053ac3c changed: remove GET_PROP_VALUE macro usage 2020-08-27 13:01:51 +02:00
Markus Blatt
75104fd310 Move to more consistent ownership of ECL data in EclBaseVanguard
We resort to consistently use unique_ptrs in EclBaseVanguard for
the data read from ECL files or set externally. This means that
during the simulation EclBaseVanguard owns this data and not Main
or the ebos setup functions. This ownership transfer becomes
transparent due to std::move.

This came up when trying to fix the parallel runs of ebos and during
that removing some code duplication.
2020-08-27 09:05:09 +02:00
Arne Morten Kvarving
74fac38d85 changed: remove GET_PROP_TYPE / GET_PROP macro usage 2020-08-27 08:19:39 +02:00
Arne Morten Kvarving
82a35e53b7 changed: remove TTAG macro calls 2020-08-27 08:19:39 +02:00
Håkon Hægland
c6752c1e0e Clarify by using this->
Clarify usage of member variables in FlowMainEbos.hpp by prefixing with
this->.

Also rebased PR on the current master, and updated
flow_ebos_oilwater_brine.cpp according to the PR.
2020-08-24 08:35:04 +02:00
Håkon Hægland
f9d47b7c68 Capture some variables in FlowMainEbos.
Make Opm::FlowMainEbos capture the variables argc, argv, outputCout, and
outputFiles. Passing the variables to the constructor and saving them as
class variables in Opm::FlowMainEbos makes the implementation of the
Python interface simpler. For example, the step_init() method does not
need to ask Opm::Main about the values of the variables when it needs to
run execute() in FlowMainEbos.

Another advantage of this refactoring could be that less variables needs
to be passed around from Opm::Main, to flow_ebos_xxx.cpp, and then again
to FlowMainEbos.
2020-08-24 00:19:19 +02:00
Arne Morten Kvarving
70908d9017 changed: remove BEGIN_PROPERTIES/END_PROPERTIES macro usage 2020-08-21 15:50:35 +02:00
Tor Harald Sandve
fce0ba6759 Add oil water brine specialization 2020-06-30 10:41:28 +02:00
Bernd Flemisch
21df1cbe31 [properties] adapt to changes in the property system
`NEW_PROP_TAG` is now a definition and not just a declaration.
Eliminate superfluous declarations, include headers with definitions.
Make one necessary forward declaration explicit.
2020-05-18 15:54:26 +02:00
Arne Morten Kvarving
5fcebcf4a7 remove unused variables
and thus the associated compiler warnings
2020-05-14 11:03:03 +02:00
Håkon Hægland
946b5f5806 Refactor flow_ebos_blackoil.cpp (2)
NOTE: this pull request depends on #2555 which should be merged first.

A rewrite of the outdated PR #2543.

Refactors flow_ebos_blackoil.cpp such that we can choose not to execute
the whole simulation using the flowEbosBlackoilMain() function but
instead only initialize by calling flowEbosBlackoilMainInit(). This is
necessary to implement a Python step() method that can advance the
simulator one report step at a time.

Also adds a method initFlowEbosBlackoil() to Main.hpp that can be used
directly from the Python interface's BlackOilSimulator object to gain
access to the FlowMainEbos object before it has initialized the
simulation main loop.
2020-05-13 11:54:18 +02:00
Atgeirr Flø Rasmussen
07d9ec135b Make Main a non-template class again, simplify. 2020-04-16 11:35:01 +02:00
Håkon Hægland
ba625b0cb6 Refactor away flow_tag.hpp.
Refactors away flow_tag.hpp by having flow_blackoil_dunecpr.cpp,
flow_onephase.cpp, and flow_onephase_energy.cpp use the updated Main.hpp
from a previous pull request. This will eliminate the previous code
duplication in Main.hpp and flow_tag.hpp discussed in PR #2521.
2020-04-15 15:05:56 +02:00
Håkon Hægland
3624725885 Merge flow_tag.hpp into Main.hpp.
Addresses the comments in PR #2521 regarding code duplication in
Main.hpp and flow_tag.hpp. This PR merges the code in flow_tag.hpp
into Main.hpp such that flow_tag.hpp can be eliminated (will be done
in the next PR).
2020-04-14 14:53:48 +02:00
Håkon Hægland
8c1a951e09 First PR in a splitting up of PR #2516.
According to private discussion with @joakim-hove PR #2516 is splitted into
smaller parts to facilitate review and a quicker merge into master.

As mentioned in PR #2516, main() in flow.cpp is refactored to address
the comments on PR #2127 and as preparation for implementing the Python
bindings described in PR #2403.
2020-04-03 14:53:45 +02:00
Bård Skaflestad
022ba52200
Merge pull request #2514 from akva2/fix_filesystem_gcc9
changed: avoid calling parent_path on paths that has none
2020-04-03 12:41:14 +02:00
Arne Morten Kvarving
57d5eefd26 changed: avoid calling parent_path on paths that has none
causes a throw on gcc-9
2020-04-03 11:27:47 +02:00
Atgeirr Flø Rasmussen
0c8ce54b71
Merge pull request #2498 from blattms/cherry-pick-hnil-flexible-clean-interface-rebased
Cleaned up flexible solver improvements.
2020-04-02 15:28:10 +02:00
Markus Blatt
2e4824cbc7 Change default configuration to "ilu0".
The previous was "file" which resulted in runtime errors
like

Program threw an exception: No linear-solver-configuration-json-file given for linear-solver-configuration=file
2020-03-31 16:49:37 +02:00
hnil
2388a9b551 Added simple defaults for flexible solver: current options added ilu0, cpr_quasiimpes, cpr_trueimpes, file (genneal configuration)
This commit 0c62c8442 cherry-picked and slightly cleaned up and
adapted to recent changes.
2020-03-31 16:49:37 +02:00
Joakim Hove
d6a1d3029e Use std::shared_ptr for Python handle to Schedule 2020-03-31 12:28:07 +02:00
Joakim Hove
f425758c25
Merge pull request #2501 from joakim-hove/add-python-arg
Add Python argument to Schedule constructor
2020-03-27 13:44:09 +01:00
Joakim Hove
30216212c4 Add Python argument to Schedule constructor 2020-03-26 10:15:07 +01:00
Arne Morten Kvarving
b698fe2c90 prune some unnecessary includes 2020-03-25 09:42:02 +01:00
Arne Morten Kvarving
a2d840a5f7 changed: put eclipse state broadcast in separate compilation unit
to avoid compiling several times for each flow variant
2020-03-19 09:31:52 +01:00
Arne Morten Kvarving
d9ab0e7522 remove old serialization support for ASTNode 2020-03-19 09:31:07 +01:00
Arne Morten Kvarving
7389959b88 remove old serialization support for WListManager 2020-03-19 09:31:07 +01:00
Arne Morten Kvarving
13f3b31bd6 add missing includes 2020-03-16 20:52:17 +01:00
Markus Blatt
09c2cb2107 Make flow variants use ParallelEclipseState just as flow 2020-03-16 10:09:26 +01:00
Arne Morten Kvarving
05286d8900 changed: simplify mpi setup
no need for a separate reference to the parallel state any longer
2020-03-16 08:20:44 +01:00
Arne Morten Kvarving
3389db4f4c fixed: consistently use #if MPI instead of #ifdef MPI 2020-03-16 08:20:44 +01:00
Arne Morten Kvarving
38023fac21 changed: use EclMpiSerializer for Schedule 2020-03-16 08:20:44 +01:00
Arne Morten Kvarving
c40c733a57 fixed: build without MPI 2020-03-13 17:52:37 +01:00
Joakim Hove
4dfa22e6a2 Allow flow to continue with --sched-restart=false 2020-03-12 15:20:39 +01:00
Arne Morten Kvarving
e1bf6ed4a6 use eclmpiserializer for SummaryConfig broadcast 2020-03-10 10:01:26 +01:00
Joakim Hove
42f96ca039 Add commandline switch --sched-restart to control restart init 2020-03-04 15:44:32 +01:00
Arne Morten Kvarving
293612265e fix build without MPI 2020-02-28 13:03:16 +01:00
Arne Morten Kvarving
05c0c4b6e8 Use the ParallelEclipseState and ParallelFieldPropsManager
with these in place, we now only parse the deck on the root process.
2020-02-28 10:26:55 +01:00