Commit Graph

6128 Commits

Author SHA1 Message Date
Kai Bao
d50d21d8e0 Wells specified with GRUP will be put under group control
immediately.
2017-04-11 16:53:19 +02:00
Kai Bao
2fcb449196 Always updating the well targets under group control
for each iteration. Even all the wells are under individual controls,
their group targets/constraints should also be updated for correct group
behavoirs.
2017-04-11 16:53:19 +02:00
Kai Bao
7701b68814 handle the situatioin when giving a NaN prod target to injectors
When all production wells are under individual controls, the group can
have zero production guide rates, which can result NaN value targets for
injectors.
2017-04-11 16:53:19 +02:00
Kai Bao
81fb20160c Considering the injection phase when applying VREP group controls
GCONINJE only support single phase injection. When we inject one phase,
the values of distr for other phases should be set to be zero.

It will provide one strategy to figure out which phase we are
injecting. It is important when we inject one phase while the well is
claimed to be another phase in WELSPECS.
2017-04-11 16:53:19 +02:00
Kai Bao
aaaacce49e adding a flag to indicate whether group controls applied
for WellCollection.
2017-04-11 16:53:19 +02:00
Kai Bao
be00224a4b adding a function setGuideRatesWithPotentials() to WellCollection
it only handles the calculation based on wellPotentials though.

Or it should also give each well a value for wells does not specify a
guide rates? which will be some value same for all the wells?
2017-04-11 16:53:19 +02:00
Atgeirr Flø Rasmussen
524233c60a Merge pull request #1154 from andlaus/report-failure
SimulatorReport: make it possible to report failed time steps
2017-04-11 12:29:37 +02:00
Andreas Lauser
b368cb0177 SimulatorReport: make it possible to report failed time steps
the method can still be called as it used to be. in this case no
failures are reported, though.
2017-04-10 23:31:24 +02:00
Atgeirr Flø Rasmussen
3b5e15771b Merge pull request #1153 from babrodtk/hysteresis_output
Added functions in SaturationProps for hysteresis IO
2017-04-07 15:54:26 +02:00
Atgeirr Flø Rasmussen
901dbc248e Merge pull request #1145 from totto82/add_sat_table_id
Add sat table id to well struct
2017-04-07 14:43:33 +02:00
babrodtk
c3dc875005 Added functions in SaturationProps for hysteresis IO 2017-04-07 14:31:22 +02:00
Tor Harald Sandve
a8261b62da Add sat table id to well struct 2017-04-06 13:52:27 +02:00
Atgeirr Flø Rasmussen
e2f8375a1a Merge pull request #1151 from totto82/fix_test_equil
Fix test equil
2017-04-05 09:01:12 +02:00
Tor Harald Sandve
e289c8f35b Enable swatinit equil test 2017-03-22 10:26:03 +01:00
Tor Harald Sandve
77b9311f2c FIX swatinit test in test_equil
The capillarySwatinit.DATA is updated to make it possible to run in Ecl.
Referance solutions is updated accordingly.
2017-03-22 10:20:59 +01:00
Joakim Hove
0b1d5745a6 Merge pull request #1149 from joakim-hove/disable-equil-swatinit
Temporarily disabled EQUIL + SWATINIT test.
2017-03-21 19:50:55 +01:00
Joakim Hove
b55ce6b53e Temporarily disabled EQUIL + SWATINIT test. 2017-03-21 16:49:14 +01:00
Joakim Hove
53eb7e2f1c Merge pull request #1150 from joakim-hove/travis-install-bc
Travis: apt-get install bc
2017-03-21 16:48:28 +01:00
Joakim Hove
1caaa5bd35 Travis: apt-get install bc 2017-03-21 16:21:47 +01:00
Atgeirr Flø Rasmussen
d3d7c64107 Merge pull request #1147 from totto82/fix_initial_rs
Do not extrapolate initial rs and rv values in the depth tables
2017-03-16 13:55:17 +01:00
Tor Harald Sandve
7579f2bdb9 Do not extrapolate initial rs and rv values in the depth tables 2017-03-16 12:57:56 +01:00
Atgeirr Flø Rasmussen
7bf6da1953 Merge pull request #1146 from GitPaean/putting_wells_under_group_control
putting wells under immidatel group control when specified with GRUP
2017-03-10 10:18:39 +01:00
Kai Bao
70b19780b4 putting wells under immidatel group control when specified
with GRUP.
2017-03-07 12:48:30 +01:00
Atgeirr Flø Rasmussen
03e005bb76 Merge pull request #1143 from GitPaean/fixing_thp_initialization
Fixing thp initialization
2017-03-02 15:51:38 +01:00
Atgeirr Flø Rasmussen
aecfa0e448 Merge pull request #1144 from totto82/output_initial_rs
Do not set rs=rsSat and rv=rvSat for the saturated case
2017-02-23 09:13:40 +01:00
Tor Harald Sandve
70b6a6e5ef Do not set rs=rsSat and rv=rvSat for the saturated case 2017-02-22 15:57:53 +01:00
Kai Bao
b97c585519 do not assign non-zero THP value when no THP involved. 2017-02-17 13:45:55 +01:00
Kai Bao
6ca48313ca correcting the confusing indent in WellState init 2017-02-17 13:28:29 +01:00
Atgeirr Flø Rasmussen
6d01c29686 Merge pull request #1142 from GitPaean/output_thp
adding thp to the report for summary output.
2017-02-16 13:16:14 +01:00
Kai Bao
8198c256a9 adding thp to the report for summary output. 2017-02-13 10:15:58 +01:00
Atgeirr Flø Rasmussen
d5a9f27e5e Merge pull request #1141 from akva2/remove_adaptive_time_stepping
remove AdaptiveTimeStepping class
2017-02-10 15:16:56 +01:00
Arne Morten Kvarving
e6cad074c2 Remove adaptive time stepping and simulator timer classes and tests/examples
They have been moved to opm-simulators
2017-02-10 14:53:22 +01:00
Atgeirr Flø Rasmussen
119b5b1a3a Merge pull request #1140 from andlaus/fix_gcc7_warnings
fix a GCC 7 warning
2017-02-10 10:31:13 +01:00
Arne Morten Kvarving
61e8c0b8d3 Merge pull request #1139 from akva2/fipnum_in_adaptive
changed: pass fipnum array into adaptive time stepping loop
2017-02-09 12:06:39 +01:00
Arne Morten Kvarving
1e25b6fcfb changed: pass fipnum array into adaptive time stepping loop
needed as substep summary reports requires FIP data to be available.
add calculation of this data if output is requested and summary
config holds relevant keywords.
2017-02-09 09:33:32 +01:00
Andreas Lauser
8ef2a923ec fix a GCC 7 warning
GCC 7 warns

