Markus Blatt
9f49e3fc26
Also pass the parseContext and errorGuard to Opm::checkDeck()
...
This is now mandated since the checkDeck interface was changed recently.
Otherwise compilation errors out.
2019-04-10 15:01:52 +02:00
Markus Blatt
81b7af1d8a
Support DUNE 2.5 with CPR reusing hierarchy
2019-04-10 15:01:35 +02:00
Markus Blatt
29e893dc8e
Make sure the the OwnerOverlopCommunication object stays alive.
...
As the AMG hierarchy is kept and uses the initial OwnerOverlopCommunication object
we need to make sure that this object lives as long as the hierarchy. We assure
this by storing a shared_ptr to it in ISTLSolverEbosCpr and reuse it to construct
the WellModelMatrixAdapter.
2019-04-10 14:40:46 +02:00
Markus Blatt
8057c2ba83
Use a shared pointer to the OwnerOverlapCommunication in WellModelMatrixAdapter.
...
Previously the OwnerOverlapCommunication object was owned by the adapter as a
unique_ptr was used. The change to shared_ptr makes it possible to to extract
it and reuse even if OwnerOverlapCommunication is thrown away.
2019-04-10 14:40:46 +02:00
Markus Blatt
6538b59d9e
Added parallel CPR that reuses the matrix hierarchy.
...
Currently this just compiles but still segfaults in parallel.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
07e495c9da
More minor cleanup.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
7664d27849
Clean up formatting and get most types from superclass.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
be86b90bac
Make typed protected rather than private, enabling inheritance.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
2cf990e404
Do not store copy of weights inside BlackoilAmgCpr class.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
416cc93f96
Remove code that is no longer needed.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
0e5a5c5266
Minor cleanup.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
3d9c776384
Disable most of the file, as the base version is sufficient.
...
All features have been added to BlackoilAmg.hpp.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
6d18c2849d
Allow updating the AMG preconditioner.
...
This adds the significant modifications from the BlackoilAmgCpr
experimental class to BlackoilAmg.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
032701ffc9
Silence unused argument warnings.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
0e1db0c6bd
Reindent, remove unused function (after refactoring).
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
5d68a308b5
Fix memory bug by refactoring.
...
Moving out of a matrix in the same function argument list as the matrix is passed
to another function is wrong. Simplified by avoiding the unwieldy tuple.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
c92d84432c
Replace tabs with spaces.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
5f4f8b71a8
Silence override and member order warnings.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
29837be2e3
Changes to minimize differences to original istl versions.
...
Also added note pointing to original istl files.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
13c6463f89
Refactor to be closer to the original amg.hh.
...
Should minimize the diff when comparing.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
b39815edb5
Minor formatting and removing unused code.
2019-04-10 14:40:46 +02:00
Atgeirr Flø Rasmussen
28dfef1ecf
Compile fix: do not use undefined member.
2019-04-10 14:40:46 +02:00
hnil
4f1603407d
Added timing of prepare call for linear solvers
2019-04-10 14:40:46 +02:00
hnil
ed24b3fcad
changed code to use direct solver on coarses scale for amg. This should runtime stettings for this..
2019-04-10 14:40:46 +02:00
hnil
f05a9fdb25
Version of cpr amg which can reuse setup and also change smoothers of fine and coarse system by changing tags
2019-04-10 14:40:46 +02:00
Kai Bao
1faf4de904
not throw for failure when failing in calculating well potentials
...
it is just a temporary approach to recover the prediction case. In the
case, there is no group control, while there is some requirements of
well potential output
2019-04-09 14:28:44 +02:00
Kai Bao
e73fc4ebe4
first version of using upwinding to handle mass balance for MSW
...
some details to come to make it complete.
We are not handling it for injectors and also we are not considering the
upwinding when handle the frictional pressure loss and acceleration
pressure loss.
2019-04-08 14:23:21 +02:00
Kai Bao
2c69556fad
correcting of the sign when calculating perforation pressure
...
the sign of the perforation and cell pressure difference was wrong.
2019-04-08 14:23:05 +02:00
Kai Bao
dadb31f093
fixing some mistakes from rebasing
2019-04-07 14:55:08 +02:00
Kai Bao
e5090a26fb
setting the simulation parameters
2019-04-07 14:55:08 +02:00
Kai Bao
49a8c7bfd1
changing the sign of the mass balance equations for ms wells
...
following the conventions with StandardWell
2019-04-07 14:55:08 +02:00
Kai Bao
23d2097d44
various improvements to the inner iteration of ms wells
2019-04-07 14:54:05 +02:00
Kai Bao
031c19fc78
fixing mistakes due to rebasing.
2019-04-07 14:54:05 +02:00
Kai Bao
e9c0bdba06
using B_avg for the inner iteration for multisegment wells
2019-04-07 14:54:05 +02:00
Kai Bao
1df65913d7
updating the primary variables before calculating accumulation term
2019-04-07 14:54:05 +02:00
Kai Bao
79e51ab724
handling the situation that not all the connections are open
...
Then Wells struct and well from parser hold different numbers of
connections.
The current approach is a temporary solution. The final approach should
be done through parser side.
Things can be difficult is because that connections can be removed due
to multiple different causes after parsing. How to keep information
always updated is not trivial.
2019-04-07 14:53:38 +02:00
Kai Bao
c78a59eb1f
considering the pressure dependence of the segment volume
...
segment volume is fixed, while duo to composition and pressure change,
within the fixed segment volume, different amounts of fluids can be
contained.
2019-04-07 14:53:38 +02:00
Kai Bao
972fed602e
using a small value drawdown for connection
...
when crossflow is banned from the well, while the crossflow is happening
for this connection for mutlisegment well.
2019-04-07 14:53:38 +02:00
Kai Bao
04c35c8916
UseMultisegmentWell is defaulted to be true
...
to make the testing of the multisegment well model easier.
2019-04-07 14:52:18 +02:00
Kai Bao
f8767e09ec
cleaning up and fixing the compilation error from rebasing
2019-04-07 14:52:18 +02:00
Kai Bao
9d83affb1b
first version of restarting for multisegment well
2019-04-07 14:52:18 +02:00
Kai Bao
0d99686e97
fixing the segment treatment in the init of WellStateFullyImplicitBlackoil
2019-04-07 14:52:18 +02:00
Bård Skaflestad
2932531572
Merge pull request #1782 from GitPaean/upadting_perforation_solution_msw
...
updating perforation pressure and rates for MSW well
2019-04-05 16:41:43 +02:00
Andreas Lauser
4805e9fe05
ebos: run the diagnostics code for relative permeabilities
...
maybe this needs to be reverted since the code in question can
cause the simulation to abort inadvertently.
As usual, `flow` is unaffected because this functionality is only
called in experimental mode and flow calls it itself.
2019-04-05 16:21:22 +02:00
Andreas Lauser
67a8283000
ebos: call Opm::checkDeck() after parsing
...
this catches at least some common issues with ECL decks.
2019-04-05 16:21:22 +02:00
Joakim Hove
63f6f34906
Merge pull request #1781 from andlaus/adapt_to_checkDeck_changes
...
also pass the parseContext and errorGuard to Opm::checkDeck()
2019-04-05 12:07:40 +02:00
Atgeirr Flø Rasmussen
a8d8fb86c3
Merge pull request #1592 from bska/report-segment-res
...
WellState FIBO: Return Segment Vectors from report()
2019-04-05 10:49:14 +02:00
Kai Bao
e2b8edd968
updating perforation pressure and rates for MSW well
2019-04-05 10:38:01 +02:00
Andreas Lauser
6f1018f11a
also pass the parseContext and errorGuard to Opm::checkDeck()
2019-04-04 18:13:36 +02:00
Kai Bao
b62dc0b5f2
addressing review comments
2019-04-04 16:22:19 +02:00