Commit Graph

2371 Commits

Author SHA1 Message Date
Andreas Lauser
12083ccfd0 BlackoilPropsAdFromDeck: don't rely on undefined behaviour when initializing the fluid system
in C++ references may be assumed to be non-null. thanks to
[at]atgeirr for pointing this out.
2017-01-09 12:08:29 +01:00
Andreas Lauser
f50dc9507f fix a few pesky sign comparison warnings
the problem here is that some types used as the `BVector` template
parameters return signed integers for the `size()` method, others
return unsigned ones.
2017-01-09 12:05:32 +01:00
Markus Blatt
601dc77a37 Fix typo in exception message 2017-01-09 11:41:34 +01:00
Markus Blatt
6b2c33978e Implement parallel fip total computation.
Up to now parallel runs aborted due to an exception with
the message "FIP not yet implemented for MPI". With this
commit we do the computation in parallel, too. And flow_ebos
runs a bit longer...
2017-01-09 11:40:57 +01:00
Markus Blatt
5bcdb01f5a Make StandardWellsDense support cases with no wells.
In that case `wells_manager.c_wells()` returns a null pointer
which made `updateListEconLimited` segfault. With this commit
we treat a null wells_struct as having zero wells.

With this this and #1001 opm-data/equilibrium at least runs
through in parallel. Results will be checked next.
2017-01-09 11:36:12 +01:00
Atgeirr Flø Rasmussen
86b71e7d48 Merge pull request #989 from jokva/read-rock-compressibility-from-eclipsestate
RockCompressibility takes only EclipseState
2017-01-09 09:33:41 +01:00
Atgeirr Flø Rasmussen
a7922ecfa1 Merge pull request #998 from totto82/fix_so_initialization
Fix SOIL restart initialization
2017-01-09 09:32:19 +01:00
Tor Harald Sandve
5990201ee9 Fix SOIL restart initialization 2017-01-05 10:02:50 +01:00
Andreas Lauser
5fd83985a9 port the RateConverter to use the FluidSystem instead of the old fluid property API
this makes the RateConverter stuff independent of Eigen and it
simplifies some things because the the old PVT API is designed as a
"bulk-with-derivatives" API while the rate converter code used it in
"single shot" mode without derivatives.
2017-01-02 13:19:25 +01:00
Andreas Lauser
66decb4bda BlackoilPropsAdFromDeck: let the BlackOilFluidSystem manage the low level PVT objects
this makes it easier to migrate code away from BlackoilPropsAdFromDeck.
2017-01-02 13:19:25 +01:00
Andreas Lauser
ef731672c9 remove the BlackoilPropsAdInterface abstraction layer
instead, directly use BlackoilPropsAdFromDeck.
2017-01-02 13:19:23 +01:00
Atgeirr Flø Rasmussen
edf883e747 Merge pull request #996 from andlaus/no_eigen_in_VFP_and_FIP
mostly eliminate Eigen in the FIP and VFP code
2017-01-02 12:56:30 +01:00
Atgeirr Flø Rasmussen
d039fc6899 Merge pull request #994 from atgeirr/silence-ebos-warnings
Silence warnings
2017-01-02 09:36:04 +01:00
Andreas Lauser
98b9e2ef58 remove the phase enums from BlackoilPropsAdInterface
since the enums in BlackoilModelEnums.hpp are namespace-global this
does not require any code changes. (except replacing 'Liquid' by
'Oil', etc.)
2016-12-30 14:15:14 +01:00
Andreas Lauser
fb770faca0 fix Dune 2.3 build issue 2016-12-30 11:46:27 +01:00
Andreas Lauser
c880efae5b mostly eliminate Eigen in the FIP and VFP code
this code mostly used the Eigen vectors as arrays anyway, so let's use
`std::vector`.

