Commit Graph
7914 Commits
Author SHA1 Message Date
Bård Skaflestad 1f14c6ddef Forward Potential Rates to Next Report Step
These are used as part of calculating the BHP/THP when computing new
potential rates in models that feature VFP tables and must therefore
be properly initialised in the next report step's well state object.
2021-04-27 07:58:21 +02:00
Joakim Hove 42a6505cf1 Merge pull request #3179 from joakim-hove/groupstate-dump
Add json dump to GroupState
2021-04-27 07:52:11 +02:00
Bård Skaflestad 6cbe5ae8f4 Merge pull request #3178 from joakim-hove/wellstate-internalize-pu
WellState will internalize PhaseUsage member
2021-04-27 06:33:18 +02:00
Bård Skaflestad 266197fd75 Merge pull request #3186 from akva2/include_headers
fixed: include required headers where needed
2021-04-27 06:31:34 +02:00
Joakim Hove a68589eb9a WellState will internalize PhaseUsage member 2021-04-27 00:11:04 +02:00
Arne Morten Kvarving a4c5429341 fixed: include required headers where needed 2021-04-26 22:39:32 +02:00
Joakim Hove 29673a168d Use std::array<> in PhaseUsage 2021-04-26 19:03:22 +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
Joakim Hove 5a4190bbea Add json dump to GroupState 2021-04-26 11:51:07 +02:00
Joakim Hove 43f42ab7d7 Merge pull request #3162 from totto82/addSwitchEvent
Use the event for swithing between producer and injector
2021-04-23 08:17:47 +02:00
Tor Harald Sandve 93ac6e8283 Merge pull request #3165 from joakim-hove/wellstate-split
Wellstate split
2021-04-22 12:28:33 +02:00
Markus Blatt 824df60e94 Merge pull request #3150 from Tongdongq/always_print_prec_info
Always print CHOW_PATEL info if used
2021-04-21 19:51:22 +02:00
Tor Harald Sandve 3445f2e03a Merge pull request #3168 from joakim-hove/simplify-global-is-grup
Simplify global is grup
2021-04-21 14:49:13 +02:00
Joakim Hove 7fecd9f433 Create new class GroupState to maintain runtime state of groups 2021-04-21 13:07:57 +02:00
Joakim Hove c8db0d1090 Assign number of phases in WellState constructor 2021-04-21 13:07:57 +02:00
Joakim Hove 7131647362 Use Well.insert_index() instead of maintaining extra counter 2021-04-21 10:34:57 +02:00
Joakim Hove ed2fb11084 Avoid superfluos code to reset globalIsProductionGrup to false 2021-04-21 09:04:55 +02:00
Atgeirr Flø Rasmussen fc8d17c04e Merge pull request #3164 from totto82/fixNOgrp
honour group available for higher controll
2021-04-20 11:13:27 +02:00
Tor Harald Sandve 352e40d109 honour group available for higher controll 2021-04-19 14:34:38 +02:00
Arne Morten Kvarving b9c19958fb fixed: mark possibly unused variables as such to quell warnings
also take chance to break an extremely long line
2021-04-19 09:49:20 +02:00
Markus Blatt 8fe9314104 Merge pull request #3148 from totto82/gliftmpi2
make gaslift parallel
2021-04-19 08:30:14 +02:00
Tor Harald Sandve 090b75425f Use switch event 2021-04-16 13:38:56 +02:00
Tor Harald Sandve e69b097ac5 fix for distributed wells 2021-04-15 14:00:28 +02:00
Markus Blatt 13f62a718b Merge pull request #2998 from g-marchiori/fpgasolver-integration
Added fpgaSolver, requires Xilinx Alveo U280 FPGA board
2021-04-15 11:21:39 +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
Bård Skaflestad 481c72a0fc Merge pull request #3156 from joakim-hove/well-init-restart-bug
Well init restart bug
2021-04-14 09:10:30 +02:00
Joakim Hove 289e0ea938 Handle closed connections when loading connection data from restart 2021-04-14 07:59:55 +02:00
Joakim Hove 7d825ba9d0 Rename function wellToState -> loadRestartData 2021-04-13 21:02:36 +02:00
Alf Birger Rustad a7f7c1af72 Removed four supported keywords 2021-04-13 09:53:15 +02:00
Peter Verveer 1640c4afcf Implement a new keyword validator 2021-04-12 16:47:02 +02:00
Joakim Hove e1fe527719 Change output to indicate start of time step 2021-04-10 13:37:12 +02:00
Tong Dong Qiu 5466b0f5f2 Always print CHOW_PATEL info if used 2021-04-09 16:19:45 +02:00
Joakim Hove 1d5a245b95 Use value object for endpoints 2021-04-07 10:40:48 +02:00
Atgeirr Flø Rasmussen c6431c2f04 Merge pull request #3042 from totto82/changeDefaultMinTimeStepShutting
change default MinTimeStepBeforeShuttingProblematicWellsInDays to 0.01
2021-04-07 08:04:05 +02:00
Håkon Hægland 61e67b143d Adds a simple test case for gas lift.
Adds a simple test case for gas lift optimization. Currently this is
very simplistic and only covers a fraction of the gas lift optimization
code. The plan is to use this as a building block to add more tests
in the future.
2021-04-01 16:41:46 +02:00
Håkon Hægland 24c419913a Update to use new API for accessing well state.
Use access function to get a handle to the well state object according
to PR #3140.
2021-03-30 17:10:09 +02:00
Håkon Hægland ff3c7f2afb Try to silence a warning about an unused variable.
Added some more debug code, and initialized some boolean variables.

The jenkins build gives a warning about that '"alq_is_limited" may be
used uninitialized', though the warning is generated in another file
(GasLiftWellState.hpp, line #44) it could be (?) caused by the fact that
"alq_is_limited" might not be initialized before calling the constructor
in GasLiftSingleWell_impl.hpp line #963..
2021-03-30 15:42:33 +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 231f5374d7 Fixed some typos introduced in previous commit.
Some conflicts in the previous rebase was unfortunately not resolved
correctly. This commit corrects those errors.
2021-03-30 15:42:33 +02:00
Håkon Hægland 60c5fab82d Fix unused variable warnings. 2021-03-30 15:41:46 +02:00
Håkon Hægland cd85943352 Fix some warnings. 2021-03-30 15:41:46 +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
Joakim Hove 98f6a9a7ac Update collection of wells after ACTIONX 2021-03-29 16:20:10 +02:00
Joakim Hove 5fe43c09cb Implement updateEclWell() as an internal function in wellPI code 2021-03-29 16:20:10 +02:00
Joakim Hove 90a9ed49a2 Add function WellState::updateStatus() 2021-03-29 16:20:10 +02:00
Joakim Hove 43925ae4f2 Explicily assign CMODE_UNDEFINED when controls vector is resized 2021-03-29 16:20:10 +02:00
Joakim Hove 405b9d2244 Add accessor functions to maintain WellState objects in well model 2021-03-29 15:30:32 +02:00
Joakim Hove 3d226abd24 Remove references to RestartConfig 2021-03-26 08:03:07 +01:00
Bård Skaflestad 7503cfd76a Address PR Review Comments 2021-03-24 23:13:50 +01:00