T.D. (Tongdong) Qiu
8913e1d057
Make sure OpenCL can be used without CUDA
2020-06-25 18:44:49 +02:00
Tor Harald Sandve
43d434d42e
trivial clean up
2020-06-17 08:39:19 +02:00
Tor Harald Sandve
e9d040a284
Fix upwining for friction, acceleration, valve and SIGD for MSW
...
Note 1:
The rate vectors used for the pressure equation now contains derivatives wrt to the upwind segment for fractions.
To make sure derivatives wrt. to different segmens gets mixed we disregard the derivatives for the properties (density, viscosity) evaluated at the upwind segment.
Note 2:
A factor 2 is added to the velocity head term similar as in the friction term
Note 3:
A sign change is added to the acceleration term for massrates > 0. Is this correct. It seems like the reference simulator does this.
2020-06-17 08:39:19 +02:00
Joakim Hove
baba9b6773
Merge pull request #2642 from joakim-hove/icd-variant
...
Use std::variant access to Segment::icd
2020-06-11 11:32:08 +02:00
Joakim Hove
be5f3ff2e1
Use std::variant access to Segment::icd
2020-06-10 20:41:14 +02:00
Kai Bao
23a9f4732b
Merge pull request #2666 from atgeirr/msw-log-output-cleanup
...
Prettifying and reducing log output from MSW.
2020-06-10 19:44:01 +02:00
Atgeirr Flø Rasmussen
dd8e42958a
Prettifying and reducing log output from MSW.
2020-06-10 16:36:17 +02:00
Joakim Hove
5b940836ec
Remove MultisegmentWell::calculateSICDFlowScalingFactors()
2020-06-04 14:13:14 +02:00
Atgeirr Flø Rasmussen
6f1a159adc
Merge pull request #2611 from totto82/improveConvergenceMSW
...
Improve convergence msw
2020-05-30 17:00:30 +02:00
Tor Harald Sandve
b11d805e45
fix output message
2020-05-29 15:40:44 +02:00
Atgeirr Flø Rasmussen
b5bee4d114
Treat zero rate case for VFP tables.
2020-05-29 14:06:51 +02:00
Joakim Hove
195d2b1c21
Rename SpiralICD -> SICD
2020-05-28 11:10:51 +02:00
Bård Skaflestad
4ea5b7e989
Check GCONSALE Limits: Remove Unused Variable
...
Fixes a warning.
2020-05-24 13:16:47 +02:00
Tor Harald Sandve
8a5c9e82df
add run time parameters for msw convergence tuning. Default values are set to minimize convergence failures for model2 based tests. These parameters are also tested on bigger models with good results
2020-05-22 20:52:14 +02:00
Tor Harald Sandve
ec7c6e236d
increase segment volume to stabilize to improve convergence
2020-05-22 20:52:14 +02:00
Tor Harald Sandve
d49c590879
apply the relaxtion factor on the pressure change not the max pressure change limit
2020-05-22 20:52:14 +02:00
Tor Harald Sandve
cf702a5384
use relaxed tolerance for MSW when solution stagnates
2020-05-22 20:52:14 +02:00
Markus Blatt
55b3a65230
Merge pull request #2628 from Tongdongq/multisegmentwells-gpu
...
cusparseSolver can now handle MultisegmentWells
2020-05-22 16:24:58 +02:00
T.D. (Tongdong) Qiu
98a8dac155
Passing std::vectors to pass data for C and B faster. Variables for D are initialized in initializer list.
2020-05-21 11:41:15 +02:00
T.D. (Tongdong) Qiu
04ee2be348
cusparseSolver can now handle MultisegmentWells, they are actually applied on CPU via SuiteSparse/UMFPACK
2020-05-15 16:40:34 +02:00
Atgeirr Flø Rasmussen
5aa2a785af
Correct messages for group control switching.
2020-05-14 17:31:21 +02:00
Bård Skaflestad
e786c713fb
Merge pull request #2600 from totto82/improve_msw_convergence_clean
...
compute initial volume fractions on the well copies
2020-05-11 17:45:37 +02:00
Tor Harald Sandve
904353367d
compute initial volume fractions on the well copies also
2020-05-08 19:29:20 +02:00
Atgeirr Flø Rasmussen
8dd53a38e9
Refactor SimulatorReport system.
...
Now SimulatorReport object contains a vector of SimulatorReportSingle objects,
for both successful and failing steps.
2020-05-07 16:13:39 +02:00
Atgeirr Flø Rasmussen
7dbbc0f2e5
Merge pull request #2588 from totto82/addMinMaxSupportGCONSALE
...
Implement min/max for GCONSALE
2020-05-05 15:46:36 +02:00
Tor Harald Sandve
85e95fb87d
Implement min/max for GCONSALE
...
Only default action RATE is implemented for violation of maximum sales target
2020-05-05 14:24:17 +02:00
Tor Harald Sandve
f33737afc4
Fix solvent reinjection when different reinjection group is given
2020-05-05 10:46:49 +02:00
Joakim Hove
da5042c538
Update connection <-> segment implementation
2020-04-30 14:53:35 +02:00
Bård Skaflestad
9756edce50
Remove Unused 'currentControl' Variable
2020-04-27 21:29:10 +02:00
Atgeirr Flø Rasmussen
06e5e6b6ac
Merge pull request #2565 from totto82/avoidOscNupcol
...
use nupcol to avoid oscillation between group controls
2020-04-27 16:02:32 +02:00
Tor Harald Sandve
33afb332fa
use nupcol to avoid oscilation between group controls
2020-04-27 10:29:00 +02:00
Tor Harald Sandve
a046977946
Fix GCONSALE
...
1) Only check GCONSALE limits at the end of a timestep. NB. The simulator still throws if some of the limits are violated
2) BUGFIX: don't remove gas consumption twice
2020-04-24 16:10:07 +02:00
Atgeirr Flø Rasmussen
c4e020c179
Merge pull request #2556 from totto82/test_atg
...
Fix how the group reduction works
2020-04-24 11:13:22 +02:00
Tor Harald Sandve
e9476e116e
make sure the current_rate is added at the right level
2020-04-23 20:54:59 +02:00
Tor Harald Sandve
3b479af9c4
Fix the fix on how the group reduction works
2020-04-23 09:45:16 +02:00
Atgeirr Flø Rasmussen
0df3a96fa6
Fix how group rate reductions work.
2020-04-23 09:39:03 +02:00
Bård Skaflestad
9625d0b48c
Merge pull request #2531 from GitPaean/msw_keywords
...
adding the summary output for several pressure drop values for MSW
2020-04-17 20:54:49 +02:00
Kai Bao
954e5e769a
addressing comments from OPM/opm-common#1695
2020-04-17 14:34:48 +02:00
Joakim Hove
6260bb7851
Update api for checking availability for group control
2020-04-17 13:03:56 +02:00
Kai Bao
251c09a288
adding the several pressure drop values to WellState for MSW
...
segpress_ and segrates_ are renamed to help the name style.
2020-04-17 00:38:38 +02:00
Atgeirr Flø Rasmussen
e7e4cf6f20
Silence warnings and fix whitespace.
2020-04-08 10:41:20 +02:00
Tor Harald Sandve
97876530e3
include wells under individual control when accumulating guiderates
2020-04-03 10:03:05 +02:00
Tor Harald Sandve
70b7bed057
dont check if group has converged in solveWellEq
2020-04-02 13:57:38 +02:00
Atgeirr Flø Rasmussen
f30ddffdb7
Split WellGroupHelpers to cpp/hpp.
...
Also changed namespace name.
2020-04-02 13:57:38 +02:00
Tor Harald Sandve
21b98b5573
Avoid negative targets and currentWellRates
2020-04-02 13:57:38 +02:00
Atgeirr Flø Rasmussen
d2dac6c19c
Bugfix: rates in assembleControlEqProd() are by canonical phases, not active.
2020-04-02 13:57:38 +02:00
Atgeirr Flø Rasmussen
a8107afc11
Fix handling of FIELD for injector groups.
2020-04-02 13:57:38 +02:00
Tor Harald Sandve
66931b9cb7
Various fixes and refactoring.
...
- Communicate all well rates.
- When changing controls, modify rates to satisfy failed constraint.
- Ensure targets are positive.
- Always solve for potentials for MSW (temporary fix).
2020-04-02 13:57:05 +02:00
Atgeirr Flø Rasmussen
3a5a8c23df
Use generic control equation implementation.
2020-04-02 13:54:58 +02:00
Atgeirr Flø Rasmussen
d703699e62
Avoid recursion above the FIELD group.
2020-04-02 13:54:58 +02:00