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
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
Atgeirr Flø Rasmussen
58eea94460
Merge pull request #1247 from totto82/removeState-PR
...
Remove reservoirState from BlackoilModelEbos
2017-08-22 20:47:16 +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
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
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
Kai Bao
cf902e1a8b
Simulator Blackoil and StandardWellsDense uses same rate_converter
...
fixing the running of group control.
2017-08-10 10:25:39 +02:00
Atgeirr Flø Rasmussen
0a440d98ce
Merge pull request #1238 from totto82/removeConvertResults2
...
Ask ebos to formulate the equation by surface volumes directly
2017-08-10 10:01:32 +02:00
Atgeirr Flø Rasmussen
1e0facec4a
Fix updateState() saturation update.
2017-08-09 15:47:39 +02:00
Atgeirr Flø Rasmussen
608a674858
Make dh_sat behave like in coupled transport solver.
2017-08-07 16:17:57 +02:00
Kai Bao
338828fdce
fixing the running of the vfp related for flow_ebos
...
the output of the THP is still not yet correct.
2017-08-07 11:39:11 +02:00
Atgeirr Flø Rasmussen
c39341006d
Bugfix: follow opm-material convention for capillary pressure
2017-08-04 11:39:51 +02:00
Atgeirr Flø Rasmussen
e9e4416428
Make computeCellState() a const method.
2017-08-04 11:39:09 +02:00
Atgeirr Flø Rasmussen
12bd67e248
Create oil-in-place data if overall efficiency is requested by output.
2017-08-01 16:40:34 +02:00
Atgeirr Flø Rasmussen
babf06eade
Merge pull request #1243 from blattms/write-initial-oip
...
Write the initial OIP values if requested.
2017-08-01 16:15:46 +02:00
Kai Bao
ab1b57b994
fixing the if condition for 2p + dummy phase
...
from if (numComp < numEq) to if (numComp < numWellEq)
2017-07-31 12:43:50 +02:00
Markus Blatt
900fec427d
Cleaned up bogus documentation and whitespace
2017-07-20 12:37:01 +02:00
Markus Blatt
c06e5b7cf8
Removed boolean parameter indicating initial write to writeTimeStep.
...
Instead we use the timer to determine whether this is the initial write.
2017-07-20 12:12:41 +02:00
Markus Blatt
b89aa1fa4a
Added initialStep to SimulatorTimerInterface
2017-07-20 12:11:11 +02:00
Markus Blatt
1939453adb
Write the initial OIP values if requested.
...
This is when writing the first time step as is this is
the first step when OIP is available.
2017-07-19 22:06:08 +02:00
Markus Blatt
542f181f7e
Narrow down the possible Matrix types for ParallelOverlappingILU0
...
It now has to be a BCRSMatrix, but the block type is flexible and
needs to this way. flow_legacy uses MatrixBlock, and flow_ebos uses
FieldMatrix.
2017-07-03 13:50:21 +02:00
Markus Blatt
1bb0968283
Work around unstable matrix inversion in DUNE 2.[34]
...
The versions are missing the specialized code for inverting
a 3x3 matrix that makes the algorithms quite a bit more stable.
With this patch we fall back to using our own MatrixBlock that does
not suffer from this deficiency.
2017-07-03 10:20:23 +02:00
Tor Harald Sandve
082e00d4ec
Ask ebos to formulate the equation by surface volumes directly
2017-06-29 13:58:20 +02:00
Robert Kloefkorn
ce7f3f46a1
[feature] Added two-phase executable for numEq = 2.
2017-06-29 12:56:37 +02:00