Commit Graph

312 Commits

Author SHA1 Message Date
Tor Harald Sandve
ac4ee51a5f
Merge pull request #3465 from totto82/updateWTS
Make sure potentials are computed in some corner cases
2021-08-10 14:15:22 +02:00
Tor Harald Sandve
5cb81d36c9 re-compute potentials for pressure controlled wells with trivial rates 2021-08-09 13:41:50 +02:00
Tor Harald Sandve
153cd678c6 Add a derivative free version of the well rate calculations 2021-08-04 11:32:50 +02:00
Tor Harald Sandve
60f59cd6e6 Potentially reduce gaslift when under well is under group control
Current implemention only support ORAT and GRAT controlled groups
2021-06-30 09:59:09 +02:00
Håkon Hægland
fbb24e2a5a Check group limits in gas lift stage 1.
Check group limits in gas lift stage 1 to avoid adding too much ALQ which must
anyway later be removed in stage 2. This should make the optimization
more efficient for small ALQ increment values. Also adds MPI support.
2021-06-16 12:00:54 +02:00
Joakim Hove
3c3a4afcfc Use PerfData for connection productivity index 2021-06-10 14:32:45 +02:00
Joakim Hove
81c5ce8843 Use PerfData for water throughput, water velocity and skin pressure 2021-06-10 14:32:45 +02:00
Joakim Hove
db02b9f112 Use PerfData for solvent perforation rates 2021-06-10 14:27:37 +02:00
Joakim Hove
49e9b51269 Use PerfData for polymer rates 2021-06-10 07:19:21 +02:00
Joakim Hove
3010b96611 Use PerfData for perforation rates 2021-06-10 07:19:21 +02:00
Joakim Hove
76838cd8a4 Use PerfData for perforation pressure 2021-06-10 07:19:21 +02:00
Arne Morten Kvarving
eb06c4bd70 add StandardWellEval 2021-06-09 08:32:30 +02:00
Joakim Hove
023edc67e5 Remove first perf member from Well classes 2021-06-08 14:24:26 +02:00
Arne Morten Kvarving
10ff86af52 add StandardWellGeneric
avoid rebuilding this for all simulators when code
is only dependent on Scalar. specialized for double
2021-06-08 08:08:50 +02:00
Arne Morten Kvarving
4c09b5dde3 add WellInterfaceEval 2021-06-07 08:26:43 +02:00
Joakim Hove
32a6f32660 Use WellContainer to manage perf phase rate 2021-06-05 07:50:56 +02:00
Joakim Hove
6a21371b59 Use WellContainer to manage perf phase rates 2021-06-04 18:23:20 +02:00
Joakim Hove
76292552ec Use WellContainer for perf rate of polymer/solvent/brine 2021-06-04 18:23:20 +02:00
Joakim Hove
104036d4b8 Use WellContainer for perf water velocity 2021-06-04 18:23:20 +02:00
Joakim Hove
b0fd14a597 Use WellContainer<> for perforation skin pressure 2021-06-04 18:23:20 +02:00
Joakim Hove
1a6737aff3 Use well index for perforation rates 2021-06-03 13:29:45 +02:00
Joakim Hove
739f6ad28a Use well index for solvent perf rates 2021-06-03 13:21:23 +02:00
Joakim Hove
a2195f367d Use well index for brine perf rates 2021-06-03 13:21:23 +02:00
Joakim Hove
fa829cce7a Use well index for polymer perforation rates 2021-06-03 13:21:23 +02:00
Joakim Hove
f62b0a5d1e Use well index for well water perf velocity 2021-06-03 13:21:23 +02:00
Joakim Hove
8f9a3f0140 Use Well index for perf skin pressure 2021-06-03 13:21:23 +02:00
Joakim Hove
89ae75b46c Use well index to access WellState::perfThroughput() 2021-06-03 13:21:23 +02:00
Arne Morten Kvarving
c76803b913 changed: make bhp template hidden and use explicit instantations
this to avoid includes in headers.
2021-05-31 11:42:29 +02:00
Tor Harald Sandve
cccece4104 use rates for potentials for pressure controlled (bhp or thp) controled wells 2021-05-26 13:54:14 +02:00
Joakim Hove
86c75ee4fe
Merge pull request #3298 from akva2/no_opm_in_opm
fixed: do not use Opm:: prefix when inside namespace Opm
2021-05-26 10:15:46 +02:00
Joakim Hove
c400b6eeef
Merge pull request #3290 from joakim-hove/wellcontainer-rsrv
Use WellContainer<double> for RS / RV
2021-05-26 07:22:51 +02:00
Arne Morten Kvarving
d55df4330e fixed: do not use Opm:: prefix when inside namespace Opm 2021-05-25 12:06:06 +02:00
Joakim Hove
b34c161805 Use WellContainer<double> for RS / RV 2021-05-24 10:01:00 +02:00
Joakim Hove
89a712603f Use well index for misc perforation data 2021-05-24 09:14:36 +02:00
Joakim Hove
d6151e2f00 Use well index for perf water throughput 2021-05-24 09:14:36 +02:00
Joakim Hove
2f901f1012 Use well index when iterating over brine perforation rates 2021-05-24 09:14:36 +02:00
Joakim Hove
f9e142dc8d Use well index when iterating over polymer perforation rates 2021-05-24 09:14:36 +02:00
Joakim Hove
5437cfa37a Use well index when iterating over solvent perf rates 2021-05-24 09:14:36 +02:00
Arne Morten Kvarving
1614767362 GasLiftSingleWell: split typetag independent code to separate class 2021-05-21 09:09:10 +02:00
Joakim Hove
506a349085
Use wellcontainer2 (#3255)
Use WellContainer<> to manage members in WellState
2021-05-20 16:16:12 +02:00
Joakim Hove
b0458cee33
Merge pull request #3268 from joakim-hove/wellstate-iget
Wellstate iget
2021-05-19 14:29:26 +02:00
Joakim Hove
6af03f4a6a Update WellState::thp() 2021-05-19 10:05:11 +02:00
Joakim Hove
3ec7feba75 Update WellState::bhp() 2021-05-19 10:05:11 +02:00
Arne Morten Kvarving
bcfab1fed3 use if constexpr to eliminate some brine code 2021-05-18 15:04:47 +02:00
Arne Morten Kvarving
db668e8d80 make has_energy constexpr and use if constexpr to eliminate code 2021-05-18 15:04:47 +02:00
Arne Morten Kvarving
268201eeb1 make has_polymermw constexpr and use if constexpr to eliminate code 2021-05-18 15:04:47 +02:00
Arne Morten Kvarving
dd04eb128a use if constexpr to eliminate some zFraction code 2021-05-18 10:18:11 +02:00
Arne Morten Kvarving
83595d84c3 use if constexpr to eliminate some polymer code 2021-05-18 10:18:11 +02:00
Arne Morten Kvarving
1fa74b5889 use if constexpr to eliminate some foam code 2021-05-18 10:18:11 +02:00
Arne Morten Kvarving
6157122bd8 use if constexpr to eliminate some solvent code 2021-05-18 10:17:21 +02:00
Joakim Hove
b5580f39fa Let the perforation index run over the indices for one well 2021-05-11 22:38:11 +02:00
Joakim Hove
846809ec29 Rename mutable perfPhaseRates() 2021-05-11 18:48:05 +02:00
Tor Harald Sandve
80413e0794 add useInnerIteration method and move assembleWellEq to the well interface to avoid code duplication 2021-05-10 09:41:18 +02:00
Tor Harald Sandve
eeb1b7e36c Initialize empty producers using the mobility ratio and the transmissbility ratio 2021-05-05 08:31:36 +02:00
Tor Harald Sandve
70150ab212 Remove code duplication between STW and MSW 2021-04-30 09:27:35 +02:00
Joakim Hove
e1d117c59f Extract group state and create WGState to manage well & group state 2021-04-27 10:55:38 +02:00
Tor Harald Sandve
12880be916
Merge pull request #3159 from totto82/updateWellTargetFix
get bhp from thp without solving
2021-04-26 13:15:30 +02:00
Tor Harald Sandve
ebcaea3faa get bhp from thp without solving 2021-04-14 15:58:58 +02:00
Tor Harald Sandve
9d56588906 Make gaslift parallel 2021-04-14 14:14:39 +02:00
Håkon Hægland
a80ad54d7d Parallel runs not supported yet.
Gives a warning if gas lift optimization is attempted for more than one
process in the MPI communicator. The plan is to implement support for
muliple processes in a later commit.
2021-03-30 15:42:33 +02:00
Håkon Hægland
434640fdf5 Implements gas lift optimization for groups.
Extends PR #2824 to include support for GLIFTOPT (item 2, maximum lift
gas supply for a group) and group production constraints.

