Commit Graph

46 Commits

Author SHA1 Message Date
Arne Morten Kvarving
a4f97e84b6 allow constructing SpiralICD from variables
also make it default constructible and add equality operator
2020-01-02 08:17:36 +01:00
Bård Skaflestad
ebfa768fd2 Segment: Make Type Predicates Free Functions
That way, we won't have to pollute the Segment API when adding new
segment types.  While here, also reduce header file coupling by
forward-declaring SpiralICD and Valve in Segment.hpp.
2019-12-17 09:14:17 +01:00
Bård Skaflestad
40e0f83b7b Segment: Add Means of Identifing Valve Devices
This commit adds a simple predicate, Segment::isValve(), that lets
client code query whether or not a particular segment represents a
valve--created through the WSEGVALV keyword.

If so, the client can also request the valve itself to inspect the
pertinent valve properties.
2019-12-17 09:14:17 +01:00
Kai Bao
aff2baf9f2 adding test for WSEGVALV 2019-12-11 14:38:43 +01:00
Kai Bao
6be5e104b0 addressing the reviewing comments from PR#1257 2019-12-11 13:00:34 +01:00
Kai Bao
46bcd7a499 adding a few segment summary keywords to SEGMENT_PROBE
to it can run the WSEGVALV case in opm-tests without modifying the deck.
2019-12-11 13:00:34 +01:00
Kai Bao
80159c4374 adding support for WSEGVALV 2019-12-11 13:00:34 +01:00
Bård Skaflestad
953abdc496 Segment: Add Means of Identifying SICDs
This commit adds a simple predicate, Segment::isSpiralICD(), that
lets client code query whether or not a particular segment
represents a spiral ICD.  These are created through the WSEGSICD
input keyword.
2019-12-10 14:27:03 +01:00
Arne Morten Kvarving
3b66c03d31 fixed: this should be an int, not a double 2019-12-10 11:56:18 +01:00
Kai Bao
254cee34bd addingress reviewing comments for PR#1251 2019-12-05 11:48:59 +01:00
Kai Bao
973fe9823b adapting and fix the code after rebasing for WSEGSICD 2019-12-05 11:48:59 +01:00
Kai Bao
fea4c4c8fa adding support for WSEGSICD 2019-12-05 11:48:59 +01:00
Joakim Hove
8553bbf326 Remove ScheduleEnum files 2019-09-04 14:49:12 +02:00
Joakim Hove
9690588dd4 Refactor enums for Segments 2019-09-04 14:49:12 +02:00
Kai Bao
d11d26a2f1 adding test WrongDistanceCOMPSEGS 2019-05-24 10:19:50 +02:00
Kai Bao
584defebe0 ParseContext is used to handle the exceptions when parsing COMPSEGS 2019-05-24 10:19:50 +02:00
Joakim Hove
1c82a8ad39 Add alternative well implementation Well2 2019-05-09 09:20:23 +02:00
Joakim Hove
fffe259621 Misc minor changes: whitespace++ 2019-04-23 07:25:05 +02:00
Joakim Hove
b955ecf6b4 Merge pull request #737 from joakim-hove/process-segments
Add WellSegments::process() front-end method
2019-04-20 13:14:01 +02:00
Joakim Hove
fbece57167 Add WellSegments::process() front-end method 2019-04-19 12:35:10 +02:00
Joakim Hove
54f45eaba7 Remove unused member WellSegments::m_branch_number 2019-04-19 12:03:01 +02:00
Joakim Hove
eb15695ed0 Removed well property total number of connections
For the output code the total number of connections entered in the input deck is
required, we therefor keep track of the number of connections filtered out due
to inactive cells - and return the total in WellConnection::inputSize()
2019-03-18 15:44:18 +01:00
Joakim Hove
04d42c2f4e Move well and well related files to Well/ subfolder 2019-03-08 07:15:49 +01:00
Jostein Alvestad
9d32793796 Added improvements to connection data ICON (account for inactive cells) etc. 2018-09-19 16:02:12 +02:00
Jostein Alvestad
409a497396 Added corrections to code to generate Eclipse compatible Restart file: i) two changes to intehead, [49] and [50] -> 1 (based on tests), ii) corrections to ISEG mainly for multisegmented wells and iii) change to ICON to allow for default saturation table implying ICON[6] and [9] = 0 2018-09-19 16:02:09 +02:00
Atgeirr Flø Rasmussen
89e95b0789 Segment class: fix warnings and operator!= bug.
While silencing warnings in this class, it became apparent that
operator!=() was buggy, it was just a copy of operator==().
2018-06-28 17:01:27 +02:00
Joakim Hove
04a3a9ada5 WIP: cleaun up access methods 2018-06-26 12:36:49 +02:00
Joakim Hove
15dd449354 Changed WELSEGS implementation 2018-06-26 12:35:30 +02:00
Joakim Hove
fd3000cd31 WellConnections::add() does not inspect IJK 2018-06-26 12:35:30 +02:00
Joakim Hove
f3d82437fd Using shared_ptr to manage connections 2018-06-26 12:35:30 +02:00
Joakim Hove
b22e00b92d Rename WellSegment::numberSegment() WellSegment::size() 2018-06-20 11:48:02 +02:00
Joakim Hove
6c7f6d7afb Rename SegmentSet -> WellSegments 2018-06-20 11:36:50 +02:00
Joakim Hove
dc318f731f Rename ConnectionSet > WellConnections 2018-06-20 11:35:11 +02:00
Joakim Hove
3975db2ff3 Rename CompletionSet -> ConnectionSet 2018-06-11 14:03:32 +02:00
Kai Bao
4e6bf8f019 obtaining the depth for the completions based on segment information 2017-10-16 21:53:49 +02:00
Jørgen Kvalsvik
e884b0664c Redesign cmake
Tune the makefile according to new principles, which adds a few bells
and whistles and for clarity.

