Common components for OPM, in particular build system (cmake).
This commit introduces a new helper template class, FlatTableWithCopy<RecordType> which wraps a vector<RecordType>, provides constructors from DeckKeyword and initializer_list<RecordType> and handles copying tables for all-defaulted records. We reimplement the PVTW, DENSITY, and GRAVITY tables in terms of this helper class to reduce duplication. If the copy behaviour is generally useful/needed we expect to replace the existing FlatTable mechanism with the new helper. Suggested by: Markus Blatt |
||
---|---|---|
cmake | ||
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: Tools for Eclipse reservoir simulation files
The Open Porous Media (OPM) software suite provides libraries and tools for modeling and simulation of porous media processes, especially for simulating CO2 sequestration and improved and enhanced oil recovery. The Eclipse file format is widely used in the reservoir simulation community. This package provides a library containing code for processing files in Eclipse format, Python binding for accessing Eclipse files and utility code used by other OPM modules (e.g. CMake modules used).
License
The library is distributed under the GNU General Public License, version 3 or later (GPLv3+).
Requirements
- C++17 compatible compiler
- CMake >= 3.10
- Posix compatibility