Tor Harald Sandve
3ca6e215dc
Change the inner iterations logic
...
This replace the Boolean switch to enable inner iterations with a
int that controls for which maximum number of newton iterations
inner iterations applies.
Default is set to 3
2021-06-04 10:51:15 +02:00
Arne Morten Kvarving
cbd7cfe8b6
split eclproblem in typetag dependent and typetag independent classes
2021-05-28 08:54: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
Joakim Hove
23180e06d2
Rename WellStateFullyImplicitBlackoil -> WellState
2021-05-21 15:07:21 +02:00
Joakim Hove
842e0a53a4
Merge pull request #3263 from akva2/move_ecldeck_param
...
changed: move Deck parameter to BlackoilModelParametersEbos
2021-05-18 08:19:19 +02:00
Arne Morten Kvarving
8d1a8126ea
changed: move Deck parameter to BlackoilModelParametersEbos
...
it is used there. now eclbasevanguard.hh includes
BlackoilModelParametersEbos, instead of the other way around.
2021-05-15 14:42:50 +02:00
Peter Verveer
ad0b62ab1c
Simplify the message for keywords with only a single record
2021-05-14 15:12:12 +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
Arne Morten Kvarving
3397cd6252
eclbasevanguard: split in template and non-template parts
2021-05-11 09:15:11 +02:00
Arne Morten Kvarving
86bc095e3a
eclbasevanguard: change canonicalDeckPath to std::string
...
makes use of filesystem an implementation detail
2021-05-11 09:15:11 +02:00
Arne Morten Kvarving
a4c0af09d9
fixed: do not use Opm:: prefix when inside namespace Opm
2021-05-05 11:59:18 +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
cf06a322ec
countGlobalCells: put non-template code in separate compile unit
2021-04-30 15:09:23 +02:00
Arne Morten Kvarving
238109b0e9
FlowMainEbos: use forwarding
...
also remove unnecessary includes
2021-04-29 12:47:27 +02:00
Arne Morten Kvarving
bbfda699d3
KeywordValidation: use forwarding
2021-04-29 12:46:49 +02:00
Tor Harald Sandve
090b75425f
Use switch event
2021-04-16 13:38:56 +02:00
Peter Verveer
1640c4afcf
Implement a new keyword validator
2021-04-12 16:47:02 +02:00
Kai Bao
347ca3978a
adding parameter to control the min time step
...
can be reduced to based on the newton iteration counts.
By default it is zero, so it should not change any running results.
2021-03-10 11:49:59 +01:00
Joakim Hove
ec344d555d
Pass ouput interval overeride to Schedule constructor
2021-03-08 19:30:58 +01:00
Joakim Hove
6f15765f53
Use Schedule time functions - avoid TimeMap
2021-02-25 18:10:22 +01:00
Kai Bao
a18c1a15ab
correcting the output of the number of threads
2021-02-03 14:02:56 +01:00
Markus Blatt
0238a80b02
Merge pull request #3032 from blattms/test-spe9-distributed-wells
...
Support external loadbalancers in EclCpGridVanguard
2021-02-02 11:21:40 +01:00
Markus Blatt
67fc95c340
Merge pull request #3029 from blattms/activate-distributed-wells
...
Activate distributed wells in the simulator
2021-02-02 09:40:08 +01:00
Bård Skaflestad
76c59978b6
Reset Non-Linear Iteration Count Before 'beginTimeStep'
...
While here, also fix a couple of misprints in a nearby comment.
2021-01-29 12:30:34 +01:00
Tor Harald Sandve
d3ea5a67ea
reset the iteration count in the newtonSolver
2021-01-29 07:59:56 +01:00
Markus Blatt
2d23b01da8
Restrict property/type tag changes to eclbasevanguar.hh
2021-01-27 14:41:10 +01:00
Tor Harald Sandve
c145722798
pass CartesianIndexMapper instead of the grid to the RelpermDiagnositics
2021-01-26 14:59:36 +01:00
Markus Blatt
f464d93f15
Activate distributed standard wells.
...
We introduce a new parameter --enable-distributed-wells=<true|false>
for this. During startup we check that the model either only has
standard wells or that multisegement wells are actively interpreted
as standard wells (by way of passing --enable-multisegment-wells=false
as an option).
2021-01-25 15:05:24 +01:00
Joakim Hove
237eb2b7ee
Fetch events from ScheduleState
2021-01-11 17:42:30 +01:00
Joakim Hove
fe788cdb05
Access tuning class from ScheduleState
2021-01-06 16:26:13 +01:00
Alf Birger Rustad
673328a4e1
Remove WSEGAICD from missing features
2020-12-18 11:23:26 +01:00
Tor Harald Sandve
6b7c0e630a
report pre/post time
2020-12-10 13:40:41 +01:00
Tor Harald Sandve
73439070f7
Merge pull request #2963 from totto82/extbo_conv
...
add convergence check for extended blackoil model
2020-12-09 08:51:11 +01:00
Atgeirr Flø Rasmussen
6a376b3212
Merge pull request #2922 from atgeirr/make-new-well-rate-init-default
...
Make --alternative-well-rate-init=true the default.
2020-12-08 16:25:12 +01:00
Tor Harald Sandve
21fd76ccf6
add convergence check for extended blackoil model
2020-12-08 13:09:58 +01:00
Arne Morten Kvarving
7d19091cb3
changed: make member variables constexpr
...
may as well use the compile time information to eliminate
unnecessary code
2020-12-07 12:16:04 +01:00
Arne Morten Kvarving
bbf0f7d6af
remove unused members
2020-12-07 12:09:33 +01:00
Bård Skaflestad
d06b7f9ec2
Record Basic Support for WELPI
...
Remove 'WELPI' keyword from MissingFeatures.
2020-12-04 15:16:25 +01:00
Bård Skaflestad
3ac2f02f4f
Merge pull request #2839 from akva2/remove_liftopt_missing
...
remove LIFTOPT and WLIFTOPT from missing features
2020-12-04 13:52:09 +01:00
Paul Egberts
877c0b723d
fix missing argument for BlackoilTwophaseIndices
2020-12-03 09:04:11 +01:00
Paul Egberts
d0421582e1
add gas-water simulator
2020-12-03 09:04:11 +01:00
Alf Birger Rustad
b651469f34
Removed supported keywords from list
2020-11-19 09:36:30 +01:00
Ove Sævareid
0f7e66e151
Alternative solvent extension for the black oil model.
2020-11-17 12:33:19 +01:00
Atgeirr Flø Rasmussen
f967d82ad5
Make --alternative-well-rate-init=true the default.
2020-11-17 11:56:02 +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
Cintia Goncalves Machado
9695de9e8c
Delete some radial keywords from Missing Features
...
They are implemented in the SpyderWeb grid.
2020-11-06 14:26:59 +01:00
Håkon Hægland
7011a6c0b7
Restore cwd after each unittest.
...
Restores the original cwd after each unittest in test_basic.py. Also
simplifies add_test() in python/simulators/CMakeLists.txt such that the
Bash script wrapper run-python-tests.sh is no longer needed to run the
tests.
2020-11-04 13:51:36 +01:00
Håkon Hægland
648bab7108
Implements access to the porosity from Python.
...
Implements access (read/write) to the porosity from Python.
2020-11-03 17:18:14 +01:00
Håkon Hægland
53cbe0c57e
Initialize boolean variables in-class.
...
Initialize the boolean variables hasRunInit_ and hasRunCleanup_ in
the class instead of in the constructor.
2020-11-03 16:17:52 +01:00
Håkon Hægland
0403d4e6e7
Implements a Python step_cleanup() method.
...
Continues the work in #2735 on implementing Python bindings for the flow
simulator.
2020-11-03 16:12:12 +01:00
Cintia Goncalves Machado
27a00b3c59
Delete WEIR and WEIT
2020-10-28 19:17:53 +01:00
Atgeirr Flø Rasmussen
24b2393334
Add parameter --alternative-well-rate-init.
...
With this, a slightly more sophisticated procedure is used for well rate intialization.
Since it changes existing results, it defaults to false, giving the existing behaviour.
2020-10-15 17:56:11 +02:00
Arne Morten Kvarving
440cfdd38b
remove LIFTOPT and WLIFTOPT from missing features
2020-10-06 13:55:10 +02:00
Alf Birger Rustad
885c182b7e
Added one more decimal for hundreds of a second.
2020-10-02 15:13:41 +02:00
Alf Birger Rustad
a081394f32
Fixed alignement
2020-10-02 14:06:25 +02:00
Alf Birger Rustad
d36069c759
Remove confusing progress message.
2020-10-02 09:04:26 +02:00
Arne Morten Kvarving
36a42c0685
remove unused variables
2020-09-30 10:12:33 +02:00
Joakim Hove
0092ef0cf0
Pass location to ParseContext.handleError()
2020-09-28 16:58:37 +02:00
Atgeirr Flø Rasmussen
e8460b384e
Merge pull request #2804 from totto82/updateAndInvalid
...
Invalidate and update the intensive quantities at the same time
2020-09-28 09:02:25 +02:00
Atgeirr Flø Rasmussen
b5c5c28c16
Merge pull request #2788 from alfbr/new-defaults
...
New numerical defaults
2020-09-28 08:57:08 +02:00
Tor Harald Sandve
85e25f7e0e
Invalidate and update the intensive quantities instead of just invalidate them
2020-09-23 11:39:04 +02:00
Atgeirr Flø Rasmussen
68add695fe
Merge pull request #2735 from hakonhagland/python_step2
...
Implements a Python step() method.
2020-09-22 15:47:48 +02:00
Joakim Hove
c059653fa0
Add #include <opm/common/Exceptions.hpp>
2020-09-21 19:25:52 +02:00
Joakim Hove
cc6abb4086
Merge pull request #2796 from joakim-hove/rm-exceptions
...
Remove unused #include of exceptions
2020-09-21 16:33:19 +02:00
Joakim Hove
0565d6f402
Remove unused #include of exceptions
2020-09-21 11:12:15 +02:00
Joakim Hove
9809dcc804
Remove references to unused class SimulationDataContainer
2020-09-21 07:16:11 +02:00
Alf Birger Rustad
2e2bad179d
New default tuning parameters based on pore volume
2020-09-16 15:58:14 +02:00
Alf B. Rustad
d0c110e935
Removed duplicated OPTIONS
2020-09-13 23:15:01 +02:00
Alf B. Rustad
1b05ed1199
Removed OPERATER and OPERNUM since they are supported.
2020-09-13 22:40:20 +02:00
Atgeirr Flø Rasmussen
3dffb5d4da
Use log mechanism for info output, and tell the user the deck has been read.
2020-09-03 15:11:25 +02:00
Atgeirr Flø Rasmussen
92bdcbf597
Reinstate lost logging of header and parameters.
...
Also re-add the ability to do strict parsing.
2020-09-03 14:07:33 +02:00
Arne Morten Kvarving
7305f84351
use std::make_unique where applicable
2020-09-02 15:35:39 +02:00
Arne Morten Kvarving
f4f5fa3a5d
changed: remove one missed TTAG usage
...
also include header for the Scalar property definition
2020-08-28 10:44:53 +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
93a3ebf8f7
changed: remove NEW_PROP_TAG macro usage
2020-08-28 10:44:53 +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
c958034d26
Adapt and use readDeck from EclipseBaseVanguard, too.
...
This reduces code duplication ad should fix the bad_cast exception
when running ebos in parallel.
2020-08-27 09:05:09 +02:00
Markus Blatt
575245d785
Factored out logging setup and deck reading from class Main.
...
These codes are reimplemented in the ebos simulator and should
be reused, instead. This commit factilitates this and starts
reusing the logging setup code in ebos. Hence reduces code duplication.
2020-08-27 09:05:09 +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
Markus Blatt
83bfd4edfc
Merge pull request #2738 from akva2/more_macro_replacement
...
More macro replacement
2020-08-27 08:46:25 +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
Markus Blatt
bee46ed309
Finally fix selection for relaxed tolerance.
...
Default values are MaxStrictIter=8 and RelaxedPvFraction=1.0.
To activate relaxed pv fraction set MaxStrictIter to 0 and
fraction below 1.
2020-08-26 15:42:27 +02:00
Tor Harald Sandve
25c8a219a5
Merge pull request #2701 from blattms/relaxed-cnv-based-on-pv-fraction
...
relaxed tolerance for CNV if only small fraction of PV is violated
2020-08-25 15:02:06 +02:00
Markus Blatt
92b1708433
Use reference to ebos residual to prevent copying.
2020-08-25 14:07:27 +02:00
Håkon Hægland
81319a7923
Implements the Python step() method.
...
A resubmission of commit 8e4f748
in PR #2403 and PR #2444 and continues
the work in #2690 implementing Python bindings to the flow simulator.
The Python step() method advances the simulator one report step. Before
calling step() for the first time, step_init() must have been called.
2020-08-25 13:42:48 +02:00
Håkon Hægland
3749dcab7d
Implements the Python step_init() function.
...
A resubmission of commit 11eaa3d7
in PR #2403 and PR #2443 and continues
the work in #2555 implementing Python bindings to the flow simulator.
The step_init() method initializes the simulation. It is required for the
Python script to run step_init() before calling the step() method (which
will be implemented in a later commit).
2020-08-24 10:27:50 +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
Markus Blatt
efe17780e2
Reinforce maxStrictIter for the newton.
...
That was removed before in lieu of the fraction of cells that
violate CNV.
This change should make the results as before unless somebody changes
maxStrictIter or RelaxedMaxPvFraction
2020-08-19 14:42:40 +02:00
Markus Blatt
f65eca3310
Use RelaxedMaxPvFraction 0 for now.
...
This should make the tests work.
2020-08-18 16:57:16 +02:00
Markus Blatt
e040484580
relaxed tolerance for CNV if only small fraction of PV is violated
...
Previously we used relaxed tolerance once a certain number of Newton
steps was exceeded. Now we check for all cells violating CNV locally
and if their pore volume is less than a certaun fraction (default 3%)
we use the relaxed tolerance (default: 1e9)
Original idea originated from Norce.
2020-08-18 16:57:16 +02:00
Tor Harald Sandve
bd9186b41d
implement Saltvd
2020-08-18 10:55:43 +02:00