Commit Graph

62 Commits

Author SHA1 Message Date
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
Joakim Hove
6b92443cb4 Downstream filesystem reorganisation in opm-common 2022-01-02 14:33:34 +01:00
Atgeirr Flø Rasmussen
819d88a1a7 Account for efficiency when adding lift gas to network flows. 2021-12-08 15:54:12 +01:00
Markus Blatt
a2246d331b Spelling fixes
Gbp-Pq: Name 0005-Spelling-fixes.patch
2021-11-15 12:06:05 +01:00
Arne Morten Kvarving
09f61e0e6f WellGroupHelpers: use an array to allow for one sum call 2021-11-10 08:50:39 +01:00
Tor Harald Sandve
a57374fae9 Adjust reduction rate when well control is considered for GRUP
The reduction rate is computed differently for cases without wells under GRUP
For a well to check whether to switch to GRUP it needed to use the reduction rate
that would have been computed if this particular well was under GRUP control
and thus recompute the reduction rate without entering the no-grup path
2021-11-03 11:42:18 +01:00
Joakim Hove
3aaaa23ed1 Implement connection rate summation in SingleWellState 2021-09-28 23:45:40 +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
adda160098 clean-up 2021-09-07 09:47:41 +02:00
Tor Harald Sandve
9d2f26f7e8 Add support for gpmaint 2021-09-07 08:52:52 +02:00
Tor Harald Sandve
c4c0173d2b
Merge pull request #3486 from totto82/handleTrivialGR
always return fraction 1.0 if only one well is under group control
2021-08-26 10:09:55 +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
Joakim Hove
5a721b8cd2 Remove WellMap from WellState 2021-08-24 13:25:02 +02:00
Joakim Hove
8b652c821b Use SingleWellState for reservoir rates 2021-08-24 12:46:24 +02:00
Joakim Hove
755de65eb4 Use SingleWellState to manage well surface rates 2021-08-24 12:46:24 +02:00
Joakim Hove
8937c9cba9 Refactor sumWellRates to accept bool argument 2021-08-24 12:46:24 +02:00
Joakim Hove
2f504536f4 Add well potentials to SingleWellState 2021-08-23 12:05:26 +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
Joakim Hove
581f571c9d Use SingleWellState for production and injection control 2021-08-15 09:07:39 +02:00
Kai Bao
12fa7a4ac8 putting all the guide rate update function in one single function
to make sure we only do once checking of the expiration of the guide
rates.
2021-06-29 11:41:26 +02:00
Bård Skaflestad
c101ed10f4
Merge pull request #3389 from totto82/scaleGuideRates
scale guiderates from si
2021-06-23 16:53:12 +02:00
Tor Harald Sandve
c3cf59327d scale guiderates from si 2021-06-17 23:56:02 +02:00
Tor Harald Sandve
b2341a84d6 scale well rates after group switching 2021-06-15 09:29:24 +02:00
Joakim Hove
32a6f32660 Use WellContainer to manage perf phase rate 2021-06-05 07:50:56 +02:00
Tor Harald Sandve
06595c6dfc fix reduction rate for injection groups 2021-05-27 13:16:28 +02:00
Joakim Hove
23180e06d2 Rename WellStateFullyImplicitBlackoil -> WellState 2021-05-21 15:07:21 +02:00
Joakim Hove
506a349085
Use wellcontainer2 (#3255)
Use WellContainer<> to manage members in WellState
2021-05-20 16:16:12 +02:00
Bård Skaflestad
f8e2aa74de
Merge pull request #3207 from akva2/targetcalc_comp_unit
TargetCalculator: move to separate compile unit
2021-05-05 18:53:07 +02:00
Arne Morten Kvarving
d4b67e9af0 TargetCalculator: move to separate compile unit
use explicit instantation to avoid some templates being
instanced a lot of places in a lot of objects.
2021-05-04 08:42:02 +02:00
Arne Morten Kvarving
a61c453a2a WellGroupHelpers: make templates private
use explicit template instantation. to avoid rebuilding
this code over and over (minor), and to avoid includes in headers.
2021-05-04 08:21:32 +02:00
Bård Skaflestad
7be6e5bbf1
Merge pull request #3196 from akva2/use_forwarding
Use forwarding where possible in some headers
2021-04-30 16:00:41 +02:00
Arne Morten Kvarving
e0a6e56588 WellGroupHelpers: use forwarding 2021-04-30 13:29:00 +02:00
Arne Morten Kvarving
5dd5f5a8f4 FractionCalculator: remove unused summary_state member 2021-04-30 11:02:50 +02:00
Arne Morten Kvarving
8ff32b594a TargetCalculator: remove unused wellstate member 2021-04-30 11:02:50 +02:00
Joakim Hove
e1d117c59f Extract group state and create WGState to manage well & group state 2021-04-27 10:55:38 +02:00
Tor Harald Sandve
61de5689bd cleanup: add and remove comments 2021-03-18 14:56:45 +01:00
Tor Harald Sandve
58fa3eaf31 replace asserts with OPM_DEFLOG_THROW 2021-03-18 11:58:05 +01:00
Tor Harald Sandve
6bac5da27c adapt to changes in the guiderate interface 2021-03-16 15:56:31 +01:00
Tor Harald Sandve
f4ac7f555b Add support for explicit guiderate for injection groups
With this commit the guiderate logic used for the production groups is also used for injectors
This allows for setting guiderates explicit at different group levels
Only RATE, NETV and VOID guiderate type is suppored.
2021-03-16 15:56:31 +01:00
Markus Blatt
d1f65451f1 Honor top most group efficiency factor in checkGroupConstraints{Inj,Prod} 2021-03-02 11:32:27 +01:00
Markus Blatt
0d2b9629b0 Document efficiencyFactor in checkGroupConstraints{Inj,Prod}
Reading recursion is quite hard and a comment might help others.
2021-03-02 11:31:04 +01:00
Markus Blatt
39546864ab Honor GEFAC of topmost group when summing solvent rates. 2021-03-01 11:16:29 +01:00
Markus Blatt
1d9f13e310 Honor GEFAC for the top most group when calculating well phase rates.
Previously GEFAC was not applied here.
2021-03-01 11:15:57 +01:00
Joakim Hove
b32f3f7546 Manage GConSale and GConSump with ScheduleState object 2021-01-12 18:29:59 +01:00
Joakim Hove
237eb2b7ee Fetch events from ScheduleState 2021-01-11 17:42:30 +01:00
Atgeirr Flø Rasmussen
6e87ec6266
Merge pull request #2955 from blattms/stdwell-comm-rebase-split-pwell-info
Last part of current distributed standard wells.
2020-12-10 08:56:00 +01:00
Markus Blatt
b97385c963 Fix and move changes to commented code to code to WellGroupHlper.hpp 2020-12-09 12:29:56 +01:00
Atgeirr Flø Rasmussen
f6353535c9
Merge pull request #2973 from blattms/include-config.h
[bugfix] Include config.h in WellGroupHelpers.cpp
2020-12-09 07:36:33 +01:00
Markus Blatt
4f93b2b7c6 Include config.h in WellGroupHelpers.cpp
as should be done in all cpp files.
2020-12-08 21:21:02 +01:00
Markus Blatt
fd4db9b933 Only sum rates for owned wells in WellGroupHelpers.
Well rates of distributed wells might be stored on multiple processes
but should be summed only once. Hence only the owner does the
summation with this commit.
2020-12-07 15:40:51 +01:00