```
dynamic exception specifications are deprecated in C++11; use ‘noexcept’ instead [-Wdeprecated]
```

here.
2017-02-07 12:55:26 +01:00
Atgeirr Flø Rasmussen
c5a80e97a2 Merge pull request #1138 from andlaus/refactor_well_permeability
do not explicitly pass the permeability to the well model anymore
2017-01-27 13:15:50 +01:00
Andreas Lauser
c5a0ea7524 do not explicitly pass the permeability to the well model anymore
this information is already part of the EclipseState. The reason why
this should IMO be avoided is that this enforces an implementation
(ordering of the permeability matrices) the simulator on the well
model. If this needs to be done for performance reasons, IMO it would
be smarter to pass an array of matrices, instead of passing a raw
array of doubles.  I doubt that this is necessary, though: completing
the full Norne deck takes about 0.25 seconds longer on my machine,
that's substantially less than 0.1% of the total runtime.

in order to avoid code duplication, the permeability extraction
function of the RockFromDeck class is now made a public static
function and used as an implementation detail of the WellsManager.

finally, the permfield_valid_ attribute is removed from the
RockFromDeck class because this data was unused and not accessible via
the class' public API.
2017-01-27 12:51:12 +01:00
Atgeirr Flø Rasmussen
5aa5ac89c5 Merge pull request #1137 from GitPaean/group_ebos_vrep
set the VREP control as current control when applying VREP control
2017-01-27 11:11:42 +01:00
Kai Bao
78bf488a2a set the VREP control as current control when applying VREP control
for the first time

Not sure it is always the better things to do here, while it can help
the consistence of the two current controls in the well_controls and
well_state.
2017-01-25 14:11:37 +01:00
Atgeirr Flø Rasmussen
5e67765229 Merge pull request #1136 from andlaus/update_dune.module
update the dune.module file
2017-01-20 13:58:48 +01:00
Andreas Lauser
24f709f983 update the dune.module file 2017-01-20 13:26:26 +01:00
Atgeirr Flø Rasmussen
674d97c660 Merge pull request #1134 from GitPaean/group_ebos
updating the group control limit for individual control wells
2017-01-18 14:08:33 +01:00
Kai Bao
cb84571540 considering effieciency factor when calculating production rate. 2017-01-16 16:13:44 +01:00
Kai Bao
9fe6d80f99 adding groupTargetConverged() to WellCollection 2017-01-16 15:55:35 +01:00
Kai Bao
3a06a2dd50 adding groupProdTargetConverged() to WellsGroup
When the group is producing its target, we consider it is converged.
When the group is not producing its target, while the group can not
produce more based on its own limits, we also consider it is converged.

When the group is not producing its target, while the group can
potentially produce more, we consider it is not converged.
2017-01-16 14:19:52 +01:00
Kai Bao
8f658a92f2 adding canProdueMore() function to wellsGroup
to indicate whether the group can produce more to match the group target
when they are not producing enough compared with the group target.
2017-01-16 11:25:23 +01:00
Kai Bao
713c833b0a updating the group control limit for individual control wells
to provide a better standard for the wells under individual control to
return to group control. For example, some wells get really big group
control limit and switch to individual control, it is very difficult for
them to return to group control with that kind of unreasonable fixed
group limit.
2017-01-12 15:44:44 +01:00
Atgeirr Flø Rasmussen
7830083e9b Merge pull request #1133 from blattms/parallel-accumulate
Added an accumulate method that allows to switch off non-owner entries.
2017-01-11 15:16:48 +01:00
Markus Blatt
ac6965de2e Added an accumulate method that allows to switch off overlap entries.
It does using a mask vector with entries 0 or 1. If that is not provided
it falls back to std::accumulate.
2017-01-11 12:18:39 +01:00