also, this patch only "mostly eliminates" Eigen from from these parts
of the code because the source files of the VFP code still use
AutoDiffBlock; Unfortunately this cannot easily be changed because
`flow_legacy` depends on these methods. (`flow_ebos` does not use the
incriminating methods.)
2016-12-30 11:46:27 +01:00
Andreas Lauser
ac4dcba7e0 BlackoilModelEnums: don't use high-level classes
I consider the blackoil model enums to be pretty low level while the
"FluidProperties" code is IMO quite high level. this, using the latter
to define the former constitutes a layering violation IMO. note that
the fix is to simply use the enums from opm-core directly.
2016-12-29 18:03:05 +01:00
Atgeirr Flø Rasmussen
b0633110af Silence unused argument warning. 2016-12-29 14:52:03 +01:00
Atgeirr Flø Rasmussen
ae1d78f505 Remove unused argument, silence warnings. 2016-12-29 14:34:16 +01:00
babrodtk
c82887585e Fix for FIP output in ebos 2016-12-22 13:45:31 +01:00
Atgeirr Flø Rasmussen
3e120d6e33 Merge pull request #964 from totto82/reuse_cache2
Reuse cache revisited
2016-12-20 14:46:00 +01:00
Jørgen Kvalsvik
d2b5327a72 RockCompressibility takes only EclipseState 2016-12-20 12:39:34 +01:00
Tor Harald Sandve
bb83504172 Let the simulator to re-assemble when iteration == minIter()
Let the simulator re-assemble and re-calculate the residuls for the case
when the simultor is converged but it was forced to take one more
iteration due to iteration < minIter().
2016-12-20 10:46:03 +01:00
Atgeirr Flø Rasmussen
45fed6d591 Merge pull request #975 from totto82/clean_up_2p
Use templates to avoid hardcoded typedef
2016-12-19 13:01:05 +01:00
Atgeirr Flø Rasmussen
32c8303976 Merge pull request #978 from andlaus/flow_ebos-cleanups-1
BlackoilDetails: split it in two
2016-12-19 12:53:14 +01:00
Andreas Lauser
4020490a29 remove unused function Opm::detail::convergenceReduction() 2016-12-19 11:03:34 +01:00
Andreas Lauser
f29dae5409 BlackoilDetails: split it in two
now we have BlackoilDetails.hpp which contains all stuff that is used
by flow_ebos as well as flow and which does not include anything from
Eigen, and we have BlackoilLegacyDetails.hpp which contains all stuff
that depends on Eigen (and is thus not required by flow_ebos)
2016-12-19 11:03:34 +01:00
Tor Harald Sandve
4fdf57db04 Consider the timestep converged only when number of iteration > minIter 2016-12-19 10:55:28 +01:00
Tor Harald Sandve
a4bc2d455e Fix rebase 2016-12-19 10:55:28 +01:00
Tor Harald Sandve
ae5d812bc5 BUGFIX cache reuse.
invalidate cachedQuantities when updated and when timestep fails
2016-12-19 10:55:28 +01:00
Atgeirr Flø Rasmussen
7e2d46b9f0 Merge pull request #985 from blattms/log-failed-timesteps-on-one
Only log messages about failed timesteps on one processes.
2016-12-19 10:10:21 +01:00
babrodtk
841411037a Added throw if unsupported unit in deck for fluid in place 2016-12-16 13:40:20 +01:00
babrodtk
ccec17f81b Fixed missing unit conversion for total fluid in place 2016-12-16 13:15:22 +01:00
Markus Blatt
51dabf36f2 Only log messages about failed timesteps on one processes.
This OPM_THROW was introduced lately and results in all processes
logging the failure. With this commit the message is logged only once.
2016-12-16 11:30:04 +01:00
Atgeirr Flø Rasmussen
67374531e3 Merge pull request #880 from totto82/appelyard_fixes
Fixes in the Appelyard in updateState and updateWellState
2016-12-15 21:24:11 +01:00
Tor Harald Sandve
d856510b74 Merge pull request #980 from totto82/bugfix_flowebos_density
BUGFIX pass pvtnum to density in convertResults() in FlowEbos
2016-12-15 15:26:47 +01:00
Tor Harald Sandve
ad6b3f995f BUGFIX pass pvtnum to density in convertResults() in FlowEbos 2016-12-15 13:20:09 +01:00
Andreas Lauser
2761df3791 FlowMainEbos: fix the output of the initial condition
I probably did not see this warning when testing f7910af7d7 because
I'm currently flooded by deprecation warnings stemming from
Eigen. (these warnings are caused because I use Ubuntu 16.04 and an
old version of Eigen is cloned by the build system that is not system
installed.)
2016-12-15 09:57:53 +01:00
Atgeirr Flø Rasmussen
381c1cfbd6 Merge pull request #971 from totto82/solvent_fixes3
Fixes in solvent model related to handling vapoil in the well model
2016-12-14 15:31:26 +01:00
Tor Harald Sandve
2bfa96fddf Templatize to avoid hardcoded typedef
Prepare for changing the size of the blocks by templatize BVectors and
Evalution
2016-12-12 14:52:30 +01:00
Andreas Lauser
34c4053c65 StandardWellsDense: fix assert for the 2p case
this wasn't noticed earlier because it only bites in the water-oil
case and only if NDEBUG is not defined.
2016-12-12 14:26:34 +01:00
Tor Harald Sandve
4ac69d51d1 Don't force rs<rsSat and rv<rvSat in updateState 2016-12-12 12:54:57 +01:00
Tor Harald Sandve
4f052e466b Fixes in solvent model related to handling vapoil in the well model
Tested on SPE5 and Model2
2016-12-12 10:12:39 +01:00
Andreas Lauser
3fb55f06e5 flow*: reset the locale settings on startup 2016-12-08 12:17:36 +01:00
Andreas Lauser
d9c01406ea Merge pull request #967 from andlaus/no_opm-parser_pointers
flow_ebos: do not use (smart) pointers for opm-parser objects anymore
2016-12-08 10:03:24 +01:00
Robert Kloefkorn
bf18ee7fb9 fix the merge fallout 2016-12-06 20:05:24 +01:00
Andreas Lauser
ef15d76831 Merge commit 'refs/pull/947/head' of https://github.com/OPM/opm-simulators into no_opm-parser_pointers
* https://github.com/OPM/opm-simulators:
  [bugfix] add defunct_well_names to BlackoilModelEbos.
  [bugfix] fix ownerMask for parallel FIP code.
  flow_ebos: tell the ebos in ourselves to not handle SWATINIT
  [bugfix] Make initialization work in parallel for flow_ebos.
  [bugfix] make flow_ebos work when no wells are present.
  flow_ebos: only instantiate the grid once
2016-12-06 19:43:47 +01:00
Atgeirr Flø Rasmussen
508da6689f Change include path for writeVtkData.hpp, or remove include. 2016-12-06 09:48:03 +01:00
Andreas Lauser
f7910af7d7 flow_ebos: do not use (smart) pointers for opm-parser objects anymore
this patch also includes code to make FlowMainEbos more autonomous
(i.e. it does not derive from FlowMainBase anymore). this allows more
flexibility how and what stuff gets created.
2016-12-05 20:11:43 +01:00
Tor Harald Sandve
e614c42818 Avoid hard-coded appelyard parameter in flow_ebos
Start using the parameters in the parameter file instead of the hard-
coded ones.
Unify the restriction of the drs and drv in black-oil and black-oil-
solvent updateState
2016-12-05 13:44:33 +01:00