Commit Graph

3204 Commits

Author SHA1 Message Date
Atgeirr Flø Rasmussen
48b0024855 Refactor BlackoilModelEbos::getConvergence().
The loop over elements to extract data has been moved to a separate
function localConvergenceData().
2018-11-13 10:19:15 +01:00
Atgeirr Flø Rasmussen
58eedf0d65
Merge pull request #1615 from GitPaean/using_events_for_well_states_2
detecting whether some well control events happens to a well
2018-11-13 07:42:19 +01:00
Kai Bao
eb86404934 addressing review comments of PR #1615 2018-11-12 15:20:23 +01:00
Kai Bao
5e736fc4c7 decoupe the rate and fraction relaxation
the relaxation for these two have different goals and problems, it is
wise to decuple them.
2018-11-09 14:28:44 +01:00
Kai Bao
179a505b83 addressing the review comments #1597 2018-11-09 14:28:44 +01:00
Kai Bao
7e17a60c58 relaxation to avoid overshoot during Newton update in StandardWell
Solvent model is not handled yet.
2018-11-09 14:28:44 +01:00
Kai Bao
73f8ed912e detecting whether some well control events happens to a well
When there is some events happen to a well, we use the control mode
 from the DECK, and update the WellState based on the new control model.
 Otherwise, we can use the control mode from the previous well state,
 and keep the values from the previous well state as an intial guess.
