Commit Graph

5430 Commits

Author SHA1 Message Date
Kai Bao
fb5fa836c0 removing some repeated contents in getWellConvergence in StandardWellsDense
which results from the rebasing process.
2017-08-25 14:09:26 +02:00
Kai Bao
48dee6bd7a renaming function allCrossFlow() in StandardWell
to avoid confusion. and the detail of the function needs to be
justified.
2017-08-25 14:09:26 +02:00
Kai Bao
e5b5e250fe incoporating more content from PR 1220
while the parts related to polymer are not incoporated fully yet, since
it has been considered in the new well model refactoring.
2017-08-25 14:09:26 +02:00
Kai Bao
e3399ca203 fixing some compilation error after rebase.
while a lot of new stuff have not entered, since many of the essential
parts are in different files now. Rebasing will not incoporate the new
stuff automatically.
2017-08-25 14:09:26 +02:00
Kai Bao
07d24b9d8d solveWellEq in StandardWellsDense calls
solveWellEq from each individual well.
2017-08-25 14:09:26 +02:00
Kai Bao
9dace225de adding wellEqIteration() to StandardWell
the involvement of the group control in updateWellControls() makes the
solution of well equations for each well individually more troublesome.
As a result, we will still makes the solveWellEq in all the wells level.
2017-08-25 14:09:26 +02:00
Kai Bao
d99fe876dd adding getWellConvergence for StandardWell 2017-08-25 14:09:26 +02:00
Kai Bao
e01e8c352a adding function computeWellConnectionDensitesPressures to StandardWell 2017-08-25 14:09:26 +02:00
Kai Bao
0f997a537a adding computeConnectionPressureDelta to StandardWell
it is also copied from WellDensitySegmented while only handle one
Standard Well.
2017-08-25 14:09:26 +02:00
Kai Bao
9514e44d13 adding function computeConnectionDensities to StandardWell
which is copied from WellDensitySegmented, while avoid using of the
Wells struct.

TODO: find a better place to put these long functions.
2017-08-25 14:09:26 +02:00
Kai Bao
20c36d19c1 adding computePropertiesForWellConnectionPressures to StandardWell 2017-08-25 14:09:26 +02:00
Kai Bao
d3378ab403 adding function computeAverageFormationFactor to StandardWellsDense
which is seperated from getWellConvergence for better flexiblity later.
2017-08-25 14:09:26 +02:00
Kai Bao
9c65684bf0 adding updateWellControl to StandardWell
TODO: check whehter it should go to WellInterface.
2017-08-25 14:09:26 +02:00
Kai Bao
f293e81336 adding function updateWellStateWithTarget to StandardWell
without dealing with wsolvent function. It can be just a member variable
since we are handling well one by one individually.
2017-08-25 14:09:26 +02:00
Kai Bao
1d9d70ee02 adding the updateWellState to StandardWell
this function is very long and need to debug very carefully and it
should be split for better readability for sure.
2017-08-25 14:09:26 +02:00
Kai Bao
1174d2de54 adding assembleWellEq to StandardWell
F0_ is not initialized yet.
2017-08-25 14:09:26 +02:00
Kai Bao
1942853337 adding function computePerfRate to StandardWell 2017-08-25 14:09:26 +02:00
Kai Bao
7223163155 handing the numComponents in WellInterface 2017-08-25 14:09:26 +02:00
Kai Bao
266442b0bd adding extendEval() to StandardWell
For this type of functions that related to Evaluation should be
implemented within individual well model.
2017-08-25 14:09:26 +02:00
Kai Bao
ff2ada66bc adding the three swapping functions to WellInterface
They should only be used to change the order related to the reservoir
variables, so they should be same for all the well models and should be
put in the WelInterface.
2017-08-25 14:09:26 +02:00
Kai Bao
1a4ceeec66 makding the StandardWell and WellInterface templated
with the template parameter TypeTag.
2017-08-25 14:09:26 +02:00
Kai Bao
182bf315f3 implementing getQs() and getBhp() within StandardWell.
It does not compile. Now it is pretty clear that anything related to
Evalulation should go to each individual well model (StandardWell or MS
well ) and not stay with the Wells.
2017-08-25 14:09:26 +02:00
Kai Bao
2d02503091 more or less getting the old implementation in
and compile now.
2017-08-25 14:09:26 +02:00
Kai Bao
0cf6699591 adding StandardWell class
copied from the old implementation, which is the starting point for the
new refactoring
2017-08-25 14:09:26 +02:00
Kai Bao
910fe0318c adding the WellInteface
will be the base class for different well models.
2017-08-25 14:09:26 +02:00
dr-robertk
060631c5dc Merge pull request #1258 from dr-robertk/PR/make-one-flow-executable
Add a common executable for all flow variants.
2017-08-25 13:50:46 +02:00
Robert Kloefkorn
4266f89397 [cleanup] remove logFile line since it does not make sense. 2017-08-25 12:57:25 +02:00
Robert Kloefkorn
9ed71510c1 [feature][flow] add tests for flow. 2017-08-24 11:57:14 +02:00
Robert Kloefkorn
36c2133783 [cleanup] improvement of output message. 2017-08-24 11:39:46 +02:00
Robert Kloefkorn
07e0d71906 [feature][flow] Add a common executable for all flow variants, i.e.
flow_ebos, flow_ebos_polymer, flow_ebos_solvent, flow_ebos_2p.
2017-08-23 16:21:15 +02:00
Tor Harald Sandve
6716ca63c9 Force solvent saturation between [0,1] 2017-08-23 09:50:40 +02:00
Tor Harald Sandve
55fc987af8 Add 4x4 invertMatrix specialization in FMatrix
The specialization is added in the ISTLSolver, not in fmatrix.h in dune-
common since 1) we need it now 2) the special treatment of singular and
near singular matrices may be specifiy to the solvent model.
2017-08-23 09:50:19 +02:00
Atgeirr Flø Rasmussen
58eea94460 Merge pull request #1247 from totto82/removeState-PR
Remove reservoirState from BlackoilModelEbos
2017-08-22 20:47:16 +02:00
Atgeirr Flø Rasmussen
3d0e1c053e Merge pull request #1256 from akva2/spe9group_update_data
add spe9group to reference data update script
2017-08-22 14:42:36 +02:00
Arne Morten Kvarving
86bc690ea4 add spe9group to reference data update script
was missing in 1950052684
2017-08-22 14:28:58 +02:00
Tor Harald Sandve
6146190844 Fixes comments from PR
Don't sum ghost cells in the RateConverter
Some cleaning and comments.
2017-08-18 08:46:44 +02:00
Atgeirr Flø Rasmussen
8998207d7e Merge pull request #1253 from blattms/print-bubble-dew-point-problems-only-on-0
Output bubble/dew point computation problems only on rank 0.
2017-08-17 22:25:53 +02:00
Tor Harald Sandve
6bca2ea69c Fix rebase 2017-08-17 11:34:33 +02:00
Tor Harald Sandve
2bf8d48272 Remove redundant local state in ParallelDebugOutput 2017-08-17 11:13:00 +02:00
Tor Harald Sandve
593546da4b Fix 2p case in relativeChange(...) in BlackoilModelEbos 2017-08-17 11:13:00 +02:00
Tor Harald Sandve
ce84a59b29 Remove reservoirState from BlackoilModelEbos
1) Use the solution variable directly in RelativeChange(...)
2) Add a method in the RateConverter that takes the simulator instead of the state.
3) Pass the reservoir pressure directly to the well initialization.
4) Move convertInput(...) to SimulatorFullyImplicitBlackoilEbos.hpp.
This code is only used to convert the initial reservoir state.
5) Modify  updateState(...). The solution variable is updated directly and adaptPrimaryVariable(...)
from ewoms is used to switch primary variables. An epsilon is passed to adaptPrimaryVarible(...) after a switch
of primary variables to make it harder to immediately switch back.

