o The status of a well is maintened as a small object which is managed by a new
std::shared_ptr member in the well objects. The consequence of this is that
several well objects can share the same underlying status object. The
advantage of this is that runtime (i.e. ACTIONX) updates of well status will
affect the correct set of wells.
o The general Schedule::updateWell() will use the DynamicState::upadte_equal()
- rename member function from getRst -> getRestartData
- adding support for parsing and reading data for LGRs
- a number of member functions made const
- updated python bindings for this class
since we still support g++-7, where filesystem is marked experimental,
we introduce a wrapper header and expose the namespace to use
as Opm::filesystem.
for gcc we unconditionally link with libstdc++fs in the python bindings.
the setup.py stuff links as c code, not c++ code, so it is not
automatically added on any gcc version. this might prove unportable
later.
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.
With this commit the code to evaluate UDQ values has been extended/refactored in
many ways:
- There is an increased awarenwss of variable type, i.e. a well related UDQ
versus a field related UDQ. The variable type flows through the AST, and it
is verified that the expression to evaluate and the target variable are of
compatible types.
- Have added support for UDQ field variables and UDQ group variables.
- The UDQSet type and the UDQDefine::eval() have been refactored to multiplex
on all the UDQ types, and the specialized UDQWellSet has been removed.