Commit Graph

2407 Commits

Author SHA1 Message Date
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
Tor Harald Sandve
6e03b9706f Apply Appleyard fixes to solven model
Tested on SPE5 and Model2 + co2
2016-12-05 13:44:33 +01:00
Tor Harald Sandve
294ca31fc8 Fixes in the Appelyard in updateState and updateWellState
1) changes dp_max_rel default to 0.2
2) introduces a dbhp_max_rel paramter to restrict the bhp update in the
updateWellState() (instead of using the dp_max_rel) Default is set to
1.0
3) Restrict rs and rv between 0,and the satruation value
4) Set rs and rv to zero for the water only cases
5) Guard against zero rs and rv when calcuating the maximum allowed rs
and rv change.

Tested on norne, model 2 and model 2.2

Number of problems for the different models with and without this fix
Case
this PR master
Norne
10
45
Model 2
21
78
Model 2.2
200
248
2016-12-05 13:44:33 +01:00
Markus Blatt
dcb3a20f7a Specialize direct solver for Dune::MatrixBlock.
In upstream they expect to be used with FielMatrix as
the block type only. Thus it it is impossible to use AMG
with a direct coarse solver within OPM. With this patch
it would be possible if we did not use field type float.
2016-12-02 15:34:31 +01:00
Robert Kloefkorn
42ab4d133f [bugfix] add defunct_well_names to BlackoilModelEbos. 2016-12-02 11:13:06 +01:00
Robert Kloefkorn
2eca5d71e6 [bugfix] fix ownerMask for parallel FIP code. 2016-12-01 22:25:46 +01:00
Andreas Lauser
e6acf888cc flow_ebos: tell the ebos in ourselves to not handle SWATINIT
because the flow part also wants to do this. (and it is quite a bit
more stubborn!)
2016-12-01 16:50:31 +01:00
Robert Kloefkorn
c5ca9649d7 [bugfix] Make initialization work in parallel for flow_ebos. 2016-12-01 16:50:31 +01:00
Robert Kloefkorn
1c2a2c417c [bugfix] make flow_ebos work when no wells are present. 2016-12-01 16:50:28 +01:00
Andreas Lauser
5ebed2f500 flow_ebos: only instantiate the grid once
it now uses the grid object which gets created by ebos for everything
which should make the parallelization efforts easier. I also tried to
cut back the use of the legacy property objects (i.e., for the fluid,
geologic and rock properties), but this effort ran aground because of
the initialization and output code. (also, if those two were fixed,
there would probably be issues with the Newton update.)

I ran Norne with this and there did not seem to be any notable
performance regressions or benefits.
2016-12-01 16:50:06 +01:00
Jørgen Kvalsvik
28c36ef949 Mini deck is reference, not pointer 2016-12-01 16:18:04 +01:00
Atgeirr Flø Rasmussen
2abb2c8144 Merge pull request #914 from GitPaean/test_iterative_wellcontrol
[WIP] making the updateWellControls an iterative process for StandardWells
2016-12-01 10:52:03 +01:00
Atgeirr Flø Rasmussen
63b0498843 Merge pull request #951 from andlaus/improve_SimulatorReport
extend and clean up the SimulatorReport
2016-11-30 19:34:11 +01:00
Andreas Lauser
69240fe435 StandardWellsDense: fix two assertations
the compiler suggested braces around the conditions, and by look of
it, it was right: these asserts most likely want express that only the
threephase case or the twophase case without gas are handled...
2016-11-29 14:29:51 +01:00
Andreas Lauser
fdb01cb9a3 flow_ebos: fix build with debugging flags
once more, it seems like we became a victim of the combinatorial
explosion of possibilities.
2016-11-29 11:36:30 +01:00