Commit Graph

109 Commits

Author SHA1 Message Date
Joakim Hove
a43d8e447c Fixed initialisation of well properties
Previously the control mode was initialized to ORAT; this was later set
to the correct value when parsing the relevant keywords - but in the
case of a SHUT well the control mode was not updated, and we were left
with a well under ORAT control.
2014-10-13 19:26:53 +02:00
Andreas Lauser
66139d9f07 fix compiler warnings and rename CF to ConnectionTransmissibilityFactor
for the compiler warnings, see e.g.

https://opm-project.org/CDash/viewBuildError.php?type=1&buildid=27777

the CF to ConnectionTransmissibilityFactor rename makes things much easier to
understand for people who are not intimately familiar with the wells
code.
2014-09-06 22:18:55 +02:00
Joakim Hove
be32f91004 Changed Completion to use Value<double>. 2014-09-04 22:10:16 +02:00
Joakim Hove
c1f42aee64 Moved OrderMap to EclipseState/Util 2014-09-04 14:09:33 +02:00
Bård Skaflestad
422d37b138 Capture and provide completion direction
This is needed for clients to act intelligently in the presence of
horizontal completions (in the context of deviated wells).
2014-08-31 21:23:18 +02:00
Andreas Lauser
b690d9add8 EclipseState: check the canonical section topology
at least if the "beStrict" parameter for the constructor is set to
true. by default nothing changes...
2014-08-26 12:29:17 +02:00
Bård Skaflestad
ef5a9e8e1a Refactor WellProductionProperties manipulation code
This commit splits the creation of WellProductionProperties objects,
and especially the ad-hoc helper functions historyProperties()
and predictionProperties() out to a separate module,
WellProductionProperties.[hc]pp.  Creating the properties object
from a DeckRecordConstPtr is deferred to two named constructors,

    WellProductionProperties::history() and
    WellProductionProperties::prediction()

that, respectively, assume the roles of historyProperties() and
predictionProperties().  Reimplement handleWCONProducer() in terms
of these named constructors and remove the producerProperties()
helper whose task, inspecting the status and retrieving/setting the
CMODE if not SHUT, can be assumed by handleWCONProducer().

Add a simple test module, WellPropertiesTest.cpp, to enforce the
rather peculiar semantics of the WCONHIST keyword.  Control modes
{O,W,G}RAT, LRAT, and RESV are *always* (unconditionally) supported
in WCONHIST but there is no control mode switching.  The latter is
deferred to client code, depending on the '.predictionMode' flag.

Suggested by: [at] joakim-hove
2014-07-08 13:22:46 +02:00
Kristian Flikka
82a38c1cc8 Merge pull request #208 from AtleH/wellnamewithwildcard
Added wildcard support in WCONINJE and WCONPROD
2014-05-16 12:28:39 +02:00
Arne Morten Kvarving
3827ddca64 fixed: mark static symbols as such to quell warnings 2014-05-15 14:46:16 +02:00
Atle Haugan
47ef4ed0e6 Simplified implementation and (slightly) changed behaviour of Schedule::getWells(wellNamePattern)
Improved performance by checking for wildcard before entering the loop. Logic slightly changed since method now only supports wildcards at the end of the string.
2014-05-14 15:10:17 +02:00
Atle Haugan
344d02ad1c Add support for wildcard in WCONPROD and WCONINJE keywords. 2014-05-06 09:54:37 +02:00
Joakim Hove
142255268d Using OrderedMap to hold wells in Schedule object - thereby preserving
well insert order.
2014-05-02 17:02:10 +02:00
Joakim Hove
4c477b6f70 Added class OrderedMap which is insert-order preserving map. 2014-05-02 17:02:09 +02:00
Atgeirr Flø Rasmussen
5a1c345e3f Add preferred phase to Well class.
This entails:
 - Adding a new data member of type Opm::Phase::PhaseEnum.
 - Adding method getPreferredPhase().
 - Adding extra constructor argument.
 - Modifying constructor call in Schedule::addWell().
 - Adding unit test for the new preferredPhase property.
 - Modifying constructor call in all the well unit tests.
