Commit Graph

2950 Commits

Author SHA1 Message Date
Tor Harald Sandve
dc8f811cbe Remove WellStateFullyImplicitBlackoilDense
After the restructuring of of the well model, keeping an extra class for
the "Dense" model is not needed. The only thing still left in
WellStateFullyImplicitBlackoilDense was some solvent related stuff, this
PR moves this to WellStateFullyImplicitBlackoil and removes
WellStateFullyImplicitBlackoilDense.

In addition to a cleaning code this PR fixes missing solvent well output.
2017-10-11 10:54:59 +02:00
Kai Bao
2458b45901 removing GEFAC and SSOL from MissingFeatures.cpp 2017-10-10 15:53:12 +02:00
Atgeirr Flø Rasmussen
de1be6b5ef Merge pull request #1273 from GitPaean/different_oscillation
avoiding the oscillation treatment applied to well solution
2017-10-10 14:29:04 +02:00
Andreas Lauser
ab93f58371 some minor cleanups
this fixes a few warnings and removes now-unnecessary function arguments.
2017-10-10 14:07:07 +02:00
Arne Morten Kvarving
a0b81a131a quell signed/unsigned mismatch warning 2017-10-09 14:45:08 +02:00
Atgeirr Flø Rasmussen
63b38cfe20 Merge pull request #1281 from totto82/fixRESV
Use pore volume weighted averaged hydrocarbon state in rateConverted.
2017-10-09 13:42:43 +02:00
dr-robertk
682424a7bf Merge pull request #1286 from blattms/communicate-ebos-solution-in-run
Communicate the ebos solution at the beginning of the run method.
2017-10-09 13:13:58 +02:00
Andreas Lauser
cede806bd5 flow: refactor the specializations
The motivation for this PR is that currently the build fails on my
Ubuntu 17.10 laptop with two processes because that machine "only" has
8 GB of RAM (granted, the optimization options may have been a bit too
excessive). under the new scheme, each specialization of the simulator
is put into a separate compile unit which is part of
libopmsimulators. this has the advantages that the specialized
simulators and the main binary automatically stay consistent, the
compilation is faster (2m25s vs 4m16s on my machine) because all
compile units can be built in parallel and that compilation takes up
less RAM because there is no need to instantiate all specializations
in a single compile unit.

on the minus side, all specializations must now always be compiled,
the approach means slightly more work for the maintainers and the
flow_* startup code gets even more complicated.
2017-10-06 15:35:00 +02:00
Andreas Lauser
0c92c24dcb flow_ebos*: make it build and (the sequential part) work if dune-fem is available
in particular, this implied some changes to the MPI initialization
code. since dune-fem's GridPart class currently has issues with
CpGrid's implementation of loadBalance(), parallel computations still
do not work if dune-fem is around, but at least sequential ones now
do even if MPI is enabled.
2017-10-06 15:35:00 +02:00
Andreas Lauser
64d7366de2 mark the non-template methods of the adaptive time stepper as inline
this is needed to avoid linker errors if this class ought to be used
in multiple compile units. IMO the main problem here is the use of an
_impl.hpp file.
2017-10-06 15:34:59 +02:00
Markus Blatt
9adc4d5d3c Communicate the ebos solution at the beginning of the run method.
Currently, the ReservoirState passed to the method and converted
to the initial solution of the Ebos simulator might have wrong
values in the ghost layer (this is the case for SPE9, Norne, Model 2).
This commit uses the syncOverlap method to update these values once they
are converted to the Ebos solution. The  ReservoirState remains untouched.
This is enough to have consistent values throughout the simulation and only
introduces one additional communication step.
2017-10-05 14:33:48 +02:00
Arne Morten Kvarving
35fbe03ca7 remove unused variables
quells warnings
2017-10-05 12:02:10 +02:00
Arne Morten Kvarving
167147acc4 use std::remove_const instead of Dune::remove_const 2017-10-05 12:02:10 +02:00
Tor Harald Sandve
ebc2f46967 Use pore volume weighted averaged hydrocarbon state in rateConverted.
- pressure, rs and rv is averaged using hydrocarbon pore volume weights.
- pvtRegions is used as input in the conversion factor calculations.
- the pvt cell of the first well cell is used as the pvt index.
(Completing a well in two different PVT regions sounds like a very bad
idea anyway)
- FIP region support is added to the rate converter also for the ebos
interface.
2017-10-03 10:25:56 +02:00
Kai Bao
28a7167d61 avoiding the oscillation treatment applied to well solution
it is a design to avoid some performance degeneration for parallel
running.
2017-09-29 17:15:39 +02:00
Atgeirr Flø Rasmussen
f7529cf33e Merge pull request #1269 from GitPaean/fixing_well_efficiency
correcting the way to use efficiency factor in assembleWelEq
2017-09-25 10:26:55 +02:00
Atgeirr Flø Rasmussen
83ca6d41e3 Merge pull request #1263 from totto82/gasoil
Make 2p gas oil compile and run
2017-09-21 14:03:33 +02:00
Tor Harald Sandve
5839962e31 Some trivial cleaning 2017-09-21 12:16:46 +02:00
Atgeirr Flø Rasmussen
c1024ce2d1 Merge pull request #1268 from blattms/log-wells-debug-messages-only-on-master
Log debug messages about wells only on master.
2017-09-21 10:33:04 +02:00
Tor Harald Sandve
992ab84435 Remove support and tests for pseudo 2p model in flow ebos 2017-09-20 08:11:44 +02:00
Tor Harald Sandve
b452d16f46 Fix parallell run 2017-09-19 11:16:34 +02:00
Tor Harald Sandve
69c608829f Include RESV in the scaling factor
- solvent + RESV is not correct. Make the simulator throw until this is
sorted out.

