Kai Bao
92a4d8687f
adding bhp as a parameter of computeWellFlux in StandardWellsDense
...
To make the function usable for computing well potentionals.
2017-01-16 16:18:35 +01:00
Atgeirr Flø Rasmussen
5955cb07ba
Merge pull request #1026 from andlaus/flow_ebos-sync-with-flow_legacy
...
Flow ebos sync with flow legacy
2017-01-16 15:56:20 +01:00
Andreas Lauser
ae38de70ef
flow_ebos: update the solution of the eWoms model from the reservoir state before each time step
...
this is has become necessary by the recent SWATINIT changes and is
needed to calculate the fluid-in-place consistently as well as for
ebos to use the correct initial solution for the initial
linearization.
2017-01-16 12:42:35 +01:00
Andreas Lauser
30e9d3826d
synchronize SimulatorFullyImplicitBlackoilEbos::run() with SimulatorFullyImplicitBlackoil::run()
2017-01-16 12:42:35 +01:00
Andreas Lauser
d87b788d09
BlackoilModelEbos: make computeFluidInPlace() work unconditionally
...
i.e. it now works regardless of whether the cache for intensive
quatities is available or not.
2017-01-16 12:42:35 +01:00
Atgeirr Flø Rasmussen
1d918453c9
Warn instead of throw when missing DIMS keyword.
...
Default values will be used for parsing.
2017-01-13 11:07:02 +01:00
Atgeirr Flø Rasmussen
8534b82c2e
Merge pull request #1022 from atgeirr/silence-warning
...
Silence unused argument warning.
2017-01-13 09:26:46 +01:00
Atgeirr Flø Rasmussen
bc35b753b5
Merge pull request #1003 from blattms/merge-only-created-parallel-files
...
Only try to merge files from a parallel run if ouptput requested.
2017-01-12 17:00:12 +01:00
Atgeirr Flø Rasmussen
6ea858b6b9
Silence unused argument warning.
2017-01-12 15:35:13 +01:00
Atgeirr Flø Rasmussen
af3049b5a6
Merge pull request #1016 from andlaus/flow_ebos-remove-redundant-gravity
...
flow_ebos: remove the redundant gravity objects
2017-01-12 12:19:19 +01:00
Andreas Lauser
7a7ebc010f
flow_ebos: remove the redundant gravity objects
...
the canonical source is now the EclProblem object.
v2: don't change the API of the DerivedGeology class. thanks to
[at]atgeirr for noticing that this can be avoided.
2017-01-12 11:20:02 +01:00
Atgeirr Flø Rasmussen
0028b35e03
Merge pull request #1018 from andlaus/simplify_isParallel
...
simplify BlackoilModelEbos::isParallel()
2017-01-12 10:41:15 +01:00
Tor Harald Sandve
28bbe20344
Merge pull request #1012 from andlaus/cleanup_StandardWellsDense
...
small improvements to StandardWellsDense
2017-01-12 10:27:18 +01:00
Atgeirr Flø Rasmussen
af2c9a8200
Merge pull request #1015 from andlaus/flow_ebos-remove-redundancy
...
FlowMainEbos: remove the redundant pointer to the MaterialLawManager
2017-01-12 10:25:47 +01:00
Atgeirr Flø Rasmussen
eb8132453f
Merge pull request #1017 from andlaus/remove_allcells
...
SimulatorFullyImplicitBlackoilEbos: remove unused "allcells_" attribute
2017-01-12 09:59:41 +01:00
Andreas Lauser
3a9146866a
simplify BlackoilModelEbos::isParallel()
2017-01-11 18:57:47 +01:00
Andreas Lauser
f808c5b681
SimulatorFullyImplicitBlackoilEbos: remove unused "allcells_" attribute
2017-01-11 18:53:06 +01:00
Andreas Lauser
8c76bf5b9b
FlowMainEbos: remove the redundant pointer to the MaterialLawManager
2017-01-11 17:16:46 +01:00
Andreas Lauser
f2115b44ac
BlackoilModelEbos: remove the last traces of "SolutionState"
...
it was not used for real for a while anyway.
2017-01-11 17:07:08 +01:00
Andreas Lauser
b324d17003
small improvements to StandardWellsDense
...
the most significant change is that only a "PhaseUsage" object must be
passed to its constructor instead of a full "fluid object". also, the
pointers to the vector of "active" phases has been converted into a
full object. (this helps to avoid potential use-after-free errors.)
2017-01-11 17:02:20 +01:00
Markus Blatt
aacbdb1777
Switch off non-owner entries during accumulation.
...
Previously entries attached to cells that are present
on multiply processes were acumulated several times.
2017-01-11 12:20:32 +01:00
Joakim Hove
4411712dce
Merge pull request #1008 from joakim-hove/correct-rsrv-dim
...
Fixed output units RS and RV.
2017-01-10 21:39:25 +01:00
Atgeirr Flø Rasmussen
cd9dcfc59d
Merge pull request #1007 from blattms/StandardWells-support-no-wells
...
Make StandardWells support cases with no wells.
2017-01-09 17:05:04 +01:00
Atgeirr Flø Rasmussen
1c594100c2
Merge pull request #1006 from blattms/ebos-fip-global-sum
...
Added missing global sum for FIP totals.
2017-01-09 17:04:50 +01:00
Joakim Hove
6b0626272d
Fixed output units RS and RV.
2017-01-09 16:20:19 +01:00
Markus Blatt
86209139db
Make StandardWells support cases with no wells.
...
Dense case was handled in PR #1002 . I was not aware that the same
regression was in the legacy code. wells_manager.c_wells() might return
a null pointer if there are no wells in the domain of a process.
2017-01-09 16:12:07 +01:00
Markus Blatt
7c91be92a9
Added missing global sum for FIP totals.
2017-01-09 15:55:39 +01:00
Markus Blatt
fb55aedf4b
Fix unit conversion of fip totals (pav) again.
...
This was (accidentally?) introduced in c880efae5b
(labelled
"mostly eliminate Eigen in the FIP and VFP code"). As it is neither
present in flow_ebos nor in flow_mpi and was previously removed in
ccec17f8
(labelled "Fixed missing unit conversion for total fluid in place")
I assume that this is a bug.
2017-01-09 15:31:40 +01:00
Atgeirr Flø Rasmussen
c292dd4975
Merge pull request #1004 from andlaus/fix_undefined_behaviour
...
avoid relying on undefined behaviour
2017-01-09 12:49:03 +01:00
Atgeirr Flø Rasmussen
fbad16aba7
Merge pull request #1001 from blattms/ebos-parallel-fip-total
...
Implement parallel fip total computation.
2017-01-09 12:33:43 +01:00
Markus Blatt
0a904deb02
Only try to merge files from a parallel run if ouptput requested.
...
If it is not requested then output_dir is not created and boost
will throw an exception if we try to read from a non existing
directory.
2017-01-09 12:09:49 +01:00
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
babrodtk
5923f64322
Removed unused variable (which gave me compilation errors)
2016-12-22 13:00:51 +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
6893aca90f
Merge pull request #972 from GitPaean/fixing_polymer_omega
...
fixing the calculation when polymer not fully mixed
2016-12-19 13:22:48 +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
Tor Harald Sandve
f65f5d2c3b
Store whether timestep failed or not
...
Used in flow ebos to tell the simulator to recalculate the cached
quantities for failed timesteps.
2016-12-19 10:52:59 +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
Kai Bao
b8e0cda83a
putting update of water injection mobility to a separate function
...
computeInjectionMobility() in BlackoilPolymerModel
2016-12-16 08:56:35 +01:00
Kai Bao
4f3ce37b8e
correcting one not helpful comments.
...
which results from the re-organization of the code.
2016-12-16 08:56:35 +01:00
Kai Bao
894bffd1b3
handling the injection mobility when mixing paramter not 1
...
The treatment with shear-thinning is not well tested yet.
2016-12-16 08:56:35 +01:00
Kai Bao
4f8ae4be73
putting the re-calculating wellflux inside if plyshlog
...
it only happens when shear effect calculation is needed. No point to
re-calculate the well flux when no shear thinning needed.
2016-12-16 08:56:35 +01:00
Kai Bao
9307a41fd5
using the polymer concentration in the polymer transport
...
since we already introduce the polymer viscosity there, we should apply
the water and polymer viscosity ratio again.
2016-12-16 08:56:35 +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
jokva
efc2a79540
Merge pull request #898 from joakim-hove/remove-stale-output
...
Removed all calls to writeECLData.
2016-12-06 16:06:15 +01:00
Atgeirr Flø Rasmussen
508da6689f
Change include path for writeVtkData.hpp, or remove include.
2016-12-06 09:48:03 +01:00
Atgeirr Flø Rasmussen
14ab6b6810
Add writeVtkData(), including version for UnstructuredGrid.
2016-12-06 09:26:45 +01:00
Joakim Hove
7ef40b3512
Removed all calls to writeECLData.
2016-12-06 08:34:17 +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
Kai Bao
8148105ae3
Revert "changing polymer production concentration to be the grid block concnetration."
2016-12-05 15:05:56 +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
Kai Bao
81a73650de
polymer production concentration to be the grid block concnetration.
...
To be more consistent with the injection well.
2016-12-05 12:52:21 +01:00
Andreas Lauser
676af2b00b
AdaptiveTimeStepping: fix stupid (but harmless) mistake in the sub-step info message
...
that was a copy-and-pasto: newton iterations = linearizations - 1
2016-12-03 15:04:32 +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
6720eb7a75
clean up and extend the SimulationReport class
...
it now also accounts for assembly, linear solve, update and output
write time and indicates if an operation has converged.
2016-11-30 11:27:49 +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
Andreas Lauser
5bb23cfe9d
Merge pull request #946 from andlaus/implement_two-phase_blackoil
...
Implement two phase blackoil
2016-11-28 15:16:19 +01:00
Andreas Lauser
8c5f92dbc4
extend and clean up the SimulatorReport
2016-11-25 21:19:57 +01:00
Kai Bao
69d5ec94c9
adding localWellsActive() checking for two MSW functions
...
updatePerfPhaseRatesAndPressures() and addWellFluxEq()
2016-11-25 13:45:38 +01:00
Arne Morten Kvarving
312491f349
Merge pull request #2 from andlaus/flow_ebos-fix-kr-units
...
also fix the units of the relperm in SimulatorFullyImplicitBlackoilOutputEbos
2016-11-24 18:19:33 +01:00
Andreas Lauser
12bed02b1e
also fix the units of the relperm in SimulatorFullyImplicitBlackoilOutputEbos
2016-11-24 18:13:49 +01:00
Arne Morten Kvarving
f813d829e4
fixed: [WAT|OIL|GAS)KR are ratios and thus dimensionless
2016-11-24 17:43:06 +01:00
Kai Bao
e57da11fbd
making the updateWellControls an iterative process for StandardWells
...
Seperating the updateWellStateWithTarget from updateWellControls, will
update the controls when any of the control constraints gets broken.
The reason is that the updated well control can still break some of
other the contstaints. We need to choose one control to make sure all the
constraints are honored.
2016-11-24 11:27:59 +01:00
Atgeirr Flø Rasmussen
bda6a42299
Merge pull request #939 from blattms/fix-ebos-warnings
...
Fixes unsused parameter warnings for ebos stuff
2016-11-22 15:33:34 +01:00
Tor Harald Sandve
d23270c98f
Fix the 2p simulator
...
Only tested for oil+water case
The blockmatrix and vectors are hardcoded to be 3
and a trivial equation is used for the Gas phase.
2016-11-22 15:01:48 +01:00
Andreas Lauser
5e0804b39f
some twophase fixes for flow_ebos
...
this changes the conversion of the results to hopefully make it work
with twophase simulations. Note that flow_ebos still does not work
because there is a crash in the well model that I don't understand
(and also, I've disabled an assertation in the well model plus I'm not
completely sure if the conversion code need to do something about the
primary variables in the twophase case).
2016-11-22 15:01:48 +01:00
Joakim Hove
21b1b2318d
Merge pull request #943 from jokva/write-init-and-egrid-rename
...
Rename to EclipseWriter.writeInitial
2016-11-22 12:59:51 +01:00
Atgeirr Flø Rasmussen
621a72bb25
Merge pull request #941 from blattms/read-write-perforation-rates-and-pressure
...
Read write perforation rates, pressure, phase reates, and control of wells.
2016-11-22 11:16:19 +01:00
Jørgen Kvalsvik
ffc3de0f6e
Rename to EclipseWriter.writeInitial
2016-11-22 09:52:41 +01:00
Markus Blatt
0179a17704
Gather well controll, too.
2016-11-21 21:20:47 +01:00
Markus Blatt
f601ac4013
Gather perforation phase rates, too.
...
To do this we needed to switch from WellState to WellStateFullyImplicitBlackoil
as only the latter stores this information.
2016-11-21 21:19:51 +01:00
Markus Blatt
88e118d76a
Consistently use WellStateFullyImplicitBlackoil in output
...
Otherwise we cannot write out all the data in a parallel run.
2016-11-21 21:19:51 +01:00
Markus Blatt
a6c323c48b
Read and write rate and pressure per well perforation when gathering.
2016-11-21 21:19:39 +01:00
Robert Kloefkorn
feea8c1753
Introduce parameter for time step in days when single precision should be used
...
in the linear solvers. Also, a parameter was introduced to toggle the use of AMG.
2016-11-21 17:18:24 +01:00
Markus Blatt
a16bce8785
Fixes unsused parameter warnings for ebos stuff
2016-11-21 15:23:12 +01:00
Atgeirr Flø Rasmussen
720d341c76
Merge pull request #938 from dr-robertk/PR/cleanup-paralleldebugoutput
...
ParallelDebugOutput: remove unused variable and tabbing.
2016-11-21 12:20:32 +01:00
Robert Kloefkorn
a2b2e6dd27
[cleanup][ParallelDebugOutput] remove unused variable and tabbing.
2016-11-21 11:26:08 +01:00
Atgeirr Flø Rasmussen
95cc415fba
Merge pull request #937 from akva2/quell_warnings
...
Quell some compiler warnings
2016-11-21 11:11:46 +01:00
Arne Morten Kvarving
caac9d7843
fixed: put variable under ifdef to avoid unused warnings without mpi
2016-11-21 10:21:11 +01:00
Arne Morten Kvarving
b0aae037f6
quell unused variable warning
2016-11-21 10:20:24 +01:00
Atgeirr Flø Rasmussen
e223c03647
Merge pull request #800 from OPM/frankenstein
...
Frankenstein V2
2016-11-18 15:49:31 +01:00
Robert Kloefkorn
5fce54fd44
[bugfix][ISTLSolver] make code compile with AMG when different matrix operator
...
is used.
2016-11-18 12:47:54 +01:00
Robert Kloefkorn
59f40ba14e
[cleanup][WellModelMatrixAdapter] use only one implementation of the matrix
...
adapter to avoid confusion.
2016-11-18 12:47:54 +01:00
Robert Kloefkorn
a0da20378c
[bugfix][WellModelMatrixAdapter] fix applyscaleadd method.
2016-11-18 12:47:54 +01:00
Robert Kloefkorn
439a084508
[bugfix][BlockoilModelEbos] fix invalidation of intensive quantities after
...
linear solver failure.
2016-11-18 12:47:54 +01:00
Atgeirr Flø Rasmussen
54ad92ff40
Merge pull request #931 from atgeirr/fix-deck-error
...
Do not assign to dereferenced null pointers.
2016-11-18 11:59:40 +01:00
Andreas Lauser
2f208962f0
revert AutoDiffMatrix back to the master version
...
that class is not used by flow_ebos anymore...
2016-11-18 11:24:35 +01:00
Andreas Lauser
b2f7b8c989
Merge remote-tracking branch 'origin/master' into frankenstein
2016-11-18 11:09:41 +01:00
Atgeirr Flø Rasmussen
1bd58cf471
Merge pull request #862 from GitPaean/group_control
...
group control_updating well production targets within a group
2016-11-17 23:27:00 +01:00
Andreas Lauser
a3fecc8edc
flow_ebos: fix the build
...
this broke after the latest master merge (again, the reason were API
changes. this time they did not lead to merge conflicts.)
I've verified that flow_ebos works with Norne and that the performance
did not regress.
2016-11-17 16:34:53 +01:00
Andreas Lauser
0d00579f7d
Merge remote-tracking branch 'origin/master' into frankenstein_merge_master_v12
...
* origin/master:
Start with a clean globalCellData_ for each data gathering.
Added assertion that entry was added to globalCellData_ for pack/unpack
Use data::Solution to gather cell data including user requested data.
Warn about broken parallel matlab output.
a few warning fixing.
Removed second implementation of matlab output.
Fix spelling in warning about unhandled parallel ouput.
2016-11-17 16:08:21 +01:00
Kai Bao
0ab04b04cd
checking whethter group control is active
...
When applying group control related functions.
2016-11-17 16:01:59 +01:00
Andreas Lauser
b8a0bb6aea
Merge pull request #926 from totto82/frankenstein_revertChanges
...
Revert som changes in default values
2016-11-17 13:46:37 +01:00
Atgeirr Flø Rasmussen
71bd419c03
Do not assign to dereferenced null pointers.
2016-11-17 13:18:02 +01:00
Atgeirr Flø Rasmussen
cf84626da0
Merge pull request #929 from blattms/flexible-parallel-ouput
...
Allow output for user requested data in parallel runs.
2016-11-17 11:40:09 +01:00
Markus Blatt
80bbabc0b6
Start with a clean globalCellData_ for each data gathering.
...
Otherwise there might entries from the last call that should
either not be there this time or might have a different size.
2016-11-16 21:21:51 +01:00
Markus Blatt
098bd8f9fc
Added assertion that entry was added to globalCellData_ for pack/unpack
2016-11-16 21:20:14 +01:00
Bård Skaflestad
8cc64402be
Merge pull request #927 from GitPaean/warning_fixing
...
a few warning fixing.
2016-11-16 18:48:51 +01:00
Markus Blatt
00440ab344
Use data::Solution to gather cell data including user requested data.
...
Previously only the cell data registered with SimulationDataContainer
war gathered during parallel output. User requested data was neglected
and a warning was issued. With this commit we intialize the local view
of data::Solution on all processes with the data registered in
SimulationDataContainer and add cell data requested by the user. This is
then gathered on the IO process, and used for the output layer. To
rudimentarily support matlab we also create a global view of
SimulationDataContainer for it.
2016-11-16 17:11:24 +01:00
Markus Blatt
5ad813b4bd
Warn about broken parallel matlab output.
...
If this is a parallel run and matlab output is requested then
we issue a warning that it is broken because of wrong velocities.
2016-11-16 17:09:53 +01:00
Tor Harald Sandve
b66bb27a65
Revert som changes in default values
...
Make sure flow in Frankenstein and flow in master uses the same default
values
2016-11-16 15:09:54 +01:00
Kai Bao
d38a6eb459
adapting the change of the function findWellNode().
2016-11-16 14:28:35 +01:00
Kai Bao
d06acaa4b5
adapting to the change in opm-core
2016-11-16 14:06:20 +01:00
Kai Bao
f85da3768e
cleaning up and updating MultisegmentWells
2016-11-16 13:27:30 +01:00
Kai Bao
6bbc726bc2
checking and outputing the residuals for the well equations.
...
Before, the tolerance for the norm of the residual of the well control
equations was 1bar, which makes no sense for rate control.
For some rate controls, we are not able to update the well state with
the target rates, we have to enforce the convergence throught the
residual checking.
2016-11-16 13:26:54 +01:00
Kai Bao
002439c5b1
WIP in testing new group update strtegy.
...
results with min_iter=2 works okay, while not min_iter=1.
It means the iteration stop at the wrong situation.
2016-11-16 13:26:28 +01:00
Kai Bao
753da2dd36
putting the VREP control update after updateWellControls
...
which makes it almost should be put inside updateWellControls function.
it does not change the result.
2016-11-16 13:25:35 +01:00
Kai Bao
a5aaf9b802
easier way to update whether the well under group control
...
potentially can be more consistent way.
It does not change the result.
2016-11-16 13:25:35 +01:00
Kai Bao
8a1e1e010a
using findWellNode() to avoid dynamic_casting
...
form WellGroupInterface* to WellNode*.
2016-11-16 13:25:35 +01:00
Kai Bao
337693cc65
removing the wrongly wrapped std::vector
...
adding more comments for future reference.
2016-11-16 13:25:35 +01:00
Kai Bao
9150c217f2
making the VREP enforcement into a small method.
...
in BlackoilModelBase.
2016-11-16 13:25:35 +01:00
Kai Bao
9a95697fde
updating some comments.
2016-11-16 13:25:35 +01:00
Kai Bao
75e0ff0018
Trying always to give a valid control when initing WellState.
...
Without the fix, when we specify GRUP control for WCONINJE, the control
mode will be initialized to be -1.
2016-11-16 13:25:35 +01:00
Kai Bao
8474ff2895
fixing all the simulators that call solveWellEq.
...
Not all the group control functionalities working for allt the
simulators. Some need to be fixed later.
2016-11-16 13:25:35 +01:00
Kai Bao
0f3e34bb25
cleaning up some comments.
2016-11-16 13:25:35 +01:00
Kai Bao
cb897b07d0
Adding VREP injection support.
...
As part of it, adding a function to calculate reservoir voidage rate.
2016-11-16 13:25:35 +01:00
Kai Bao
a15513e546
adding a rate converter to the BlackoilModelBase
2016-11-16 13:25:35 +01:00
Kai Bao
e65d24aa16
removing outdated log ouptut code about control switching
...
Which results from the rebasing process.
2016-11-16 13:25:35 +01:00
Kai Bao
e13cf827b5
applying the efficiency factors to the multi-segment wells.
2016-11-16 13:25:35 +01:00
Kai Bao
623ef3850e
applying the efficiency factor to flow
2016-11-16 13:25:35 +01:00
Kai Bao
aca587b76b
calculate efficiency factor in StandardWells
...
which will be used to scale the perforation flow rate when entering the
matrial balance equations.
2016-11-16 13:25:35 +01:00
Kai Bao
ac67a10316
removing one updateWellControls from solveWellEq
...
not recalling why adding it in the first place.
And correcting some comments for clarification.
2016-11-16 13:25:35 +01:00
Kai Bao
e049508eec
adding the group control related part to MultisegmentWells
...
while looks like the well potentials part may not work with multisegment
wells.
Will check later.
2016-11-16 13:25:35 +01:00
Kai Bao
0df52603d7
fixing the interface of wellModel constructors
...
to make all the simulators compile.
2016-11-16 13:25:35 +01:00
Kai Bao
26b16c1050
cleaning up the output and adding more comments.
2016-11-16 13:25:11 +01:00
Kai Bao
d992161b82
output cleaning up and add more comment.
2016-11-16 13:24:39 +01:00
Kai Bao
e323f15d2f
putting more things in the prototyping test.
2016-11-16 13:23:55 +01:00
Kai Bao
e0dd9bfabd
keeping putting group control in.
2016-11-16 13:22:52 +01:00
Kai Bao
f62d40fc05
adding a pointer to the well_collection of WellsManger
...
might change to reference later. Using pointer now is trying to keep the
WellModel constant.
2016-11-16 13:22:52 +01:00
Kai Bao
1c34af4dea
a few warning fixing.
2016-11-16 13:17:35 +01:00
Markus Blatt
b91f747a3e
Removed second implementation of matlab output.
...
There is already a generic one with the Grid implementation
being the template parameter in the header file. The other
implementation using UnstructuredGrid does exactly the same.
Therefore we remove it with this commit.
2016-11-16 12:16:40 +01:00
Atgeirr Flø Rasmussen
fd4d57e68c
Merge pull request #923 from blattms/fix-spelling-for-unhandled-ouput
...
Fix spelling in warning about unhandled parallel ouput.
2016-11-15 20:50:40 +01:00
Andreas Lauser
89f2636b2e
Merge pull request #921 from totto82/frankenstein_output_fixes
...
Frankenstein output fixes
2016-11-15 13:05:27 +01:00
Tor Harald Sandve
b04f79b15f
Fix 2phase celldata output
2016-11-15 12:48:25 +01:00
Andreas Lauser
fc4dfea185
Merge remote-tracking branch 'origin/master' into frankenstein
...
* origin/master:
checking the residual for the well control equations.
2016-11-15 12:27:04 +01:00
Tor Harald Sandve
f8bf7c392c
Fix some temporary fallouts in the outputwriter
2016-11-15 12:23:46 +01:00
Markus Blatt
55362ecdc2
Fix spelling in warning about unhandled parallel ouput.
2016-11-15 12:08:58 +01:00
Andreas Lauser
e1178455a2
flow_ebos: fix a memory error in the fluid in place code
...
as usual for such errors, this was found using valgrind.
2016-11-14 19:49:33 +01:00
Andreas Lauser
293f7ca1c7
Merge pull request #916 from totto82/frankenstein_fix_appleyard2
...
Improvments in convergence for flow_ebos
2016-11-14 15:02:00 +01:00
Andreas Lauser
e84de929cf
flow_ebos: alter the startup message
...
... to make apparent from the output which simulator was used.
2016-11-14 14:18:11 +01:00
Andreas Lauser
4271da8d84
flow_ebos: fix the build
...
mainly, the "linsolver_" attribute is called "istlSolver_" in the
BlackoilModelEbos class. Also, this problem possibly only occured if
MPI was enabled...
2016-11-14 13:36:01 +01:00
Tor Harald Sandve
739c0906ef
Improvments in convergence for flow_ebos
...
- restrict pressure changes. Set default to 1.0 (this also effects flow)
- change default number of linear iterations to 150
- tell stabilized newton the residual occilates even if it occilates in
only one phase (this also effects flow)
- avoid problems realated to division on small numbers
Tested on SPE9, norne and Model 2 with significant improvments.
2016-11-14 13:26:38 +01:00
Atgeirr Flø Rasmussen
ae9cd62a5c
Merge pull request #906 from GitPaean/test_residual_checking
...
checking the residual for the well control equations.
2016-11-14 10:44:44 +01:00
Tor Harald Sandve
36ce159411
Calculation the original FIP at the beginning
2016-11-14 10:16:57 +01:00
Tor Harald Sandve
5a917a4828
Output FIP in flow_ebos
2016-11-14 09:34:40 +01:00
Andreas Lauser
d989c1e2fc
Merge remote-tracking branch 'origin/master' into frankenstein
...
* origin/master:
Do not throw for unrecognized file when merging log files.
Do not populate cellData but issue a warning in parallel.
Removed ternary operator in inline initialization.
Correctly mark transfer of ownership for ouptut writer
Indent nested #if
Remove Solution.sdc assignment
Cater variable name change in BCRSMatrix of DUNE 2.5
Fix using local active cells for writing eclipse files in parallel.
add restart test for SPE1CASE2_ACTNUM
rename the 'flow' binary to 'flow_legacy' and set a symbolic link
Added ctest for restart files
2016-11-11 18:29:46 +01:00