The following code used by flow_ebos still uses the reservoirState
1) the initialization
2) restart
3) output of the initial state
4) the step methods in AdaptiveTimeStepping and NonlinearSolver.
The reservoirState is not used by this methods, so after the initial step, an empty reservoirState is passed around in the code.
2017-08-17 11:13:00 +02:00
Atgeirr Flø Rasmussen
a9eb98d620 Merge pull request #1254 from atgeirr/fix-warning
Silence unused variable warnings.
2017-08-16 10:28:56 +02:00
Atgeirr Flø Rasmussen
e3ceecdfa4 Silence unused variable warnings. 2017-08-15 11:17:30 +02:00
Markus Blatt
7b3b99f692 Output bubble/dew point computation problems only on rank 0.
We do this by switching to output the global index of the cells.
In a first step the problematic cell indices are gather on process 0.
Then they are logged there.

This should prevent spurious ouput at the end of PRT and DEBUG files after the
simulation time is printed. This happened previously for some parallel
runs of model 2. Unfortunately, it seems these problems do not appear any
more for the current master. At least I could not reproduce them.
2017-08-14 21:34:54 +02:00
Atgeirr Flø Rasmussen
c6e729b1bf Merge pull request #1252 from atgeirr/debug-reordering-solver
Fixing bugs and improving the reordering solver
2017-08-10 14:09:58 +02:00
Atgeirr Flø Rasmussen
67823c5893 Disable debugging output of detailed cell data. 2017-08-10 13:09:22 +02:00
Atgeirr Flø Rasmussen
a3aa4539be Merge pull request #1251 from GitPaean/fixing_group_control2
Simulator Blackoil and StandardWellsDense uses same rate_converter
2017-08-10 12:57:59 +02:00
Atgeirr Flø Rasmussen
784bcf6892 Experiment with relaxing single cell iterations. 2017-08-10 12:31:04 +02:00
Atgeirr Flø Rasmussen
9cf6832140 Ignore limits to rs and rv changes.
As implemented with a relative limit, even with 1e9 default limit it
would still be impossible to get away from a zero value. It is
possible that the limits may return later, implemented in a less
buggy way, however for now they do not seem necessary.
2017-08-10 11:25:47 +02:00
Kai Bao
c59aa9127e making rate_converter to be reference to the one in Simulator
keeping the const property in the Well Model.
2017-08-10 11:20:09 +02:00