Joakim Hove
f500adba24
ACTIONX will handle WLIST well arguments
2020-07-09 15:16:33 +02:00
Joakim Hove
dd1591f1a2
Use Action::State object to keep track of actions being run
2020-06-18 16:45:39 +02:00
Joakim Hove
f54245f1ca
Add class Action::State to keep track of ACTIONX count
2020-06-18 16:45:39 +02:00
Joakim Hove
7d856b4933
Add id member to ActionX objects
2020-06-18 16:45:39 +02:00
Joakim Hove
3c879dd5dc
ActionResult will not access wells if overall false
2020-05-06 12:48:38 +02:00
Joakim Hove
315382bad8
Run PYACTION keywords
...
The PYACTION keyword is implemented with a Python module with a run() function
in an external module.
2020-04-16 14:13:54 +02:00
Joakim Hove
5444eade2f
Use std::shared_ptr<Python> for Python argument in Schedule
2020-03-31 10:26:55 +02:00
Joakim Hove
50fb51d56e
Add Python arg to Schedule constructor
2020-03-27 12:43:18 +01:00
Joakim Hove
a0ebb2091f
Add method Actions::pending_python() to get active Python functions
2020-03-24 07:23:31 +01:00
Bård Skaflestad
19ecc3d30e
Consider Active Phases When Initializing Satfunc Endpoints
...
This commit passes the run's notion of its active phases, an object
of type Opm::Phases, through to the initialisation layer for the
saturation functions' scaling properties. In particular, this
allows us to discriminate between the phases and to not index into
tables or properties that would not be appropriate (e.g., maximum
gas saturation (SGU) in a simulation run without active gas).
Moreover, we now have enough information to know to look for SOF2 in
two-phase run using family II saturation function keywords. These
changes are necessary in order to extend Flow's support for the
FILLEPS output request to two-phase runs.
2020-01-29 16:34:15 +01:00
Joakim Hove
ecb5fce19b
Only active cells ( #1298 )
...
Use FieldProps implementation for 3D properties
2020-01-13 15:46:06 +01:00
Arne Morten Kvarving
e7e2458951
make Action::AST constructible from variables
...
also add accessors and equality operator
2020-01-03 13:20:36 +01:00
Steinar Foss
4b5ef93293
added enum class FuncType for ASTNode.
...
ActionParserNode takes functype arg.
ActionParser getfunc.
ASTNode constr take func_type-arg.
ASTNode: throws exception if not FunctionType well.
FuncType: expanded list.
ActionParser: gettype distnguishes types.
ACTIONX.cpp: added test with group*.
parseKeywordCategory made public.
ActionParser: uses parseCategory.
2019-12-04 16:24:58 +01:00
Joakim Hove
198b208258
Test use of FieldPropsManager in WellConnections
2019-11-29 16:42:29 +01:00
Steinar Foss
239d562581
testfile ACTIONC.cpp: removed 'if 0'.
...
test ACTIONX, uncommented TestActions.
ACTIONX tests: uncommented all.
2019-11-15 15:24:16 +01:00
Joakim Hove
f33c4f749e
Add copy constructor + contains() method to Action::Result
2019-11-04 12:54:14 +01:00
Joakim Hove
781ced7294
Use struct Location to record file position for keywords
2019-10-17 23:57:01 +02:00
Joakim Hove
2be6235ab7
Add small struct DeckKeyword::Location to simplify error reporting
2019-10-17 23:56:34 +02:00
Bård Skaflestad
c013639b51
Make Most Unit Tests Independent of LibECL
...
This commit switches a set of OPM-Common's unit tests away from
using direct calls to libecl functions and into using base types
from OPM-Common itself (along with Boost.Filesystem).
In particular summary related queries are replaced by calls to ESmry
member functions (wrapped in libecl-like interfaces to minimise code
changes). We disable checks on unit strings since ESmry currently
does not have a way of associating those with individual variables.
2019-10-14 06:13:38 -05:00
Joakim Hove
ff69737b99
Add start_time argument to SummaryState
2019-09-19 22:09:15 +02:00
Joakim Hove
4078451840
Action::Condition has lhs and rhs member properties
2019-09-14 08:26:51 +02:00
Joakim Hove
8efe3cf6a6
Remove unused member Condition::expression
2019-09-13 19:24:53 +02:00
Joakim Hove
546cd46926
Add cmp_string() method to Action::Condition class
2019-09-13 19:22:02 +02:00
Joakim Hove
6683ac1be6
Accept <= and >= in the ActionX::Condition
2019-09-07 18:17:05 +02:00
Joakim Hove
af2a09bde5
Make sure actionx keywords can be redefined
2019-09-03 13:47:30 +02:00
Joakim Hove
2aa10a0435
Internalize ActionX conditions to enable restart
2019-09-03 13:47:30 +02:00
Joakim Hove
208c1a7143
Convert Schedule::Actions to a DynamicState<Actions>
2019-09-03 13:47:30 +02:00
Joakim Hove
359955efc3
Action: capture matching wells correctly + large refactor
...
With this commit the result of a ACTIONX evaluation goes to the new type
Action::Result which in addition to the overall thruthness of the expression
keeps track of the list of matching wells.
Introduced a new namespace Action for everything related to the ACTIONX
implemenentation.
2019-08-09 15:43:58 +02:00
Joakim Hove
9e288a9d78
Refactor SummaryState
...
- Change SummaryState::add() -> SummaryState::update(), the
SummaryState::update() method is semantically aware of totals.
- Add an internal variable to the SummaryState class to keep track of the
elapsed simulation time.
2019-05-13 11:06:32 +02:00
Joakim Hove
15a7d7597d
Update ASTNode::eval() to handle Well selectors like 'P*'
2019-03-07 11:35:55 +01:00
Joakim Hove
d82be29745
ACTIONX: Works with WELOPEN and msim
2019-02-02 17:35:56 +01:00
Joakim Hove
d9585d6585
Reorganized the ACTIONX implementation - made large parts private
2019-01-21 18:07:24 +01:00
Joakim Hove
586f296de0
The matching wells are compined with && or ||
2019-01-17 11:33:57 +01:00
Joakim Hove
fc0e61518b
Merge pull request #566 from joakim-hove/capture-wells
...
Add functionality to capture matching wells when evaluating ACTIONX
2019-01-09 18:05:56 +01:00
Joakim Hove
2cd6fa2f49
Add overloads without ParseContext and ErrorGuard - update all tests
2019-01-04 13:59:28 +01:00
Joakim Hove
15c473e3bb
Implement support for well capture when evaluating ACTIONX
2019-01-02 14:03:25 +01:00
Joakim Hove
6465b5b23c
Add small class ActionValue to hold action eval result
2019-01-02 14:03:25 +01:00
Joakim Hove
9e93dc5af2
Add method wells() to ActionContext class
2019-01-02 11:30:56 +01:00
Joakim Hove
6921801eec
Add method Schedule::evalActions() to evaluate ACTIONX
2018-11-19 09:57:06 +01:00
Joakim Hove
36c3080f85
ActionContext internalizes a SummaryState object
2018-11-09 21:58:36 +01:00
Joakim Hove
212a1fde5f
Parse condition part in ACTIONX
2018-11-09 20:19:34 +01:00
Tor Harald Sandve
e2d748906e
Fix failure in actionx test after rebase
2018-11-05 13:48:36 +01:00
Tor Harald Sandve
95179f393c
Fix vappars and dr[sv]dt logic
...
The simulator should either use VAPPERS or dr[sv]dt, both the
combination drsdt and drvdt is allowed.
2018-11-05 13:38:42 +01:00
Joakim Hove
68e6926355
Add Actions container and ActionContext for eval
2018-11-02 10:55:29 +01:00
Joakim Hove
b8c5d8c129
Add whitelist of keywords allowed in ACTIONX block
2018-10-27 15:59:32 +02:00
Joakim Hove
451d52c18a
Refactor iteration over Schedule section to for ACTIONX
2018-08-10 11:30:07 +02:00
Joakim Hove
bbb5e27e90
Add basic ACTIONX keyword
2018-08-10 11:29:46 +02:00