Commit Graph

400 Commits

Author SHA1 Message Date
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