Commit Graph

14723 Commits

Author SHA1 Message Date
Svenn Tveit
cf4a905660 Fixed compilation warnings 2023-09-18 14:47:35 +02:00
Bård Skaflestad
ef88eb3737
Merge pull request #3681 from svenn-t/cskin
Implementation of CSKIN
2023-09-18 14:11:38 +02:00
Vegard Kippe
6755ff8328 Fixing segfault due to use of uninitialized grid properties 2023-09-18 11:43:33 +02:00
Svenn Tveit
44f6a915fc Check for negative CF before calclating it 2023-09-15 19:06:01 +02:00
Svenn Tveit
a89bac6fdb Test CSKIN with WPIMULT, WELPI and COMPDAT 2023-09-15 18:51:35 +02:00
Svenn Tveit
0f40d2c42c wpimult must be multiplied and not overwritten.
Mulitple WPIMULT and WELPI entries are cumulative on same connections.
2023-09-15 18:49:55 +02:00
Bård Skaflestad
6e0e302796
Merge pull request #3677 from vkip/numaqcell_depth
Ensure numerical aquifer cells get the correct depth
2023-09-15 13:04:33 +02:00
Markus Blatt
bbb46325f0
Merge pull request #3678 from bska/normalise-region-keywords-for-lookup
Normalise Region Level Summary Keywords for Lookup Purposes
2023-09-15 10:35:37 +02:00
Markus Blatt
644c0115a1
Merge pull request #3655 from bska/multregt-item-5
Implement NOAQUNNC Region Multiplier Behaviour in MULTREGT
2023-09-15 10:23:20 +02:00
Bård Skaflestad
07ddc15068 Calculate Multiplier Values for Non-Neighbouring Connections
This is intended as a possibly temporary measure for processing
explicitly assigned NNCs (keywords NNC/EDITNNC/EDITNNCR) along with
those NNCs arising from numerical aquifers, and for which there is
no associate face direction.

Add a set of unit tests to probe the implementation of all MULTREGT
connection behaviours as exhibited by MULTREGTScanner member
functions getRegionMultiplier() and getRegionMultiplierNNC().
2023-09-14 15:29:58 +02:00
Svenn Tveit
ea4aebda5d Test H2-brine PVTs 2023-09-14 12:31:59 +02:00
Svenn Tveit
a11becab76 H2STORE updates.
- Enables use with THERMAL. Note that enthalpy of H2 dissolution process is not included due to lack of published data on this (as far as I have seen).
- Enables use with DIFFCGAS and DIFFCWAT.
- Enables use with dynamic brine module.
- New H2 table made with Coolprop which includes enthalpy data.
2023-09-14 12:31:59 +02:00
Svenn Tveit
338ee8dd4a H2STORE is a OPM only keyword 2023-09-14 12:31:59 +02:00
Svenn Tveit
30cd8b8141 Test CSKIN input 2023-09-14 09:48:55 +02:00
Svenn Tveit
d410d8c232 Recalculate pressure equivalent radius when Kh=0.
Kh is calculated from grid block info and r0 must be consistent with that.
2023-09-14 08:51:01 +02:00
Svenn Tveit
f933b0e113 Implementation of CSKIN keyword.
To work with WPIMULT, the PI scaling factor had to be stored and applied to calculated CF.
2023-09-14 08:51:01 +02:00
Bård Skaflestad
9a3e8dba23 Normalise Region Level Summary Keywords for Lookup Purposes
Region level summary keywords may have suffixes which refer to user
defined region sets ('FIP*' keyword).  This commit prunes those
suffixes when performing function lookup, so that we do not get
false negatives.

To this end, introduce a new helper function

  EclIO::SummaryNode::normalise_region_keyword()

and use this both when determining the summary keyword type (rate,
cumulative, pressure &c) and when looking up evaluation functions
for region level summary vectors.  The new helper could arguably
have been integrated into the existing 'normalise_keyword()' helper
function, but that would have necessitated a different change
elsewhere in the code base.  For now, we keep this helper as a
separate function.
2023-09-13 18:00:01 +02:00
Vegard Kippe
68f6c5f5af .. and renaming the last call to computeCellDepth.. 2023-09-13 15:49:29 +02:00
Vegard Kippe
e23e69d328 Re-introducing another line that somehow was deleted 2023-09-13 15:40:43 +02:00
Vegard Kippe
90b9f30f67 Re-introducing line that somehow was deleted 2023-09-13 15:34:42 +02:00
Vegard Kippe
74d77cfcc4 Renaming as suggested by reviewer 2023-09-13 15:13:58 +02:00
Vegard Kippe
37f62d4b0f Ensure numerical aquifer cells get the correct depth 2023-09-13 13:56:14 +02:00
Bård Skaflestad
51b1cf614d Make Region Multiplier Aware of Aquifer Connections
This commit implements the 'NOAQUNNC' behaviour in member function

    MULTREGTScanner::getRegionMultiplier()

We use the new 'aquifer_cells' data member to identify connections
to and within numerical aquifers and ignore those if the record
stipulates 'NOAQUNNC' behaviour.
2023-09-13 13:42:32 +02:00
Bård Skaflestad
f99ae4b7cc Make MULTREGT Processor Aware of Numerical Aquifers
This commit adds a new data member

    MULTREGTScanner::aquifer_cells

which holds a sorted sequence of Cartesian/global cell indices
corresponding to the cells which comprise the model's numerical
aquifers.  These are needed to properly identify whether or not a
connection--i.e., a cell pair--would constitute a "numerical aquifer
connection" and be subject to 'NOAQUNNC' treatment.

We assign the numerical aquifer cells as part of member function

    EclipseState::conveyNumericalAquiferEffects