The optimization is split into two phases. First the wells are optimized
separately (as in PR #2824). In this phase LIFTOPT and WLIFTOPT constraints
(e.g. maxmimum lift gas injection for a well, minimum economic gradient) are
considered together with well production constraints.

Then, in the next phase the wells are optimized in groups. Here, the ALQ
distribution from the first phase is used as a starting point. If a group
has any production rate constraints, and/or a limit on its total rate of
lift gas supply, lift gas is redistributed to the wells that gain the most
benefit from it by considering which wells that currently has the largest
weighted incremental gradient (i.e. increase in oil rate compared to
increase in ALQ).
2021-03-30 15:41:46 +02:00
Tor Harald Sandve
8283b53f3b only compute Bavg once pr timestep and use the stored variable instead of passing it around 2021-03-23 15:30:36 +01:00
Joakim Hove
9662d4019e Use enum Well::Status to indicate well status instead of bool 2021-03-20 20:33:28 +01:00
Bård Skaflestad
65edfb702c Preparations for Recording Dynamic Well State
Coalesce blocks with same conditions, split long lines, and apply
'const' where appropriate.  While here, also tighten the "rate = 0"
criterion to include denormalised numbers.
2021-03-18 17:28:28 +01:00
Joakim Hove
fda1d65494 Pass table argument to VFP getFLo() 2021-02-15 22:21:56 +01:00
Joakim Hove
e4789d4eb7 Use std::reference_wrapper for VFP tables 2021-01-26 07:56:59 +01:00
Tor Harald Sandve
036a021c63 fix well model for gasoil thermal 2021-01-21 11:37:25 +01:00
Atgeirr Flø Rasmussen
3a0dbdc6e7
Merge pull request #2993 from blattms/stdwell-comm-rebase-split-cont-clean
Final fixes to make distributed wells work for Norne.
2021-01-15 15:42:45 +01:00
Kai Bao
286a7d2e5b
Merge pull request #3002 from totto82/moveWellOpCheck
move well operability check for STW
2021-01-08 11:28:35 +01:00
Joakim Hove
c1e10d81ba Use ScheduleState to access nupcol 2021-01-06 15:10:05 +01:00
Tor Harald Sandve
5ee75c45e3 move well operability check for STW 2021-01-05 15:10:40 +01:00
Markus Blatt
5b943761d7 Fixes StandardWell::computeConnectionDensities.
This computation is serial and needs a complete representation
of data attached to all preforations (even those stored on
another process). This commit uses the newly created factory to
correctly compute the connection densities for distributed wells.
2020-12-18 14:48:19 +01:00
Markus Blatt
4dff6fb168 Fixes StandardWell::updateProductivityIndex for distributed wells. 2020-12-18 14:48:19 +01:00
Markus Blatt
12f5a6aaff Fixes StandardWell::allDrawDownWrongDirection for distributed wells. 2020-12-18 14:48:19 +01:00
Markus Blatt
ba1feadb63 Added missing parallel reduction to computeCurrentWellRates.
This is supposed to be summation over values at all perforations.
Hence, it needs a parallel sum.
2020-12-18 14:48:19 +01:00
Markus Blatt
fc4a7fa3c1 Fixes StandardWell::updateIPR for distributed wells.
Of course the summation needs to be over all perforations of the
wells, no matter where they reside. Hence we need communication.
2020-12-18 14:48:19 +01:00
Markus Blatt
c09797355d Sum well rates in computeWellRatesWithBhp for distributed wells.
This needs summation over all procs that share the well as it needs
information from all perforations. Some of them might reside on other
processes.
2020-12-18 14:48:19 +01:00
Markus Blatt
c0c1897ea9 Fix computeConnectionPressureDelta for distributed wells.
As this is as sequential (ordering matters!) as it can get we need to
communicate all perforations, do the partial sum with them and save
result back to the local perforations.
2020-12-10 11:32:52 +01:00
Atgeirr Flø Rasmussen
6e87ec6266
Merge pull request #2955 from blattms/stdwell-comm-rebase-split-pwell-info
Last part of current distributed standard wells.
2020-12-10 08:56:00 +01:00
Tor Harald Sandve
a7664f9ea6 Add check for operability of MSW 2020-12-08 12:38:25 +01:00
Markus Blatt
f7ed1b21fa Determine pressure and depth above for distributed wells. 2020-12-07 16:32:33 +01:00
Markus Blatt
2e5b1c8d54 Use reference for WellInterface::parallel_well_info_ 2020-12-04 13:24:31 +01:00
Markus Blatt
8ee58096ba Make the parallel reduction when applying the Wells.
The B matrix is basically a component-wise multiplication
with a vector followed by a parallel reduction. We do that
reduction to all ranks computing for the well to save the
broadcast when applying C^T.
2020-12-03 11:10:36 +01:00
Markus Blatt
ab114b2e95 Use WellInterface::perf_data_ to calculate PI.
that simplifies the code a bit and will work with
distributed wells. Previously, we assumed that all
non-shut perforations are stored locally. That does
not hold any more.
2020-12-01 14:11:05 +01:00
Bård Skaflestad
bd79d4b9d5 PI/II: Switch to Using Values Only
We don't need to do the calculations in terms of EvalWell when we're
going to reduce this to the .value() before calling the PI/II
calculation routine.  We can also get by with a simpler approach to
computing the II by assuming we always inject pure phases and no
cross flow in injectors.

Suggested by: [at]atgeirr
2020-11-24 21:53:58 +01:00
Bård Skaflestad
92589a697b PI/II Loop: Switch Order of Injection/Production Branches
For readability reasons.

Suggested by: [at]atgeirr
2020-11-24 21:53:58 +01:00
Bård Skaflestad
c8a43b982c PI/II Loop: Check That We Process All Active Connections
Assert that the 'subsetPerfID' is equal to number_of_perforations_
at the end of the loop.

Suggested by: [at]atgeirr
2020-11-24 21:53:58 +01:00
Bård Skaflestad
a46a732f9e PI: Treat Production Differently From Injection
This commit makes the PI/II calculation more closely mirror the
approach taken when computing connection flow rates.  In particular,
we switch to using total mobility, mixing and volume ratios for
injecting connections while producing connections continue to use
the phase mobilities and formation volume factors derived from
conditions in the connecting cells.  We also include dissolved
gas/oil ratios and vaporised oil/gas ratios in order to fully
capture the surface flow conditions.

We split the handling of producing/injecting connections out to
separate helper functions in order to make the overall logic in
updateProductivityIndex() more manageable.ex() more manageable.
2020-11-24 21:53:58 +01:00
Bård Skaflestad
75156cd872 Unconditionally Calculate PI at End of Timestep
This commit ensures that we calculate the well and connection level
per-phase steady-state productivity index (PI) at the end of a
completed time step (triggered from endTimeStep()).

We add a new data member,

    BlackoilWellModel<>::prod_index_calc_

which holds one WellProdIndexCalculator for each of the process'
local wells and a new interface member function

    WellInterface::updateProductivityIndex

which uses a per-well PI calculator to actually compute the PI
values and store those in the WellState.  Implement this member
function for both StandardWell and MultisegmentWell.  Were it not
for 'getMobility' existing only in the derived classes, the two
equal implementations could be merged and moved to the interface.

We also add a new data member to the WellStateFullyImplicitBlackoil
to hold the connection-level PI values.  Finally, remove the
conditional PI calculation from StandardWell's well equation
assembly routine.
2020-11-24 21:53:58 +01:00
Cintia Goncalves Machado
f0ba56652e restructure if 2020-11-24 09:05:18 +01:00
Cintia Goncalves Machado
82c8201f00 fix well Control Single-Phase 2020-11-23 18:40:37 +01:00
Atgeirr Flø Rasmussen
e15db6a892
Merge pull request #2934 from blattms/stdwell-assign-totalrate-once
StandardWell only assing primary_variables_[WQTotal] once.
2020-11-20 07:54:43 +01:00
Markus Blatt
fb5f2eb9d0 StandardWell only assing primary_variables_[WQTotal] once.
There seems to be no need to assign the same value consecutively
as often as there are phases.
2020-11-19 19:50:01 +01:00
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
63c97d54d0 Rebase issue. 2020-11-17 14:50:57 +01:00
Ove Sævareid
98b2ed5bd4 Cleaning up various issues. 2020-11-17 12:39:21 +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
Tor Harald Sandve
73b384f8cd
Merge pull request #2902 from totto82/fixWlift
Fixes to the wlift implementation
2020-11-06 15:58:24 +01:00
Paul Egberts
7ef854f32f
Two fixes
1) Corrected phaseIsActive with PhaseIdx argument instead of CompIdx argument in "subtraction of dissolved gas from oil phase and vapporized oil from gas phase".
2) Fix for well accumulation calculation in case oil is absent.
2020-11-05 17:09:25 +01:00
Tor Harald Sandve
bd370c6470 fixes to the wlift implementation 2020-11-05 13:05:01 +01:00
Tor Harald Sandve
990ce70287
Merge pull request #2849 from goncalvesmachadoc/aquifer
Prepare Well Implemantion For Water and Water-Gas System
2020-10-22 14:08:12 +02: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
Cintia Goncalves Machado
a697e7faf6 fix return position 2020-10-14 14:55:38 +02:00
Cintia Goncalves Machado
920f071f5f fix fractions 2020-10-12 16:46:39 +02:00
Cintia Goncalves Machado
23e7886297 prepareWellImplForLackOfOil 2020-10-10 16:05:12 +02:00
Håkon Hægland
52f6f819ee Simplified using fmt::format()
Simplified debug output formatting by using fmt::format(). Also switched
off glift debug output by default.
2020-10-01 18:40:05 +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
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
fc45b1bd47 Add inner iterations for standard wells also 2020-08-11 09:10:19 +02:00
Markus Blatt
faaee51d09
Merge pull request #2682 from Tongdongq/openclSolver
Added openclSolver
2020-07-10 13:38:32 +02:00
Tor Harald Sandve
88ee892fdf pass the saltConcentration to the waterPVT 2020-07-02 13:44:01 +02:00
Tor Harald Sandve
6a7e816368 Add brine to output 2020-06-30 14:15:54 +02:00
T.D. (Tongdong) Qiu
8913e1d057 Make sure OpenCL can be used without CUDA 2020-06-25 18:44:49 +02:00
Atgeirr Flø Rasmussen
c59f4f7118 Make ghost-last feature available in PreconditionerFactory. 2020-06-25 10:56:11 +02:00
Tor Harald Sandve
39e23c4d41 store polymer rates for output 2020-06-23 12:01:34 +02:00
Tor Harald Sandve
8a5c9e82df add run time parameters for msw convergence tuning. Default values are set to minimize convergence failures for model2 based tests. These parameters are also tested on bigger models with good results 2020-05-22 20:52:14 +02:00
Tor Harald Sandve
cf702a5384 use relaxed tolerance for MSW when solution stagnates 2020-05-22 20:52:14 +02:00
Tor Harald Sandve
904353367d compute initial volume fractions on the well copies also 2020-05-08 19:29:20 +02:00
Atgeirr Flø Rasmussen
e7e4cf6f20 Silence warnings and fix whitespace. 2020-04-08 10:41:20 +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
Tor Harald Sandve
92ee56c3b3 scale guiderate by current well rate 2020-04-02 13:54:47 +02:00
Atgeirr Flø Rasmussen
27f62399f5 Handle guide-rate based well constraints from groups. 2020-04-02 10:41:57 +02:00
T.D. (Tongdong) Qiu
ab2d9a8c76 Changed int idx to indicate which matrix is added to WellContributions to an enum 2020-03-20 10:04:58 +01:00
T.D. (Tongdong) Qiu
8223cd1db8 Simplified filling of WellContributions object. Added comments 2020-03-19 11:15:49 +01:00
T.D. (Tongdong) Qiu
fdcf46792a BdaBridge and WellContributions are only included and compiled when CUDA is found 2020-03-18 19:03:14 +01:00
T.D. (Tongdong) Qiu
581cbc6a3e cusparseSolver can now apply wellcontributions separately, so --matrix-add-wellcontributions=true is not required anymore 2020-03-13 14:21:59 +01:00
Joakim Hove
9268bcb2ac InjectorType enum is moved out from Well class 2020-03-03 09:08:02 +01:00
Arne Morten Kvarving
bea2459c65 replace boost::optional with std::optional 2020-02-19 11:20:16 +01:00
Tor Harald Sandve
2d2ec82640 fix MPI 2020-02-11 09:33:58 +01:00
Tor Harald Sandve
e39e327451 fix 2p 2020-02-11 09:33:58 +01:00
Tor Harald Sandve
469ffa2cbe allow for multiple group injection phases 2020-02-11 09:30:19 +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
Tor Harald Sandve
7a0ff52bbc set bhp control explicilty for well potential calculations 2019-12-20 13:18:10 +01:00
Arne Morten Kvarving
c14a991b25
Merge pull request #2235 from totto82/wellEffFix
Fix bug in the well efficiency factor
2019-12-20 08:31:16 +01:00
Tor Harald Sandve
29c2a3da3f only count group under group control when accumulating the group potentials 2019-12-18 11:40:06 +01:00
Tor Harald Sandve
6aafdba80d fix well efficency factor 2019-12-18 10:29:04 +01:00
Tor Harald Sandve
4d8d9a7a05 Fix vrep 2019-12-06 09:04:50 +01:00
Tor Harald Sandve
876f5587e5 Add GCONSALE and fix conversion from UDA 2019-12-05 13:08:17 +01:00
Tor Harald Sandve
615e4422b9 BUGFIX REIN 2019-12-05 13:08:17 +01:00
Tor Harald Sandve
c930ac9858 fix spelling 2019-12-04 11:39:26 +01:00
Tor Harald Sandve
9e64896054 fix issue when GRUP is used in WCONPROD and WCONINJE and NONE group control
Use a bhp control when a well is controlled by a unvalied group control
2019-12-04 11:37:00 +01:00
Tor Harald Sandve
cab2f4b41f use common WellGroupEvent map 2019-11-27 13:12:53 +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
Tor Harald Sandve
1ab99d07c7 Support VREP with combined gas and water injectors 2019-11-07 11:31:47 +01:00