- remove unused parameter
2017-09-18 11:28:13 +02:00
Tor Harald Sandve
352dccd5e9 Make 2p gas oil compile and runs
-- use mapping from canonicalToActiveCompIdx from Ebos
-- add guards againts non-existing components
2017-09-18 11:28:13 +02:00
Alf Birger Rustad
7b1e034a90 Merge pull request #1270 from atgeirr/fix-output-timestep
Fix report step number associated with substeps.
2017-09-17 20:25:33 +02:00
Atgeirr Flø Rasmussen
60fe6b2687 Fix report step number associated with substeps.
It appears summary files by convention expect all substep data points to
be chunked together with the data point at the end of the report step.
2017-09-15 12:04:30 +02:00
Kai Bao
fa03db07f8 correcting the way to use efficiency factor in assembleWelEq 2017-09-11 13:01:55 +02:00
Markus Blatt
a1f960b467 Reallow logging fatal errors for well convergence on all ranks 2017-09-07 14:45:00 +00:00
Markus Blatt
5d1eff5107 Log debug messages about wells only on master.
Previously all ranks logged the message and did clutter the
output files quite a bit.
2017-09-07 14:17:56 +00:00
Kai Bao
cd4d17bfa7 removing a few unused nw variable in StandardWell_impl. 2017-09-07 15:04:09 +02:00
Atgeirr Flø Rasmussen
77f3bdaeda Merge pull request #1257 from totto82/add_invert4x4
Add invert4x4 specialization for invertMatrix()
2017-09-04 09:08:32 +02:00
Tor Harald Sandve
210f1edf25 Add test for invert 4x4 matrix specialization 2017-08-29 11:01:20 +02:00
Kai Bao
b4538af164 not throwing when encountering multisegment wells. 2017-08-29 10:01:31 +02:00
Kai Bao
9accb56c86 adding a test for well model.
It is just test for StandardWell.
2017-08-25 14:09:26 +02:00
Kai Bao
355be6c26c collecting the NaN and too large well residuals
make sure all the processes will throw if there is any of the processes
found abnormal residual values.
2017-08-25 14:09:26 +02:00
Kai Bao
8abe48a693 making destructor of WellInterface virtual
to avoid memory leaking.
2017-08-25 14:09:26 +02:00
Kai Bao
a60a969257 fixing one memory-leaking for flow_ebos running 2p case. 2017-08-25 14:09:26 +02:00
Kai Bao
96340a23ff computePerfRate and crossFlowAllowed protected in StandardWell 2017-08-25 14:09:26 +02:00
Kai Bao
bc78553686 renaming well_solutions_ and well_variables
to give slightly easier understanding.
2017-08-25 14:09:26 +02:00
Kai Bao
25869026e5 renaming a few functions
to reflect the functions better. No functional change.
2017-08-25 14:09:26 +02:00
Kai Bao
9a4a9a2bcc using well name and allow_cf form well_ecl. 2017-08-25 14:09:26 +02:00
Kai Bao
a908bd7cf1 makding createWellContainer a static function. 2017-08-25 14:09:26 +02:00
Kai Bao
f9b7094075 fixing of some comments
no functional change.
2017-08-25 14:09:26 +02:00
Kai Bao
52af70ad0e adding debugging output for solveWellEq
to tell if the solveWellEq is successful.
2017-08-25 14:09:26 +02:00
Kai Bao
a29be796e7 adding comments about function calculateBhpFromThp. 2017-08-25 14:09:26 +02:00
Kai Bao
277d26df8a cleaning up well residual related in BlackoilModelEbos
TODO: how to output the information for debugging well iteration
process.
2017-08-25 14:09:26 +02:00
Kai Bao
7a9fc2132e more cleaning up of StandardWellsDense.
not functional change.
2017-08-25 14:09:26 +02:00
Kai Bao
68edfd7235 removing several unused variables. 2017-08-25 14:09:26 +02:00
Kai Bao
fe3d2f91e0 adding functions to calcuate between thp and bhp
to reduce some code duplication in StandardWell
2017-08-25 14:09:26 +02:00
Kai Bao
8a12ec677f more cleaning up
not funtional change.
2017-08-25 14:09:26 +02:00
Kai Bao
66b5226039 removing some unused variables
to reduce warnings.
2017-08-25 14:09:26 +02:00