Common components for OPM, in particular build system (cmake).
This commit expands the private member function Tables::addGasPVTTables(const EclipseState&) to create structurally correct TAB vector entries from the PVTG (wet gas) input table data when gas is an active phase in a simulation run. Specifically, the main result array has the columns [ Rv, 1/Bg, 1/(Bg*mu_g), d(1/Bg)/dRv, d(1/(Bg*mu_g))/dRv ] and the ancillary table (base pointer JBPVTG) holds the gas pressure nodes. Note that while we do create structurally correct output tables, we do not fill in undersaturated states that have been defaulted in the input table. The number of table rows in the main table is equal to number of PVT regions times the number of declared pressure nodes (TABDIMS item 4, NPPVT) times the number of declared composition nodes (TABDIMS item 6, NRPVT). In other words, the main result array is expanded to fill NRPVT rows per gas pressure node per PVT region. Fill value -2.0e+20. We have verified the results with ECLIPSE 100. The ancillary table is expanded to the number of declared pressure nodes for each PVT region. Here the fill value is +2.0e+20. As an OPM extension, we will use the maximum number of active composition and pressure nodes across all PVTG tables if the declared maximum pressure nodes in TABDIMS is too small. This will create TAB vector representations that are not compatible with ECLIPSE, but which will nevertheless be useful in the context of ResInsight's flux calculation. Add unit tests for all gas-related PVT tables. |
||
---|---|---|
cmake | ||
debian | ||
docs | ||
etc | ||
examples | ||
external/cjson | ||
jenkins | ||
msim | ||
opm | ||
redhat | ||
src/opm | ||
tests | ||
.gitignore | ||
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.