2018-11-09 13:36:49 +01:00
Tor Harald Sandve
7ccce99e1c Do the schur complement after calling the getConvergence method 2018-11-08 10:41:41 +01:00
Tor Harald Sandve
5edd63c554 flow: let the wells be managed by EclProblem 2018-11-08 10:40:28 +01:00
Tor Harald Sandve
19622dab57 start the execution timer when creating the eWoms simulator object
this provides accurate performance timings from within eWoms
code. For example, this is useful for output of TCPU.
2018-11-08 10:26:02 +01:00
Tor Harald Sandve
8fe2be3b7f Compute well productivity index and pass it to the output 2018-11-07 15:36:31 +01:00
andrthu
a969fd198a Ignoring overlap cells in parallel ILU factorization (#1610)
* fixed the issue of including ghost cells in preconditioning, by zeroing out ghost rows and setting the diagonal to a large value.

* move altering of matrix to a function

* blockwise modification of matrix

* add findOverlapRowsAndColumns in BlacoilDetail. Add call to findOverlapRowsAndColumns in constructor of BlacoilModelEbos. Change makeOverlapRowsInvalid, by looping over precalculated inddies instead of grid

* Better formatting
2018-11-06 14:14:50 +01:00
Joakim Hove
6c5b540eaf
Merge pull request #1605 from totto82/drsdtr
Adapt to changes in schedule interface
2018-11-06 08:21:03 +01:00
Tor Harald Sandve
eff1c21bb3
Merge pull request #1609 from GitPaean/refactoring_well_test
Refactoring well test to prepare for Physical limit related well test.
2018-11-02 10:40:59 +01:00
Andreas Lauser
848a65c1c8 BlackoilAquiferModel: move the function bodies to the _impl.hpp file
... to make it more consistent with the existing code.
2018-11-01 15:19:33 +01:00
Andreas Lauser
6a929ca797 try to fix subtle lifetime bug
it is possible that a dune entity vanishes if its iterator gets out of
scope. Whether this is a problem or not seems to be be highly depend
on the used configuration...
2018-11-01 15:13:28 +01:00
Kai Bao
0c24a30459 some cleaning up
no funtionality changes.
2018-10-31 15:32:50 +01:00
Andreas Lauser
46b52448aa fix a few review comments 2018-10-31 15:20:56 +01:00
Andreas Lauser
339c76bcac make aquifers work again, quite a few cleanups 2018-10-31 15:20:56 +01:00
Andreas Lauser
805eec9566 make the CT aquifiers code do something 2018-10-31 15:20:56 +01:00
Andreas Lauser
7c81dbdaab let the aquifiers be managed by core ebos
also, clean them up a bit:
- do not use the intensive quantities cache directly anymore. (i.e.,
  that code should now work if the IQ cache is disabled)
- do not fiddle with the global Jacobian matrix and residual vector
  directly. Instead, implement the water fluxes to the reservoir as a
  source term like wells.

one thing that did not become fully clear to me is if each aquifer
ought to be assumed to be in contact with the whole reservoir or just
a few cells on the boundary. The current implementation goes down the
former path, while, without any deeper knowledge, I would rather
suppose that the latter applies. maybe my understanding of this is
just too limited, though.
2018-10-31 15:20:56 +01:00
Kai Bao
702c6e7b1f refactoring the wellTesting in BlackoilWellModel
so that we can do well test for different closing reason.
2018-10-31 15:00:21 +01:00
Andreas Lauser
b04c82a64e well model: fix valgrind complaints if either oil or gas are disabled 2018-10-31 13:18:10 +01:00
Kai Bao
4d58b9c34d splitting updateWellTestState to be two functions
one testing physical limits, and the other testing economic limits.
2018-10-31 12:54:39 +01:00
Tor Harald Sandve
52475eeea6 use specialized fluidstate in the aquifer model 2018-10-29 13:03:53 +01:00
Tor Harald Sandve
08c4a4857b Adapt to changes in schedule interface 2018-10-29 10:39:14 +01:00
Andreas Lauser
4cf81c69b1
Merge pull request #1602 from atgeirr/convergence-status
Add convergence status class
2018-10-25 14:16:29 +02:00
Atgeirr Flø Rasmussen
671ed75535 Made ReservoirFailure and WellFailure into classes. 2018-10-25 13:08:16 +02:00
Atgeirr Flø Rasmussen
852765a65b Address review comments. 2018-10-25 12:12:06 +02:00
Atgeirr Flø Rasmussen
2bf4d15285 Rename ConvergenceStatus -> ConvergenceReport. 2018-10-25 11:57:47 +02:00
Joakim Hove
58f84d3fb4
Merge pull request #1596 from totto82/minpvv
Add support for MINPVV
2018-10-25 09:05:10 +02:00
Atgeirr Flø Rasmussen
2bef8d7017 Use infinity as too-large boundary for multisegment pressure equation.
This is to preserve current behaviour. Infinity is used in the test
currently, rather than the provided parameter (that is only used for
mass balance/flux equations).
2018-10-24 21:43:26 +02:00
Andreas Lauser
d26fe45d52 flow: print the startup-banner only on the first rank
thanks to [at]atgeirr for catching this.
2018-10-24 14:30:21 +02:00
Atgeirr Flø Rasmussen
f9fae47f23 Use ConvergenceStatus in well subsystem. 2018-10-23 14:05:19 +02:00
Andreas Lauser
7d30a8408a flow: print the startup banner immediately
also, add a "reading deck" output. The idea is to make `flow`'s
behaviour less surprising by preventing people from thinking that
nothing happens after starting `flow` for a large deck.
2018-10-22 10:37:16 +02:00
Andreas Lauser
ab94700f9a ParallelOverlappingILU0: fix warning emitted by newish compilers 2018-10-22 10:37:16 +02:00
Tor Harald Sandve
df4db9dfbc Add support for MINPVV
The test and code for pinchprocessor is removed since it is no
longer used.
2018-10-15 13:39:47 +02:00
Alf Birger Rustad
dad7f72599 Increase default number of non-linear iterations for 10 to 20 2018-09-24 14:28:28 +02:00
Alf Birger Rustad
a81d13c227 Increase default number of iterations for linear solver from 150 to 200 2018-09-24 14:22:19 +02:00
Atgeirr Flø Rasmussen
46416008e6
Merge pull request #1566 from blattms/fix-parallel-file-merge
[bugfix] Make parallel file merge work again for any --output-dir.
2018-09-24 13:58:20 +02:00
Atgeirr Flø Rasmussen
1f7b8aa9d1
Merge pull request #1581 from blattms/fix-issue-1574-and-more
Remove dead code.
2018-09-24 13:37:32 +02:00
Markus Blatt
9f2f6705bc
Merge pull request #1564 from dr-robertk/PR/fix-compile-dune-master
[bugfix][ISTLSolverEbos] make compile with current dune master.
2018-09-24 07:25:30 +02:00
Markus Blatt
5aa07fca69 Remove more dead code from the ISTLSolver.hpp fork for ebos.
These functions are also not used.
2018-09-21 16:15:32 +02:00
Markus Blatt
abddcb74d3 Merge branch 'fix_build' into fix-issue-1574-and-more
It removes some dead code that appeared during the fork of
ISTLSolver.hpp for ebos.
2018-09-21 15:49:39 +02:00
Markus Blatt
2dd5a3d15c Fix compilation issue of flow_legacy without UMFPack.
The problem was only present if UMFPack was not found and therefore
FLOW_SUPPORT_AMG was defined to true. In that case we experienced compile
errors in a source branch that would never be executed. Therefore we remove
the code there and throw an exception.
2018-09-21 15:07:54 +02:00
Andreas Lauser
cfdf9f3e4d fix build on some Linux distributions
i.e., mine (openSuse Tumbleweed). the problem seems to be that the
specialization of `ISTLSolver::constructAMGPrecond()` is ambiguous and
some compilers seem to be more strict about this than others. Simply
removing the problematic method seems to work fine.

That said, for non-legacy `flow` this codepath is not taken at runtime
anyway because the `ISTLSolverEbos` class is used!?
2018-09-21 13:53:38 +02:00
Kai Bao
6e2334dcad removing the extra ; after BEGIN_PROPERTIES and END_PROPERTIES
which causes compilation warning.
2018-09-18 13:35:27 +02:00
Joakim Hove
e6be0f5ca6 Make sure the restart files used when testing are OPM style 2018-09-14 14:28:04 +02:00
Joakim Hove
1a0ab98255
Merge pull request #1548 from joakim-hove/connection-updates
Get connection properties directly from the opm-common
2018-09-11 13:19:07 +02:00
Arne Morten Kvarving
af863c82a0
Merge pull request #1562 from andlaus/threading_fixes
flow: default to 2 threads if OpenMP is available
2018-09-11 12:37:13 +02:00