Atgeirr Flø Rasmussen
8a5203814b
Make consistent use of const for alq-related state.
...
A const well state was passed to functions that were modifying it by
calling setALQ(). Now the setALQ() method is made non-const, mutable
references to the well state are passed where sensible. The getALQ()
method uses map::at() instead of map::operator[] and no longer modifies
current_alq_. With this, it is now easy to see which methods modify the
well state and which don't. The alq-related members in the
WellStateFullyImplicitBlackoil class are no longer 'mutable'-qualified.
2020-11-19 10:09:52 +01:00
Ove Sævareid
0f7e66e151
Alternative solvent extension for the black oil model.
2020-11-17 12:33:19 +01:00
Atgeirr Flø Rasmussen
cb928f90f0
Refactor per-perforation code into separate function.
...
Also make some methods const.
2020-11-16 11:19:03 +01:00
Markus Blatt
049aaad326
Adds original ECL index of well connection to PerforationData
...
and use it in the WellInterface instead of creating a vector
with these indices there. The original approach recreates
information in another path of the well and assumes that all
connections are in a process's local partition. That assumption
does not hold any more for distributed wells.
2020-11-12 17:21:37 +01:00
Atgeirr Flø Rasmussen
7e87ea3200
Refactor to put updateWellStateRates() in base class.
2020-10-15 14:15:05 +02:00
Atgeirr Flø Rasmussen
52c695937b
Implement extended network model.
2020-10-15 10:54:03 +02:00
Håkon Hægland
d707967f58
Implements support for gas lift optimization.
...
Implements gas lift optimization for a single StandardWell. Support for
gas lift optimization for multi-segment wells, groups of wells and
networks is not implemented yet.
The keywords LIFTOPT, WLIFTOPT, and VFPPROD are used to supply parameters for
the optimization. Also adds support for summary output of liftgas
injection rate via keyword WGLIR.
2020-09-30 10:04:39 +02:00
Joakim Hove
0565d6f402
Remove unused #include of exceptions
2020-09-21 11:12:15 +02:00
Arne Morten Kvarving
914053ac3c
changed: remove GET_PROP_VALUE macro usage
2020-08-27 13:01:51 +02:00
Arne Morten Kvarving
74fac38d85
changed: remove GET_PROP_TYPE / GET_PROP macro usage
2020-08-27 08:19:39 +02:00
Kai Bao
a38dc27bcb
refactoring for iterateWellEquations
2020-08-11 09:10:19 +02:00
Kai Bao
11807747cb
renaming solveWellEqUntilConverged to be iterateWellEquations
2020-08-11 09:10:19 +02:00
Tor Harald Sandve
fefa5c22ce
make assembleWellEqIteration private
2020-08-11 09:10:19 +02:00
Tor Harald Sandve
fc45b1bd47
Add inner iterations for standard wells also
2020-08-11 09:10:19 +02:00
Tor Harald Sandve
cf702a5384
use relaxed tolerance for MSW when solution stagnates
2020-05-22 20:52:14 +02:00
Atgeirr Flø Rasmussen
e7e4cf6f20
Silence warnings and fix whitespace.
2020-04-08 10:41:20 +02:00
Tor Harald Sandve
66931b9cb7
Various fixes and refactoring.
...
- Communicate all well rates.
- When changing controls, modify rates to satisfy failed constraint.
- Ensure targets are positive.
- Always solve for potentials for MSW (temporary fix).
2020-04-02 13:57:05 +02:00
Atgeirr Flø Rasmussen
3a5a8c23df
Use generic control equation implementation.
2020-04-02 13:54:58 +02:00
Atgeirr Flø Rasmussen
766d02cacc
Unify group control equation codes.
2020-04-02 13:54:58 +02:00
Atgeirr Flø Rasmussen
27f62399f5
Handle guide-rate based well constraints from groups.
2020-04-02 10:41:57 +02:00
Kai Bao
56580ad431
adding WGR support for WECON
2020-01-30 21:54:36 +01:00
Trine S. Mykkeltvedt
99e7785fb5
renamed saltwater-->brine and removed keywords from missingFeatures
2020-01-09 14:14:38 +01:00
Trine S. Mykkeltvedt
5749615bd8
addd simple salt/brine implementation
2020-01-09 14:14:38 +01:00
Atgeirr Flø Rasmussen
d4433b80b5
Improve/fix well potential calculations for MultiSegmentWell.
...
Includes fixes for bhp-based potentials, and an implementation for thp-based
potentials similar to that for StandardWell.
2019-12-04 11:01:45 +01:00
Atgeirr Flø Rasmussen
bddeaba880
Delete obsolete include directives and functions.
...
Also make other minor adjustments, in particular moving the function
getCubeDim() from WellsManagerDetail to WellHelpers.hpp.
2019-11-25 10:58:44 +01:00
Atgeirr Flø Rasmussen
87188f5862
Avoid using the Wells struct.
2019-11-25 08:36:18 +01:00
Joakim Hove
fce5d2f369
Rename Well2 -> Well and Group2 -> Group
2019-11-13 23:18:01 +01:00
Atgeirr Flø Rasmussen
a536b90891
Improve stopped wells logic and log messages.
2019-10-18 16:08:07 +02:00
Tor Harald Sandve
c21428419a
support REIN for solvent
2019-10-18 16:08:07 +02:00
Tor Harald Sandve
f71d6c8623
implement proper guiderate support
...
Tested on simple problems including GUIDERAT
2019-10-18 16:08:07 +02:00
Tor Harald Sandve
53896ffca8
Use well and group controls from opm-common.
...
This PR remove the usage of well_control_ from opm-core
and instead uses the control classes for wells and groups
from opm-common.
This PR also removes the usage of the group classes from
opm-core.
2019-10-18 16:08:07 +02:00
Atgeirr Flø Rasmussen
5211217c94
Whitespace fixes (tabs->spaces, reformatted new files).
2019-10-11 15:57:51 +02:00
Halvor M. Nilsen
d873ae165d
Enable single-phase runs.
2019-10-11 08:19:18 +02:00
Robert Kloefkorn
f708286111
[cleanup][Wells] Consequently use SparseMatrixAdapter in addWellContributions.
2019-10-09 10:27:38 +02:00
Joakim Hove
3d36565db7
Adapt to enum changes
2019-09-03 22:18:34 +02:00
Atgeirr Flø Rasmussen
fdcfa8f0ff
Merge pull request #1955 from GitPaean/well_potential_improvements
...
using self-copying when calculating well potentials
2019-08-21 15:31:09 +02:00
Kai Bao
f40c1cc12f
throw when calling addWellContributions() for MSW
2019-08-15 11:29:30 +02:00
Kai Bao
4d8afb8539
using self-copying when calculating well potentials
...
in order to re-use the existing well model in stead of re-creating new
ones. The latter way really complicates the function createWellContainer
in BlackWellModel.
2019-08-09 10:02:28 +02:00
Atgeirr Flø Rasmussen
b9e7881878
Finalize integration of foam module.
2019-08-07 10:39:16 +02:00
Franz G. Fuchs
7fb90bff47
Use foam module.
2019-08-07 10:39:16 +02:00
Kai Bao
450f87551e
adding GOR checking for WECON
2019-07-05 14:57:16 +02:00
Kai Bao
cbbd75164e
refactoring the ration economic limit checking
2019-07-02 12:44:56 +02:00
Kai Bao
53b15527c2
fixing warnings under simulator/wells
2019-06-26 09:52:38 +02:00
Kai Bao
e15a8f62e8
considering not OPEN connection when updateCompletions
...
in WellInterface.
2019-06-24 21:20:37 +02:00
Kai Bao
e0bd33db43
using template instead of pointer to function
...
for functions checkMaxRatioLimitWell and checkMaxRatioLimitCompletions
2019-06-24 14:03:20 +02:00
Kai Bao
b27a646b98
adding function checkMaxRatioLimitCompletions in WellInterface
...
and use it in checkMaxWaterCutLimit()
2019-06-21 14:11:12 +02:00
Kai Bao
7bb06e1c3c
adding function checkMaxRatioLimitWell to WellInterface
...
and use it in function checkMaxWaterCutLimit
2019-06-21 14:11:12 +02:00
Kai Bao
8be28e8448
adding function initCompletions() to WellInterface
2019-06-21 14:11:12 +02:00
Atgeirr Flø Rasmussen
5749a7150c
Move files out of opm/core/simulator.
2019-06-20 11:00:52 +02:00
Atgeirr Flø Rasmussen
a33cfbf0bc
Moved Flow-related classes and files to opm/simulators/flow.
2019-06-20 11:00:51 +02:00