2014-04-06 23:11:38 +02:00
Joakim Hove
5785d088ea Added functionality in Completion class to adjust I and J to wellHead value if they have been defaulted (i.e. have value -1). This is unfortunate because we loose quite a lot of const correctness. 2014-03-28 18:56:21 +01:00
Joakim Hove
f84ec0bb3f Made injection and production control variables into property variables. 2014-03-21 00:07:23 +01:00
Joakim Hove
011eb8a2c6 camelCased property attributes in the production and injection properties structures. 2014-03-20 23:27:18 +01:00
Atle Haugan
62f2a16496 Fixed unit tests after rebase/merge 2014-03-20 10:56:28 +01:00
Atle Haugan
eae65c3da3 Added unit tests 2014-03-20 10:43:21 +01:00
Atle Haugan
cfea44d264 Fixed implementation of getXyzProperties() - now returning correct reference to original object. Unit test still missing. 2014-03-20 10:43:21 +01:00
Atle Haugan
3daaf827c9 Renamed getXyzProperties to getXyzPropertiesCopy. Added new getXyzProperties which currently does not work... 2014-03-20 10:36:57 +01:00
Atle Haugan
2058bb5789 Re-activated the old tests. 2014-03-20 10:26:44 +01:00
Atle Haugan
7358ac5d5a Added addProductionControl() method to the WellProductionProperties struct. Same for WellInjectionProperties. 2014-03-20 10:19:20 +01:00
Atle Haugan
87599c9841 Moved has/drop/addProductionControl to WellProductionProperties. The same for WellInjectionProperties. 2014-03-20 10:11:56 +01:00
Atle Haugan
fb5c83086a Moved (duplicated) m_isInPredictionMode to WellProductionProperties and WellInjectionProperties. 2014-03-19 10:51:13 +01:00
Atle Haugan
d9772b83eb Removed unused Well::m_injectionControls, moved m_injectorType to WellInjectionProperties. 2014-03-19 10:42:22 +01:00
Atle Haugan
9c64af0b6b Moved BHPLimits and THPLimits to WellProductionProperties and WellInjectionProperties (duplicated). Several unit tests are still commented out - will fix. 2014-03-19 10:42:21 +01:00
Atle Haugan
3040697ccc Added WellInjectionProperties.InjectionControls. Adjusted som unit tests. Removed some dead code. 2014-03-19 10:40:48 +01:00
Atle Haugan
8aee879dc5 Added WellInjectionProperties, modified Well class to use it 2014-03-19 10:40:07 +01:00
Atle Haugan
df40a0aa21 Replaced single-item calls with call to get/setProductionProperties() 2014-03-19 10:13:58 +01:00
Atle Haugan
9650fce19a Using pointers for WellProductionProperties 2014-03-19 10:13:58 +01:00
Atle Haugan
cd549467b9 Well refactoring - fixed minor bug 2014-03-19 10:13:57 +01:00
Atle Haugan
32c2ef9060 Refactoring the Well class - intermediate step 1 2014-03-19 10:13:57 +01:00
Joakim Hove
77bed42742 Added method at() to the dynamicstate object to return a const reference. 2014-03-19 07:18:09 +01:00
Andreas Lauser
08331914bd TimeMap: extend unit tests for the time levels
I forgot, sorry...
2014-03-11 19:01:23 +01:00
Joakim Hove
1907a8e467 Merge pull request #129 from andlaus/refactor_timemap
Refactor timemap
2014-02-26 23:09:50 +01:00
Andreas Lauser
af13b5ed31 TimeMap: always assume the presence of the TIME item
i.e., the number of items in a date record must now always be 4. to
make this happen, some tests had to be fixed, too...
2014-02-26 22:15:53 +01:00
Andreas Lauser
bffa709dd3 TimeMap: extend test to check "from deck construction" and the new accessor methods 2014-02-21 17:06:22 +01:00
Andreas Lauser
18eb2fd8f4 TimeMap: replace boost::gregorian::date by boost::posix_time::ptime
this is necessary because boost::gregorian::date does not have a
notion of "time during a day" which is required to specify time step
lengths less than a day...
2014-02-21 17:06:21 +01:00
Andreas Lauser
6b70634f94 fix the "DATES" keyword
The time of the day field was missing. The defaults for it are those
of E100.
2014-02-21 17:06:21 +01:00
Kristian Flikka
b3dc1ea5ca Added rest of WGRUPCON handlingin Well and Schedule 2014-02-21 12:48:36 +01:00
Kristian Flikka
e4eb60be4b Added guide rate phase enum 2014-02-20 09:30:33 +01:00
Joakim Hove
b386b0b944 Merge pull request #119 from flikka/add-producergroup-status
Add producergroup status to Group object
2014-02-12 14:35:36 +01:00
Kristian Flikka
41a1e889b8 Added isProducerGroup to Group class, need this in opm-core 2014-02-10 15:43:37 +01:00
Kristian Flikka
9363f39cb9 Added getNodes to get a vector of the group nodes in the tree 2014-02-10 12:18:42 +01:00
Kristian Flikka
15682a71df Merge pull request #114 from joakim-hove/valgrind
Valgrind
2014-02-06 16:39:30 +01:00
Joakim Hove
e17f03b8a0 Merge remote-tracking branch 'akva2/run_tests_through_valgrind' into valgrind 2014-02-06 14:30:01 +01:00
Joakim Hove
bb444b5139 Added flag injectionControls to keep track of available injection controls. 2014-01-30 16:44:21 +01:00
Joakim Hove
137eb5b6e1 Added bitmask status flag to keep track of which controls have been set. 2014-01-30 16:44:21 +01:00
Joakim Hove
e42234b17a Added Well::Producercontrolmode 2014-01-30 16:44:21 +01:00