Common components for OPM, in particular build system (cmake).
This commit adds logic implementing the static parts of the WELPI keyword. We internalize the keyword data, record appropriate events and provide hooks for dynamically adjusting the per-connection transmissibility factor (Connection::CF()) when those events occur. We implement support at three levels - WellConnections: Add new public member functions prepareWellPIScaling and applyWellPIScaling which, respectively, creates bookkeeping data to track those connections which are subject to CF scaling and actually applies that CF scaling. - Well: Add new data member 'productivity_index' which holds the 'WELPI' data value from the input keyword (converted to SI) and new member functions updateWellProductivityIndex and applyWellProdIndexScaling. The first follows the 'update*' protocol (return 'true' if state change) and assigns new values to 'productivity_index' while the second uses the stored PI value and a dynamically calculated effective PI value to rescale the pertinent connections' CF value. - Schedule: Add new member function handleWELPI which internalizes the WELPI keyword and its data and records WELPI events for subsequent playback in the simulator layer. Also add a set of unit tests to exercise the new features at all levels. |
||
---|---|---|
cmake | ||
debian | ||
docs | ||
etc | ||
examples | ||
external | ||
jenkins | ||
msim | ||
opm | ||
python | ||
redhat | ||
src/opm | ||
test_util | ||
tests | ||
.clang-format | ||
.gitignore | ||
.gitmodules | ||
changelog.md | ||
CMakeLists_files.cmake | ||
CMakeLists.txt | ||
CopyHeaders.cmake | ||
dune.module | ||
ExtraTests.cmake | ||
GenerateKeywords.cmake | ||
LICENSE | ||
opm-common-prereqs.cmake | ||
README.md |
opm-common
Contains common components used throughout all of OPM, in particular CMake modules for the build system.