which runs at EclipseState construction time.  We know all numerical
aquifers at that point.
2023-09-13 13:42:32 +02:00
Bård Skaflestad
139701b017
Merge pull request #3673 from bska/kw-regex-suffix
Support Regular Expression Suffix for Keyword Matching
2023-09-13 12:49:06 +02:00
Bård Skaflestad
5fc5c86815
Merge pull request #3675 from vkip/bflowijk
Adding support for the summary vectors BFLOW[I|J|K]
2023-09-13 11:54:25 +02:00
Bård Skaflestad
5fc87fa10c Support Regular Expression Suffix for Keyword Matching
This is mostly to have a general solution for matching region level
summary keywords which may reference a user-defined region set (FIP
keyword, e.g., FIPXYZ) through tags like

    RPR__XYZ -- Average pressure in region, FIPXYZ region set
    ROPR_XYZ -- Oil production rate in region, FIPXYZ region set
    RODENXYZ -- Average oil density in region, FIPXYZ region set

The initial approach introduced in commit cfbafc236 was limited to
selected keywords.

To this end, add a new data member

    std::string ParserKeyword::m_matchRegexSuffix

and introduce a new member function

    bool ParserKeyword::matchesDeckNames()

which matches a candidate keyword string against the m_deckNames,
and, if applicable, as a regular expression against m_deckNames when
appended m_matchRegexSuffix.
2023-09-13 11:11:32 +02:00
Kai Bao
0f2a02dc40
Merge pull request #3676 from akva2/add_missing_initialization
fixed: initialize data in ConditionalStorage
2023-09-13 10:59:52 +02:00
Arne Morten Kvarving
9f0ea44f9c fixed: initialize data in ConditionalStorage 2023-09-13 10:04:40 +02:00
Vegard Kippe
42434dd038 Adding support for the summary vectors BFLOWI|J|K 2023-09-13 09:15:03 +02:00
Bård Skaflestad
b1672210ba
Merge pull request #3669 from steink/well_control_access
Utility functions for manipulation of well-controls
2023-09-12 13:33:53 +02:00
Bård Skaflestad
8cde088e19
Merge pull request #3665 from atgeirr/make-wconinjh-invalid-mode-a-warning
Allow invalid WCONINJH control mode
2023-09-12 13:29:03 +02:00
Atgeirr Flø Rasmussen
1e2f23ac03
Merge pull request #3672 from bska/remove-extra-semicolon
Remove Unnecessary Semicolons on Closing Braces
2023-09-11 17:54:20 +02:00
Atgeirr Flø Rasmussen
92a716fa18 Make it a warning instead of an error to specify an invalid control mode in WCONINJH.
Motivated by the need to accept deck output that contain this error,
that is generated by preprocessing tools.
2023-09-11 17:39:48 +02:00
Bård Skaflestad
1261cf2b5c Remove Unnecessary Semicolons on Closing Braces
These generate diagnostic messages from GCC at '-pedantic' levels.
2023-09-07 17:07:35 +02:00
Stein Krogstad
6ecabdbd7b Add access to injection controls 2023-09-07 13:48:09 +02:00
Stein Krogstad
703431ce61 Add functions to enable edit of prod controls 2023-09-07 13:48:09 +02:00
Bård Skaflestad
3411e1e0c6
Merge pull request #3651 from plgbrts/std-netw-gaslift
Adding item 6 (gas lift) to standard network keyword GRUPNET
2023-09-06 14:32:09 +02:00
Paul
ad076fc3c2 removed usage of Deckitem::to_bool() 2023-09-05 13:53:31 +02:00
Atgeirr Flø Rasmussen
5010643b0d
Merge pull request #3654 from bska/tidy-multregt-scanner
Tidy Up MULTREGT Scanner Implementation File
2023-09-04 15:26:55 +02:00
Paul
ee8c0a28a1 changed a comment 2023-09-04 10:58:34 +02:00
Paul
bd878c2312 reverted file 2023-09-04 10:58:34 +02:00
Paul
75e6318474 rebase 2023-09-04 10:58:33 +02:00
Paul
f04bbefaee add gas-lift to standard network 2023-09-04 10:58:33 +02:00
Paul
d1eed2cd4d allow for wildcards 2023-09-04 10:58:32 +02:00
Paul
bf1b2dbef9 fixing unit test 2023-09-04 10:58:32 +02:00
Bård Skaflestad
53e2758649 Ignore Default Regions in MULTREGT
The MULTREGT keyword has an independent way of defining the default
region--the default value of item 6--and does not need the default
GRIDOPTS-base region protocol of the other *REG keywords.
2023-09-04 10:30:36 +02:00
Bård Skaflestad
f6676fcc1a Reorder MULTREGTScanner Implementation File
Mostly to group related functions and have the same order in the
declaration and the implementation files.  While here, replace an
'enum' with a strong enum since the type does not need to support
arithmetic operations.
2023-09-04 10:30:36 +02:00
Bård Skaflestad
383dbf27a9
Merge pull request #3653 from bska/identify-aqunum-cells
Add Method for Identifying Numerical Aquifer Cell IDs
2023-09-04 10:14:06 +02:00
Bård Skaflestad
b84c5f46bf Add Method for Identifying Numerical Aquifer Cell IDs
This commit adds a new, focused, member function

  NumericalAquifers::allAquiferCellIds()

which returns a vector of those Cartesian/global cells that have
been marked as defining the model's numerical aquifers through the
AQUNUM keyword.  We intend to use this to identify those NNCs that
go to numerical aquifers--or between numerical aquifer cells--as
those may need special treatment when processing the MULTREGT
keyword.
2023-09-04 08:52:08 +02:00