Arne Morten Kvarving
a67e8c44b4
registerOpenWellsForWbpCalculation: move to BlackoilWellModelGeneric
2024-12-19 12:58:50 +01:00
Arne Morten Kvarving
3d10b549e7
setPrimaryVarsDomain: move to BlackoilWellModelGeneric
2024-12-19 12:58:50 +01:00
Arne Morten Kvarving
a36d40957b
getPrimaryVarsDomain: move to BlackoilWellModelGeneric
2024-12-19 12:58:50 +01:00
Arne Morten Kvarving
5217e63309
logPrimaryVars: move to BlackoilWellModelGeneric
2024-12-19 12:58:50 +01:00
Arne Morten Kvarving
82a9698d27
added: support a scaling factor for well efficiency
2024-12-17 08:41:25 +01:00
Tor Harald Sandve
1180ad2652
Allow for the third group switch
2024-12-10 09:41:21 +01:00
Tor Harald Sandve
095c0457bc
Code improvment for the group control switching
...
Pass the controls as enums not strings
Avoid pair as key in map
2024-12-06 13:56:00 +01:00
Tor Harald Sandve
128e80ec7a
Maximum allowed oscillation for groups part 2
...
Set a parameter for maximum allowed oscillation of group controls
The parameter is only used for iter > nupcol
2024-12-04 09:17:46 +01:00
Tor Harald Sandve
73a28a7abb
Maximum allowed oscillation for groups part 1
2024-12-03 09:21:38 +01:00
Tor Harald Sandve
42e17219b6
Merge pull request #5724 from totto82/changeNUPCOL
...
Changes in how the simulator handles NUPCOL
2024-12-02 10:29:09 +01:00
Tor Harald Sandve
d0bcf54b00
Merge pull request #5767 from totto82/network_sub_iter
...
Network sub iter
2024-11-27 15:48:12 +01:00
Tor Harald Sandve
93206349c8
Add sub iterations for balancing the network
2024-11-27 14:21:05 +01:00
Vegard Kippe
74fa148cd7
Support GCONSUMP on multiple levels in the group hierarchy
2024-11-25 22:26:24 +01:00
Tor Harald Sandve
b32e2f6b32
Guard against small rates in fraction calculation
2024-11-25 15:44:28 +01:00
Stein Krogstad
ef14bf6e45
fix typos
2024-11-25 11:15:43 +01:00
Stein Krogstad
cf877332ab
Subtract reduction rate when checking higher group constraints
2024-11-25 11:15:43 +01:00
Tor Harald Sandve
554acb4019
Also update REIN if REIN changes significantly
2024-11-25 08:39:43 +01:00
Tor Harald Sandve
120416f358
dont shut well with GRUP control that struggles to converge
2024-11-22 11:05:08 +01:00
Tor Harald Sandve
71614ea5b0
Add parameter --nupcol_group_rate_tolerance to be able to set the relative tolerance. Default is 0.001
2024-11-20 17:46:31 +01:00
Tor Harald Sandve
7639450ce1
Update VREP even for iter > nupcol if VREP changes significant
2024-11-20 17:46:31 +01:00
Bård Skaflestad
0240922cf4
Handle WELPI from ACTIONX Separately From Constraints
...
This commit switches to using the 'welpi_wells' information from the
SimulatorUpdate structure as a basis to decide the wells for which
it is safe/sufficient to update only the CTFs in response to an
ACTIONX block running WELPI. To this end, we split the actions of
the existing member function updateEclWells() into two parts,
1. updateEclWellsConstraints()
2. updateEclWellsCTFFromAction()
in which the first handles well status and well control updates
while the second deals with CTF updates in response to WELPI. We do
not run the second part if the well structure has changed--e.g., due
to COMPDAT or WELOPEN--since the update loop depends on a static
connection topology.
We add a new member function wellUpdateLoop() which will traverse a
sequence of well names and invoke a loop body on those wells which
exist in wells_ecl_. This collects common operations needed for
both the constraints and the CTF updates.
2024-10-29 14:06:08 +01:00
Vegard Kippe
ca9cad3f07
Properly update multipliers after cleaning, and ensure that the cleaning occurs before the multipliers are applied to the well.
2024-10-07 19:35:10 +02:00
Vegard Kippe
e19063d957
Fix 'off-by-a-step' error in filter cake cleaning + refactor slightly
2024-10-07 19:35:10 +02:00
Bård Skaflestad
5914744f7c
Merge pull request #5546 from totto82/fix_no_wells
...
BUGFIX Fix no wells case
2024-08-21 09:36:16 +02:00
Tor Harald Sandve
e584e05435
Fix shut wells case for output of gas mass injected rates
2024-08-21 08:50:57 +02:00
Arne Morten Kvarving
bc1fd4f01c
BlackoilWellModelGeneric: optionally instantiate for float
...
BlackoilWellModelRestart: optionally instantiate for float
these need to be in the same commit due to circular dependencies
2024-08-20 12:31:07 +02:00
Arne Morten Kvarving
dcbd1c7baf
BlackoilWellModelGeneric: convert input data to appropriate Scalar type
2024-08-20 12:31:07 +02:00
Lisa Julia Nebel
f59fb57d4b
Fix two tests for opening new well connections in an ACTIONX with the keyword COMPDAT
2024-08-16 10:16:04 +02:00
Tor Harald Sandve
25b56c39aa
Pass gas mass rate to summary
2024-08-14 09:01:10 +02:00
Markus Blatt
9dbaad2b3e
Merge pull request #5423 from blattms/bugfix/mswell-exceptions-are-problems
...
Only indicate problems for exceptions whem updating well potentials,
2024-06-20 14:33:17 +02:00
Markus Blatt
58ede5e789
Only indicate problems for exceptions whem updating well potentials,
...
Nearly all exceptions throw when computing well potentoals will not
abort the simulator but result in timestep chops. Hence those should not be
counted as errors (e.g. by calling the OPM_*THROW* macros) and be
reported in the PRT file.
This change will cause at least two more occurences (in
MSWellHelpers) to be treated as problems. For this we added a new
helper function.
2024-06-12 14:25:37 +02:00
Svenn Tveit
adc36d64a5
Output rates to multisegment wells
2024-06-10 14:50:55 +02:00
Bård Skaflestad
151de07fa7
Collect Well Level Control Limits/Targets for Summary Output
...
This commit adds a new stage to the wellData() report function,
assignWellTargets(), which collects the numerical values of the
currently active limits/targets for summary file output purposes.
It is important that we collect these values strictly before we
start mutating the SummaryState object lest user-defined arguments
in keywords like WCONPROD be evaluated seemingly too soon.
Furthermore, it is faster to collect these values on the simulator
side and send them to the I/O rank for file output than to defer the
full calculation to the I/O rank.
2024-06-06 09:13:57 +02:00
Kai Bao
e968da28bb
renaming calcRates to calcResvCoeff
...
and calcInjRates to calcInjResvCoeff.
2024-05-29 22:29:12 +02:00
Atgeirr Flø Rasmussen
6a7e1e08c0
Avoid memory leak from the *unique_ptr<X>.release() antipattern.
2024-05-28 16:49:08 +02:00
Arne Morten Kvarving
16f5290038
ParallelWellInfo: template Scalar type
2024-05-22 09:48:22 +02:00
Arne Morten Kvarving
11b5ba3f18
WellInterfaceGeneric: template Scalar type
2024-05-14 10:26:58 +02:00
Arne Morten Kvarving
772b00bc19
GasLiftGroupInfo: template Scalar type
2024-04-24 15:31:13 +02:00
Arne Morten Kvarving
f0e7f8842b
BlackoilWellModelGeneric: template Scalar type
2024-04-23 11:33:33 +02:00
Arne Morten Kvarving
3d381bac91
BlackoilWellModelGuideRates: template Scalar type
2024-04-22 15:39:51 +02:00
Arne Morten Kvarving
77f9692277
BlackoilWellModelConstraints: template Scalar type
2024-04-22 15:39:51 +02:00
Arne Morten Kvarving
ddd61f4176
BlackoilWellModelRestart: template Scalar type
2024-04-22 15:39:51 +02:00
Arne Morten Kvarving
aa03d06c4d
WellGroupHelpers: template Scalar type
2024-04-19 11:28:40 +02:00
Arne Morten Kvarving
7354bc6371
GroupEconomicLimitsChecker: template Scalar type
2024-04-17 11:21:34 +02:00
Arne Morten Kvarving
be57843296
WellState: template Scalar type
2024-04-17 11:12:40 +02:00
Arne Morten Kvarving
ab0e696709
SingleWellState: template Scalar type
2024-04-17 11:12:40 +02:00
Tor Harald Sandve
2210b523e4
Close worst-offending well based on ratio between violated and preferred phase
2024-04-03 09:16:39 +02:00
Tor Harald Sandve
920ad68782
Implement WELL as group limit action
...
And remove G as unsupported option in WTEST
2024-04-03 08:51:09 +02:00
Bård Skaflestad
4a87dcf5f3
Use In-place Construction of PerforationData Objects
...
This is (slightly) faster than construct + copy.
2024-03-19 09:16:23 +01:00
Arne Morten Kvarving
c5eb0816e6
fixed: we need to call loadRestartData on all processes
...
we need to read in group data even if there are no
local wells
2024-03-12 11:08:07 +01:00