Commit Graph
14166 Commits
Author SHA1 Message Date
Tor Harald Sandve 690b33aaad Merge pull request #3706 from hakonhagland/glift_it
Extend VFP calculations to two-phase flow.
2022-03-08 12:59:22 +01:00
Håkon Hægland 3cf181b2ee Throw exception instead of using assert
Throw an exception if two-phase gas lift optimization is used for
other phases than oil and water.
2022-03-07 15:58:11 +01:00
Håkon Hægland 438a712e54 Gas lift optimization for two-phase oil-water.
Add gas lift optimization support for two-phase oil-water flow.
2022-03-07 15:19:43 +01:00
Paul Egberts 390a5a4b82 clean up 2022-03-06 21:02:22 +01:00
Paul Egberts d89672e4a3 some clean up 2022-03-06 20:51:57 +01:00
Markus Blatt 0203939bc6 Merge pull request #3828 from bska/report-unique-failed-dewpoint-cells
Report Unique IJK Tuples for Failed Bubble/Dew Point Calculations
2022-03-03 10:44:47 +01:00
Bård Skaflestad f6e8a9bfac Report Unique IJK Tuples for Failed Bubble/Dew Point Calculations
This commit switches the debug file's records of "failed" bubble and
dew point pressure calculations from a non-unique list of linearised
Cartesian indices to a unique list of (1-based) (I,J,K) tuples.
This format is hopefully easier to read for humans.

Thanks to [at]blattms for suggesting the gatherv() helper function
which greatly simplifies the communication pattern.

Example from selected time steps in a real field case with Cartesian
dimensions 137-by-236-by-58:

  - Original
  Finding the dew point pressure failed for 2 cells [1467066, 1467066]
  Finding the dew point pressure failed for 8 cells [1467063, 1467063, 1467066, 1467066, 1467066, 1467066, 1467066, 1467066]

  - This commit
  Finding the dew point pressure failed for 1 cell [(71,89,46)]
  Finding the dew point pressure failed for 2 cells [(68,89,46), (71,89,46)]
2022-03-02 22:49:28 +01:00
Paul Egberts 797fdc278b water-gas ratio input and output plus simulator for salt precipitation and water evaporation 2022-03-01 20:52:43 +01:00
Atgeirr Flø Rasmussen 131bb6585f Merge pull request #3827 from bska/smry-phase-press-blk
Support Calculating Phase Pressures for Water/Gas at Block Level
2022-03-01 09:44:20 +01:00
Bård Skaflestad 6ac998e4e4 Support Calculating Phase Pressures for Water/Gas at Block Level
This commit adds support for calculating/extracting the block-level
phase pressures for water (BWPR) and gas (BGPR) for summary output
purposes.
2022-02-28 23:42:48 +01:00
Markus Blatt d5b74006c5 Merge pull request #3826 from bska/dont-capture-flux-unless-needed
Don't Capture Local Flux Data Unless Needed
2022-02-26 16:38:24 +01:00
Bård Skaflestad eb55456565 Don't Capture Local Flux Data Unless Needed
This is a potentially expensive operation and so we should not run
it unless such values are actually needed for output purposes (e.g.,
inter-region flow summary vectors).
2022-02-25 11:31:57 +01:00
Bård Skaflestad 18812281b6 Merge pull request #3823 from tskille/add_rxft
adding regression testing of RXFT summary cases
2022-02-24 09:23:54 +01:00
Torbjørn Skille 005241a13b adding regression testing of RXFT summary cases 2022-02-24 08:20:31 +01:00
Markus Blatt e2c3cbd84a Merge pull request #3821 from bska/add-iregflow-parallel-test
Add Parallel Comparison Test for RxFy Summary Vectors
2022-02-23 20:26:07 +01:00
Bård Skaflestad d2d1e1d95b Add Parallel Comparison Test for RxFy Summary Vectors
Sequential regression tests will be added later.
2022-02-23 15:33:44 +01:00
Tor Harald Sandve 8cfbe1d791 Merge pull request #3816 from totto82/control_well_testing
Set well control to thp or bhp in well testing
2022-02-23 10:36:17 +01:00
Bård Skaflestad 5f6750bb34 Merge pull request #3820 from goncalvesmachadoc/btemp
add BTCNFHEA
2022-02-22 00:49:27 +01:00
goncalvesmachadoc ac51cecfd4 block press and temp when no oil is present 2022-02-21 18:12:30 +01:00
goncalvesmachadoc a191722a25 add BTCNFHEA 2022-02-21 17:36:31 +01:00
Markus Blatt eb7ffdb47c Merge pull request #3811 from bska/communicate-iregflows
Communicate Inter-Region Flows to I/O Rank
2022-02-18 20:47:23 +01:00
Bård Skaflestad 840a29f8ef Communicate Inter-Region Flows to I/O Rank
This commit ensures that compute inter-region flow rates on all
ranks and collect those on the I/O rank using CollectDataToIORank.

We add a trivial EclInterRegFlowMap data member to the communication
object.  This data member only knows the pertinent FIP region array
names, but uses existing read/write support to collect contributions
from all ranks into this "global" object.  We then pass this global
object on to the summary evaluation routine.
2022-02-18 14:53:43 +01:00
Markus Blatt d7b5d0f686 Merge pull request #3796 from bska/accumulate-iregflow-values
Accumulate Inter-Region Phase Flow Rate Contributions
2022-02-18 14:28:20 +01:00
Bård Skaflestad ecec83349b Capture Bulk Connection Fluxes to Accumlate Inter-Region Flows
This commit adds a new grid traversal that computes fluxes-presently
surface level component fluxes-for all bulk connections on the
current MPI rank.  We aggregate those fluxes, if applicable, into a
container for inter-region flows, but this support could be extended
to capturing the full 3D vector flow rates for restart output if
needed.
2022-02-18 10:29:56 +01:00
Bård Skaflestad 1e121799c8 Add Multi-Array Aware Accumulator for Inter-Region Flow Rates
This commit introduces a new helper class

    Opm::EclInterRegFlowMapSingleFIP

