Tor Harald Sandve
b931c5ef97
Check if guiderate is violated
...
If guiderate is violated change to group controll.
Note that a factor 1.01 is added to minimize oscilations.
Fix missing multiplication with group efficiency when accumulating guiderates
2022-02-17 10:41:43 +01:00
Tor Harald Sandve
d8934ea7a9
Set well control to thp or bhp in well testing
2022-02-17 09:01:32 +01:00
Tor Harald Sandve
0c8d0764d6
update well potensials in well state along with alq and update guide rates accordingly
2022-02-08 15:46:08 +01:00
Tor Harald Sandve
ad799b3e80
Add more performance summary output
...
This commit ads: NEWTON, MLINEARS, MSUMLINS, MSUMNEWT, NLINEARS, NLINSMIN, NLINSMAX
2022-02-03 15:03:37 +01:00
Tor Harald Sandve
bb99d1437b
reduce alq when alq + gas production target is violated
2022-02-03 12:11:03 +01:00
Tor Harald Sandve
0b923e505a
Add support for maximum total gas (alq + gas rate) in GLIFTOPT
...
Dont increase gaslift if the groups alq + gas production rate is above the given target
2022-02-02 10:54:32 +01:00
Tor Harald Sandve
009134d037
Limit well rates to honor group rates
...
If a well is under a group that is limited by a target, it should use as little gaslift as possible.
The reduction algorithm will reduce the gaslift of the well as long as the groups potential is above the groups target.
2022-02-02 10:30:48 +01:00
Tor Harald Sandve
6fee9173c0
Remove assert in ratio check for completions
...
Handle special cases with injection or trivial completion rates and all completions have ratio below the limit while the well has
above
2022-01-21 10:51:40 +01:00
Tor Harald Sandve
d1c2032e73
Update guiderates after with new rates from newly opened wells
2022-01-21 09:15:00 +01:00
Tor Harald Sandve
c3571c50a3
support none trivial item 3 in LIFTOPT. i.e. not optimize gaslift every timestep
2022-01-19 10:14:47 +01:00
Tor Harald Sandve
66425eb7c2
WIP fix when both well and group control restrict gasslift
2021-12-08 09:36:26 +00:00
Tor Harald Sandve
4184b4cbaf
Fix DRSDTDYN
...
Add multiplication of missing reference oil density
2021-12-08 09:05:59 +00:00
Tor Harald Sandve
4f75d1ab8d
Add gasoil + energy simulator
...
Useful when combining CO2STORE + THERMAL
This PR also fixes an issue with missing phases in computation of output temperature
2021-12-07 09:18:38 +01:00
Tor Harald Sandve
e230174de6
Fix assert in relaxation factor in std well
...
If original sum ~ 1 and relaxed_update ~ 0 the factor could -> inf
and trigger the assert.
The 1 + epsilon factor will make sure this does not happen
2021-12-03 14:00:40 +00:00
Tor Harald Sandve
4d19ba7409
Only check operable wells for wecon
2021-12-03 11:37:51 +00:00
Tor Harald Sandve
fac3ca3507
do not iterate when computing well potentials
2021-12-02 13:48:22 +00:00
Tor Harald Sandve
2c17b1942c
Move getPerfCellPressure to wellInterface
...
The cell pressure is independent of well model and belongs to the interface
This should move the MSW model one step closer to supporting GasWater cases
2021-11-30 10:48:02 +00:00
Tor Harald Sandve
c4b0a0d9e2
Fix in WTEST
...
If a well is shut due to physical or economical reason the wellstate status is shut
so we can not check the wellstate we instead check the well from the schedule to
make sure we don't test wells that are shut by the user.
2021-11-26 10:17:45 +00:00
Tor Harald Sandve
6277d12d16
fix return type for phaseIdx and compIdx
2021-11-25 14:56:27 +00:00
Tor Harald Sandve
2352d94c0e
fix co2store + aqunum
2021-11-24 11:13:50 +00:00
Tor Harald Sandve
50ab26c330
cleanup
2021-11-23 14:01:07 +00:00
Tor Harald Sandve
43fd50e355
only mark negative potentials as not operable
2021-11-22 11:27:45 +00:00
Tor Harald Sandve
b5cdb1048a
Mark wells with negative and trivial potentials as not operable
...
The simulator will try to compute potentials at every iterations to
try to reopen the well.
2021-11-22 08:44:17 +00:00
Tor Harald Sandve
cd9e742ad5
remove assert and handle opposite rates in wecon
2021-11-10 13:14:22 +01:00
Tor Harald Sandve
a765ab213b
fix WRAT GRAT reduction
2021-11-09 13:40:55 +01:00
Tor Harald Sandve
7728df33bb
Fix LRAT reduction
2021-11-09 10:45:10 +01:00
Tor Harald Sandve
d2fd5505ca
Check group production LRAT and WRAT targets
2021-11-09 08:24:57 +01:00
Tor Harald Sandve
23225d24e5
Fix bug in runOptimize1_
2021-11-09 08:21:42 +01:00
Tor Harald Sandve
b9f16018ac
remove unused inj_potentials
2021-10-28 14:17:33 +02:00
Tor Harald Sandve
93c7ba6b92
communicate inj_surface_rates
2021-10-28 08:55:50 +02:00
Tor Harald Sandve
5dcc584848
Add micp test case
2021-10-19 14:13:28 +02:00
Tor Harald Sandve
1cfe3e0aad
remove cartesian to compressed vector
2021-10-19 11:03:46 +02:00
Tor Harald Sandve
160c80b574
check operability history wells
2021-10-18 09:21:04 +02:00
Tor Harald Sandve
1c9c5c484b
check operability injectors
2021-10-15 12:32:02 +02:00
Tor Harald Sandve
f6f5badfde
Add brine and thermal simulator
2021-10-15 11:50:17 +02:00
Tor Harald Sandve
83ef3730b2
make multiple well control switching output more readable
2021-10-14 09:40:34 +02:00
Tor Harald Sandve
d07aed204f
Catch numerial issues due to problems with inner iterations wells
2021-10-08 15:26:53 +02:00
Tor Harald Sandve
fdf6ce9c54
change assert with throw for isfinite primary variable
2021-10-08 15:26:52 +02:00
Tor Harald Sandve
afdfe55bbc
restrict maximum number of times a well can switch to the same control
2021-10-04 10:12:39 +02:00
Tor Harald Sandve
623ff2c3ce
communicate before usage not after
2021-09-30 11:54:56 +02:00
Tor Harald Sandve
dc8c9021b5
open completions after well event
2021-09-30 11:40:34 +02:00
Tor Harald Sandve
cb9254636b
rename and cleanup
2021-09-30 09:01:07 +02:00
Tor Harald Sandve
bc8da79779
stop checking operability in the beginning of an timestep
2021-09-30 08:47:47 +02:00
Tor Harald Sandve
c9e93e6155
stop updating operability during iterations
2021-09-30 08:47:47 +02:00
Tor Harald Sandve
06878a8ca8
fix date for large time steps
2021-09-29 15:43:20 +02:00
Tor Harald Sandve
c790b14753
Make WTEST more robust
...
Only open wells that are solvable, operable and economical
2021-09-28 10:07:12 +02:00
Tor Harald Sandve
9381b0857b
updateWsolvent only after well container is created
2021-09-24 12:09:02 +02:00
Tor Harald Sandve
eb4997a011
update gpmain before not after timestep
2021-09-21 14:03:35 +02:00
Tor Harald Sandve
50cf80910b
support aquct and co2store
2021-09-21 11:08:10 +02:00
Tor Harald Sandve
a650b529d1
commit WGstate after shut well from outside
2021-09-21 11:05:03 +02:00
Tor Harald Sandve
30592c7593
update status after WTEST
2021-09-21 10:32:56 +02:00
Tor Harald Sandve
21942f0cc2
use getMobilityScalar in updateIPR
2021-09-21 09:50:20 +02:00
Tor Harald Sandve
6fa9c05985
add well_test_state to WGState to be able to access last valid wellTestState
2021-09-21 09:30:02 +02:00
Tor Harald Sandve
c6660f0aa2
only update when control is changed
2021-09-21 08:53:25 +02:00
Tor Harald Sandve
9db6b2b946
handle unoperable wells
...
set potentials and rates to zero
2021-09-21 08:53:25 +02:00
Tor Harald Sandve
dc4436961f
update well rates from target
2021-09-21 08:53:25 +02:00
Tor Harald Sandve
10480b4f8f
combine co2store and numerical aquifers
2021-09-17 16:05:26 +02:00
Tor Harald Sandve
dd454063d4
pass updated well rates totarget reduction not the nupcol ones + cleanup
2021-09-15 09:47:31 +02:00
Tor Harald Sandve
81d9a8c178
add option for relaxed convergence for stw
2021-09-14 14:32:14 +02:00
Tor Harald Sandve
49dfe1006f
cleanup
2021-09-13 15:11:38 +02:00
Tor Harald Sandve
43a858ef25
rename computeBhpFromThpPotential to computeBhpFromThpIterations in std wells
2021-09-13 14:07:21 +02:00
Tor Harald Sandve
c8a59946e3
avoid iter in computeBhpFromThp
2021-09-13 14:01:56 +02:00
Tor Harald Sandve
972a832d65
make scalar version of computePerfRate
2021-09-13 09:36:16 +02:00
Tor Harald Sandve
f203c2106e
only compute fip avg pressure when gpmaint
2021-09-10 15:49:02 +02:00
Tor Harald Sandve
a550400fa0
Continue on solver convergence failure
2021-09-10 13:49:20 +02:00
Tor Harald Sandve
305de4016e
oil target may be limited by LRAT as well
2021-09-10 13:19:07 +02:00
Tor Harald Sandve
a1e70711a6
Handle empty region in average calculator
2021-09-09 08:17:45 +02:00
Tor Harald Sandve
f3513a31eb
add option for relaxed well convergence for the last netwon iterations
2021-09-08 09:58:14 +02:00
Tor Harald Sandve
adda160098
clean-up
2021-09-07 09:47:41 +02:00
Tor Harald Sandve
f497fa0fd7
add support for region = 0 i.e. field
2021-09-07 08:53:09 +02:00
Tor Harald Sandve
f9832d8830
split RateConverter
2021-09-07 08:53:09 +02:00
Tor Harald Sandve
9d2f26f7e8
Add support for gpmaint
2021-09-07 08:52:52 +02:00
Tor Harald Sandve
7c8a39fdb6
fix after rebase
2021-08-26 10:32:58 +02:00
Tor Harald Sandve
514c2a67a9
always compute potentials
2021-08-26 10:29:25 +02:00
Tor Harald Sandve
7e3cca1316
iterate to get more accurate potentials for stw wells
2021-08-26 10:29:25 +02:00
Tor Harald Sandve
002256a045
return fraction 1.0 if only one well under group control even in cases where the guide rate is zero
2021-08-26 08:27:06 +02:00
Tor Harald Sandve
0b1a909ee2
guards for one-phase flow
2021-08-24 12:06:03 +02:00
Tor Harald Sandve
31ac5378cf
fix case where wells are shut behind our back
2021-08-19 13:08:33 +02:00
Tor Harald Sandve
bc70fd5540
This basically reverts changes applied in PR 3095.
...
With this gefac is only applied with accumulating rates from the level below
2021-08-19 08:16:25 +02:00
Tor Harald Sandve
0f58343c48
Change default MaxNewtonIterationsWithInnerWellIterations to 8
2021-08-18 08:41:37 +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
cf61417b6d
move update well test state to after potentials are calculated
2021-08-09 13:21:10 +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
a00c42c673
compute potentials for newly opened wells due to testing
2021-06-30 13:13:56 +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
Tor Harald Sandve
4aaf86d5ef
make sure the current well are included in the local fraction sum
2021-06-28 11:47:13 +02:00
Tor Harald Sandve
5368343512
handle GRUP in wellState from target
2021-06-23 14:46:35 +02:00
Tor Harald Sandve
c3cf59327d
scale guiderates from si
2021-06-17 23:56:02 +02:00
Tor Harald Sandve
b5e29684f2
shut/stop unsolvable wells
2021-06-17 11:50:31 +02:00
Tor Harald Sandve
eb4e25c3f6
Change wellStateFromTarget to virtual to make sure the MSW part is run
2021-06-16 15:53:34 +02:00
Tor Harald Sandve
b2341a84d6
scale well rates after group switching
2021-06-15 09:29:24 +02:00
Tor Harald Sandve
96091f4313
change get param from bool to int
2021-06-11 08:09:35 +02:00
Tor Harald Sandve
a55fa81b2f
relax ACTIONX_M1 parallel test
2021-06-10 18:44:22 +02:00
Tor Harald Sandve
28a567550b
removed dissolved gas and vapporized oil from RESV injection rates
2021-06-08 20:17:01 +02:00
Tor Harald Sandve
3ca6e215dc
Change the inner iterations logic
...
This replace the Boolean switch to enable inner iterations with a
int that controls for which maximum number of newton iterations
inner iterations applies.
Default is set to 3
2021-06-04 10:51:15 +02:00
Tor Harald Sandve
8c9a7db8c9
Scale target with resv conversion factor
2021-06-04 09:27:51 +02:00
Tor Harald Sandve
3422e18583
Optional passing of the temperature vector to the restart machinary
...
If enableTemperature and --enable-opm-restart-file=true the temperature is passed to or read from the restart file
2021-06-02 11:53:57 +02:00
Tor Harald Sandve
06595c6dfc
fix reduction rate for injection groups
2021-05-27 13:16:28 +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
Tor Harald Sandve
97d9de4339
Avoid division by small rate in divisor in VFP table fraction WFR/GFR.
...
A threshold of 1e-12 is used to "define" small rate
2021-05-26 10:03:28 +02:00