Synopsis:

* The dependency on opm-common is completely gone. This is reflected in
  travis and appveyor as well. No non-kitware cmake modules are used.
* Directories are flattened, quite a bit - source code is located in the
  lib/ directory if it belongs to opm-parser, and external/ if third
  party.
* The sibling build feature is implemented through cmake's
  export(PACKAGE) rather than implicitly looking through source files.
* Targets explicitly set required public and private include
  directories, compile options and definitions, which cmake will handle
  and propagate
* opm-parser-config.cmake for downstream users is now provided.
* Dependencies are set up using targets. In the future, when cmake 3.x+
  can be used, these should be either targets from newer Find modules,
  or interface libraries.
* Fewer system specific assumptions are coded in, instead we assume
  cmake or users set up system specific details.
* All module wide configuration and looking up libraries is handled in
  the root makefile - all sub directories only set up libraries and
  compile options for the module in question.
* Targets are defined and links handled transitively because cmake now
  is told about them. ${module_LIBRARIES} variables are gone.

This is largely guided by the principles outlined in
https://rix0r.nl/blog/2015/08/13/cmake-guide/

Most source files are just moved - if they have some content change then
it's nothing more than include fixes or similar in order to make them
compile.
2017-06-01 15:29:23 +02:00
Jørgen Kvalsvik
0059446147 Make Completion+CompletionSet no longer use shared_ptr 2016-10-19 20:38:28 +02:00
Jørgen Kvalsvik
4b51d9b0f5 Make Segment/Compsegs no longer use shared_ptr 2016-10-19 20:38:28 +02:00
Jørgen Kvalsvik
178f563c72 Fix warnings in Compsegs 2016-07-13 23:40:35 +02:00
Magne Sjaastad
1f91ae2b09 VS2015 : Added include to math 2016-05-25 10:39:19 +02:00
Jørgen Kvalsvik
0aa3e533f8 Remove unused EclipseGrid argument from Compsegs 2016-05-09 14:56:04 +02:00
chflo
0db3abab94 Added copyright header to files that were without it 2016-03-04 14:56:18 +01:00
Jørgen Kvalsvik
f0ae5db131 opm-parser adoption of Deck automatic ownership
Since the Deck* family of classes have changed their interfaces to no
longer use shared_ptr, a lot of code broke. This patch fixes all
problems in tests, other signatures and accesses to now use the new Deck
interfaces.
2016-02-18 13:27:24 +01:00
Jørgen Kvalsvik
4b98943665 Replaces unecessary header includes with fwd decls
Every header is self-contained and includes only what it must to
function, relying on users include what they need in source files,
adopting a pay-what-you-use model (in particular for internal
dependencies).
2016-01-26 13:23:22 +01:00
Jørgen Kvalsvik
04900a4bb6 ParserKeywords.hpp -> ParserKeywordsX.hpp
To reduce compiler stress and be more explicit w.r.t. dependencies, all
files now includes only the keywords they need, instead of the
collection of all files.
2016-01-21 09:25:58 +01:00
Kai Bao
33302f6edb moving the multi-segment related to MSW directory. 2015-11-12 12:28:08 +01:00