that wraps a vector of

    Opm::EclInterRegFlowMapSingleFIP

along with the associate array names (e.g., "FIPNUM" and any
additional "FIP*" arrays).  We implement the same operations as the
*SingleFIP type and simply loop over the internal accumulators to
affect the operations.

Add unit tests to exercise the new class, including simulating
multiple MPI ranks that are communicated to a single I/O rank for
summary output purposes.
2022-02-18 10:29:56 +01:00
Bård Skaflestad 27564f0610 Add MPI-Aware Accumulator for Inter-Region Flow Rates
This commit introduces a new helper class

    Opm::EclInterRegFlowMapSingleFIP

that wraps an object of type

    Opm::data::InterRegFlowMap

along with the MPI rank's notion of a FIP region array definition
(e.g., the local FIPNUM array).  The new single-FIP flow map is
responsible for accumulating local contributions to the inter-region
flows defined by that FIP array.  In the case of connections between
MPI ranks, the rank that owns the lowest region ID accumulates the
associate flow rates.

Add unit tests to exercise the new class, including simulating
multiple MPI ranks that are communicated to a single I/O rank for
summary output purposes.
2022-02-18 10:29:56 +01:00
Bård Skaflestad b5ded12847 Sort List of Existing Unit Tests
In preparation of adding new entries.
2022-02-18 10:29:56 +01:00
Markus Blatt 1d44a4beac Merge pull request #3817 from bska/fix-pedantic-warning
Remove Extraneous Semicolon
2022-02-18 10:10:44 +01:00
Bård Skaflestad e1d55d4017 Remove Extraneous Semicolon
This generates warnings when using GCC's "-Wpedantic" option.
2022-02-17 23:13:31 +01:00
Tor Harald Sandve 9cd6db9757 Merge pull request #3814 from totto82/addGRcheck
Add check for violation of guiderates
2022-02-17 12:49:48 +01:00
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
Tor Harald Sandve d8934ea7a9 Set well control to thp or bhp in well testing 2022-02-17 09:01:32 +01:00
Tor Harald Sandve 418880730e cleanup2 2022-02-15 12:43:58 +01:00
Tor Harald Sandve cb99a2fc74 check also the validity of the iterated solution 2022-02-15 12:39:42 +01:00
Tor Harald Sandve 650416c647 cleanup 2022-02-15 12:39:42 +01:00
Tor Harald Sandve e0573e99b1 iterate in computeBhpAtThpLimitProdWithAlq if no solution or potentials are negative 2022-02-15 12:39:42 +01:00
Tor Harald Sandve ec08f80405 Refactor out the solving algorithm of bhp from thp via VFP to make it usable for injectors 2022-02-15 12:39:42 +01:00
Tor Harald Sandve 1001d35418 Move computeBhpAtThpLimitProd MSW code to common and apply it for both MSW and STW
The computeBhpAtThpLimitProd for MSW is faster and sufficiently robust and should also be used by STW
2022-02-15 12:39:42 +01:00
Tor Harald Sandve 161e72f6de Merge pull request #3812 from hakonhagland/msw3
Adds gaslift optimization support for multisegmented wells (MSW)
2022-02-15 11:12:29 +01:00
Håkon Hægland c7aa43a82b Rename some methods and variables.
Renames some methods and variables to reflect that the well is no
longer necessarily a StandardWell. It can be either a MultisegmentWell
or a StandardWell. This should avoid confusion about the nature of
the variable.
2022-02-15 10:21:09 +01:00
Håkon Hægland 54160827de Add gaslift optimization support for MSW.
Implements gas lift optimization support for multisegmented wells (MSW).
2022-02-14 21:38:50 +01:00
Markus Blatt a520733d5b Merge pull request #3774 from plgbrts/expli-salt
allow for explicit initialization of SALT and SALTP
2022-02-11 14:35:57 +01:00
Tor Harald Sandve dc660688b5 Merge pull request #3807 from totto82/fix_nupcol_update
update well potentials in wellState along with alq and update guide rates accordingly
2022-02-09 14:10:30 +01:00
Tor Harald Sandve 0c8d0764d6 update well potensials in well state along with alq and update guide rates accordingly 2022-02-08 15:46:08 +01:00
Bård Skaflestad 57cc18cf1b Merge pull request #3797 from totto82/add_total_gas
Add support for maximum total gas (alq + gas rate) in GLIFTOPT
2022-02-04 10:33:38 +01:00
Bård Skaflestad e6ad6ec496 Merge pull request #3801 from totto82/add_performa
Add more performance summary output
2022-02-03 17:15:05 +01:00
Tor Harald Sandve ad799b3e80 Add more performance summary output
This commit ads: NEWTON, MLINEARS, MSUMLINS, MSUMNEWT, NLINEARS, NLINSMIN, NLINSMAX
2022-02-03 15:03:37 +01:00
Markus Blatt 3b8501469c Merge pull request #3800 from Tongdongq/move-gpu-files
Move gpu files
2022-02-03 12:55:41 +01:00
Tor Harald Sandve bb99d1437b reduce alq when alq + gas production target is violated 2022-02-03 12:11:03 +01:00
Tong Dong Qiu c1cbf7a00f Fix ChowPatelIlu compilation errors,
introduced in recent PR
2022-02-03 10:42:27 +01:00