Commit Graph

5743 Commits

Author SHA1 Message Date
Arne Morten Kvarving
911a89fc4c fixed: use the ebos ISTL class
to avoid legacy code in tests that will sit in this repo
2018-11-14 12:27:39 +01:00
Atgeirr Flø Rasmussen
49a7773b30
Merge pull request #1630 from akva2/split_vfp
Split VFP classes in ebos and legacy
2018-11-14 11:04:05 +01:00
Arne Morten Kvarving
c5ae3adbbf changed: split VFP classes in base (ebos) and legacy
to get rid of eigen usage in ebos based classes
2018-11-14 09:54:33 +01:00
Atgeirr Flø Rasmussen
e1e39b4bd9
Merge pull request #1626 from GitPaean/fixing_different_number_of_wells_due_to_wtest
fixing different well number between Wells and Well_containers
2018-11-14 09:37:09 +01:00
Atgeirr Flø Rasmussen
54cc52dcaf
Merge pull request #1629 from akva2/remove_rogue_includes
remove two rogue includes
2018-11-14 09:06:13 +01:00
Arne Morten Kvarving
e8c2029166 remove two rogue includes
motivation: getting rid of BlackoilPropsAdFromDeck in ebos code path
2018-11-14 08:35:21 +01:00
Atgeirr Flø Rasmussen
8d2bc0e449 Add missing include for std::vector. 2018-11-13 20:26:44 +01:00
Kai Bao
8f56634b69 fixing different well number between Wells and Well_containers
when the solveWellEq did not get converged.
2018-11-13 20:01:38 +01:00
Atgeirr Flø Rasmussen
58642254e0
Merge pull request #1624 from akva2/split_mpi_func
split mpi function from newtoniterationutilities
2018-11-13 19:21:56 +01:00
Arne Morten Kvarving
e0a9e13a97 split mpi function from newtoniterationutilities 2018-11-13 15:26:44 +01:00
Kai Bao
2ed2c20f12
Merge pull request #1623 from atgeirr/use-convergencereport-gather
Use gatherConvergenceReport() in BlackoilWellModel.
2018-11-13 15:16:34 +01:00
Atgeirr Flø Rasmussen
d858f2901a
Merge pull request #1614 from totto82/well_ppp
Output of well potential when asked for
2018-11-13 14:29:58 +01:00
Atgeirr Flø Rasmussen
446dbdf86d Use gatherConvergenceReport().
This avoids multiple all-reduce blocks, simplifying the code and
enabling us to return the report from getWellConvergence().
2018-11-13 14:02:55 +01:00
Atgeirr Flø Rasmussen
6e7cc756de Move implementation of gatherConvergenceReport() to cpp file.
No templates involved, no reason to keep it in header. This also makes
building more robust by only invoking HAVE_MPI in the cpp file, after
including config.h.
2018-11-13 14:01:01 +01:00
Atgeirr Flø Rasmussen
566f6813dd Created gatherConvergenceReport() function and test. 2018-11-13 10:30:32 +01:00
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
576852b299 Remove cell_index from ReservoirFailure struct. 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
8dc874dda4 Make the computation of the productivity index only when asked for 2018-11-08 13:28:52 +01:00
Tor Harald Sandve
3bc292d168 Store well potential in well_state and pass it for output if asked for
A zero well potential is passed if the computation fails or
if it is a multisegmented well.
2018-11-08 13:28:24 +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