Tor Harald Sandve
23e9bf599d
Fixes related to rsw/rvw handling in standard well
2023-05-12 09:44:11 +02:00
Arne Morten Kvarving
c18fb6a577
changed: store rates in an array in SingleWellState
...
introduce an enum for indexing into the array. this again
allows us to coalesce 4 parallel reductions into one.
2023-05-09 12:26:18 +02:00
Arne Morten Kvarving
e4c15531a8
Merge pull request #4626 from akva2/simplify_wellconnection_pressures
...
Simplify WellconnectionPressures properties signatures
2023-05-08 10:22:44 +02:00
Arne Morten Kvarving
59c9a139cc
changed: simplify WellConnectionPressure calculation by passing a struct
2023-05-04 14:30:55 +02:00
Arne Morten Kvarving
fafca7b382
changed: introduce a struct StandardWellConnections::Properties
...
this holds the various properties for a connection
2023-05-04 14:30:33 +02:00
Arne Morten Kvarving
f06cc1f626
changed: simplify computePerfRate signatures
...
pass a PerforationRates ref instead of multiple references
to doubles
2023-05-04 13:33:45 +02:00
Arne Morten Kvarving
9bfe835652
changed: introduce a struct PerforationRates
...
this holds various rates for a perforation that used to be
kept as separate variables
2023-05-04 13:33:45 +02:00
Kai Bao
ceba5c468b
Merge pull request #4572 from GitPaean/tightenging_tolerance_for_zero_rate_wells
...
stricter tolerance for wells with zero rate target
2023-04-14 11:19:35 +02:00
Kai Bao
ed4aa75721
checking Producer or Injector when comparing bhp against BHP constraint
...
during well operability check.
2023-04-11 14:34:47 +02:00
Kai Bao
7c06ec38a3
stricter tolerance for wells with zero rate target
...
for StandardWell only at this moment.
2023-03-30 15:49:27 +02:00
Kai Bao
9304542dbe
combining wellIsStopped and wellUnderZeroRateTaget
...
for better readability.
2023-03-29 14:40:50 +02:00
Kai Bao
b6eecf5c55
not updating the THP for zero rate controlled wells
2023-03-29 13:48:34 +02:00
Kai Bao
f4e0a996b9
wells under zero injection target are also treated as stopped well
...
when formulating the well control equations
2023-03-29 13:48:34 +02:00
Kai Bao
2c5a4398c9
make sure zero production rates are obtained for the following wells
...
1. stopped production wells
2. production wells under zero rate control
We guarantee the objective through enforce zero values for the WQTotal
primary variable during the initialization and update process during the
Newton solution.
2023-03-27 13:24:08 +02:00
hnil
aa40d2f0f3
-- prepared for possibliy of not using cached intentensive quantities
2023-03-24 19:57:31 +01:00
Kai Bao
2152ac6465
make sure computeWellRatesWithBhpIterations honor bhp limit
...
for StandardWell
2023-03-02 23:53:56 +01:00
Kai Bao
57bf959efd
update well state when switching to THP control for producers
...
hopefully, it begins at a reasonably good initial point. When the Newton
iteration begins with certian solution region, the nonlinear solution
might fail.
2023-02-07 14:50:07 +01:00
Arne Morten Kvarving
3745a4c02d
clean up Units.hpp includes
...
include it where required instead of relying on other
headers to pull it in
2023-01-16 12:21:29 +01:00
Arne Morten Kvarving
d011bb29ae
StandardWell: move code using WellPolymerProperties to compile unit
2023-01-13 13:02:37 +01:00
Tor Harald Sandve
6c60bad193
fix combination of vapwat and disgas
2023-01-02 12:16:35 +01:00
Arne Morten Kvarving
a82b5aa474
StandardWell: pull fmt in impl file
...
it is not used in the interface.
no real change to the code as such, but it better reflects the use.
2022-12-23 09:39:29 +01:00
Arne Morten Kvarving
2dbfeb6038
StandardWell: use {fmt} to format error messages
2022-12-23 09:39:29 +01:00
Tor Harald Sandve
5854b8a7a1
Support gas dissolution in water (Rsw)
...
- adapt to interface change in waterPvt()
- add gas + water + disgasw simulator
Note
- MSW is not supported
- EQUIL initialization is not supported
2022-12-21 13:13:52 +01:00
Arne Morten Kvarving
f17a90170d
use exception classes from opm-common
2022-12-13 12:56:13 +01:00
Kai Bao
6102249466
Merge pull request #4289 from akva2/fix_thp_regression
...
fix regression in wells
2022-11-28 10:46:35 +01:00
Bård Skaflestad
fe7da56268
Merge pull request #4293 from akva2/stdwell_conn
...
added: StandardWellConnections
2022-11-25 15:31:53 +01:00
Arne Morten Kvarving
13af642fe4
StandardWell: make updatePrimaryVariablesNewton non-const
...
this will obviously modify well state
2022-11-25 13:09:29 +01:00
Arne Morten Kvarving
64112f76b3
StandardWell: make updateWellState non-const
...
this will obviously modify well state
2022-11-25 13:09:29 +01:00
Arne Morten Kvarving
c9856b9b2a
WellInterface: make updatePrimaryVariables non-const
...
this will obviously modify well state
2022-11-25 13:09:29 +01:00
Arne Morten Kvarving
fba6249dd8
WellInterface: make recoverWellSolutionAndUpdateWellState non-const
...
this will obviously modify well state
2022-11-25 13:09:29 +01:00
Arne Morten Kvarving
147f0eb2bd
WellInterface: make initPrimaryVariablesEvaluation non-const
...
this will obviously modify well state
2022-11-25 13:09:29 +01:00
Arne Morten Kvarving
dfd68266e9
rename computeWellConnectionDensitesPressures to computeProperties
...
make computePressureDelta and computeDensities private
2022-11-25 12:56:49 +01:00
Arne Morten Kvarving
86bf452059
move computeWellConnectionDensitesPressures to StandardWellConnections
2022-11-25 12:56:47 +01:00
Arne Morten Kvarving
dcc333dac3
make member variables private in StandardWellConnections
2022-11-25 12:56:23 +01:00
Arne Morten Kvarving
1d058a4edf
rename StandardWellConnections::getRho() to just rho()
2022-11-25 12:56:23 +01:00
Arne Morten Kvarving
9aeb48887c
rename computePropertiesForWellConnectionPressure to computePropertiesForPressure
...
that it applies to connections are now implied by class
2022-11-25 12:56:23 +01:00
Arne Morten Kvarving
d1c1aecac7
move implementation of computePropertiesForWellConnectionPressure to StandardWellConnections
2022-11-25 12:56:20 +01:00
Arne Morten Kvarving
100a7b0582
rename computeConnectionDensities to computeDensities
...
that it applies to connections are now implied by class
2022-11-25 12:55:39 +01:00
Arne Morten Kvarving
5d1b5d9426
rename computeConnectionPressureDelta to computePressureDelta
...
that it applies to connections are now implied by class
2022-11-25 12:55:39 +01:00
Arne Morten Kvarving
0d72bba326
move computeConnectionDensities to StandardWellConnections
...
this necessitates expanding the template parameter list
2022-11-25 12:55:36 +01:00
Arne Morten Kvarving
7cadeb5206
changed: move StandardWellConnections out of inheritance hierarchy
...
instead hold a member in StandardWellEval
2022-11-25 12:54:56 +01:00
Bård Skaflestad
e524acd5b2
Merge pull request #4283 from akva2/stdwellass_simplify
...
StandardWellAssemble: simplify by using primary variables class
2022-11-23 23:29:42 +01:00
Arne Morten Kvarving
4f6665076c
StandardWellAssemble: simplify by using primary variables class
...
- pass primary variables as parameter
- use the evaluation type
2022-11-23 21:19:06 +01:00
Arne Morten Kvarving
2da1322697
fix regression in wells
...
we need to call WellInterface::getTHPConstraint,
not WellBhpThpCalculator::getTHPConstraint
2022-11-23 15:37:04 +01:00
Bård Skaflestad
fa1ea7f997
Merge pull request #4282 from totto82/fixInjTemp2
...
remove derivative in thermal flux for injectors
2022-11-22 17:29:24 +01:00
Arne Morten Kvarving
8e3121113c
drop unnecessary wrapper StandardWell::updateExtraPrimaryVariables
2022-11-22 13:11:17 +01:00
Arne Morten Kvarving
f64628f72d
StandardWellPrimaryVariables: make data members private
...
and add generic read-only accessors
2022-11-22 13:11:17 +01:00
Arne Morten Kvarving
4bbcdf0646
add checkFinite to StandardWellPrimaryVariables
2022-11-22 13:11:17 +01:00
Arne Morten Kvarving
999d4c6be9
add StandardWellPrimaryVariables::updateNewtonPolyMW
...
extracted from StandardWell::updatePrimaryVariablesNewton
2022-11-22 13:11:17 +01:00
Arne Morten Kvarving
23a8aed4e8
move getWQTotal to StandardWellPrimaryVariables
2022-11-22 13:11:17 +01:00