Simulator programs and utilities for automatic differentiation.
Go to file
Bård Skaflestad fd2d8536eb Refactor Phase Saturation Derivation Procedure
This commit introduces a new helper class,

    Opm::EQUIL::Details::PhaseSaturations<>

that subsumes the responsibility of the existing helper function

    Opm::EQUIL::phaseSaturations<>()

and generalises that functionality to arbitrary depth points within
single cells.  This is in preparation of adding support for the N<0
case of the initial fluid in place procedure defined in the EQUIL
keyword.  The class consumes an already equlibrated pressure table
for the pertinent equilibration region, calculates capillary
pressure values and inverts Pc curves to derive saturation values.
If the capillary pressure curves are constant within a cell, then a
simple depth consideration with respect to the implied sharp phase
interface is used to derive saturation values.  We also preserve
existing support for SWATINIT-type initialisation of the water
saturation field.

Switch InitialStateComputer<>::calcPressSatRsRv() over to using the
pressure and saturation helper classes instead of the original
helper functions since this provides additional control.  Also
remove those helper functions to reduce risk of confusion over which
method to use.  Update the unit tests accordingly.
2020-04-14 23:01:02 +02:00
debian remove libboost-filesystem-dev from debian packaging 2020-02-18 11:24:11 +01:00
doc/doxygen Fix minor issues pointed out by bska. 2013-09-23 13:02:56 +02:00
ebos Refactor Phase Saturation Derivation Procedure 2020-04-14 23:01:02 +02:00
examples/mrst remove files 2018-11-16 14:53:37 +01:00
flow First PR in a splitting up of PR #2516. 2020-04-03 14:53:45 +02:00
jenkins fixed: do not make root dir 2020-02-28 14:42:16 +01:00
opm remove unused lambda parameter 2020-04-14 14:17:41 +02:00
python changed: check for pre-existing pybind11 target 2020-04-14 09:16:13 +02:00
redhat use devtoolset-8 and boost 1.48 on rhel 6 and rhel 7 2020-02-17 15:58:02 +01:00
tests Refactor Phase Saturation Derivation Procedure 2020-04-14 23:01:02 +02:00
.clang-format Add flexible solver and preconditioner infrastructure. 2019-06-03 11:42:30 +02:00
.gitignore Added build directory in the .gitignore 2018-06-04 15:28:44 +02:00
CHANGELOG.md Added entries to changelog concerning 2019.10 release 2019-10-29 13:27:07 +01:00
CMakeLists_files.cmake Add Main.hpp to CMakeLists_files.cmake. 2020-04-14 10:43:26 +02:00
CMakeLists.txt Check for cuda 9.0 or newer as we are supposed to. 2020-03-23 11:10:17 +01:00
compareECLFiles.cmake Change to small case, consitent with the ohter test names. 2020-04-13 14:15:33 +02:00
CTestConfig.cmake cdash: update dropsite 2015-11-11 16:50:25 +01:00
dune.module bump required dune version to 2.6 2020-02-06 16:24:39 +01:00
opm-simulators-prereqs.cmake remove boost::filesystem as dependency 2020-02-12 15:03:18 +01:00
README.md Remove obsolete information from the README 2020-03-13 11:23:35 +01:00

Open Porous Media Simulators and Automatic Differentiation Library

CONTENT

opm-simulators contains simulator programs for porous media flow. The most important (and tested) part is the Flow reservoir simulator, which is a fully implicit black-oil simulator that also supports solvent and polymer options. It is built using automatic differentiation, using the local AD class Evaluation from opm-material.

LICENSE

The library is distributed under the GNU General Public License, version 3 or later (GPLv3+).

PLATFORMS

The opm-simulators module is designed to run on Linux platforms. It is also regularly run on Mac OS X. No efforts have been made to ensure that the code will compile and run on windows platforms.

REQUIREMENTS

opm-simulators requires several other OPM modules, see http://opm-project.org/?page_id=274. In addition, opm-simulators requires Dune and some other software to be available, for details see https://opm-project.org/?page_id=239.

DOWNLOADING

For a read-only download: git clone git://github.com/OPM/opm-simulators.git

If you want to contribute, fork OPM/opm-simulators on github.

BUILDING

See build instructions at http://opm-project.org/?page_id=36

DOCUMENTATION

Efforts have been made to document the code with Doxygen. In order to build the documentation, enter the command

make doc

in the topmost directory.

REPORTING ISSUES

Issues can be reported in the Git issue tracker online at:

https://github.com/OPM/opm-simulators/issues

To help diagnose build errors, please provide a link to a build log together with the issue description.

You can capture such a log from the build using the `script' utility, e.g.:

LOGFILE=$(date +%Y%m%d-%H%M-)build.log ;
cmake -E cmake_echo_color --cyan --bold "Log file: $LOGFILE" ;
script -q $LOGFILE -c 'cmake ../opm-core -DCMAKE_BUILD_TYPE=Debug' &&
script -q $LOGFILE -a -c 'ionice nice make -j 4 -l 3' ||
cat CMakeCache.txt CMakeFiles/CMake*.log >> $LOGFILE

The resulting file can be uploaded to for instance gist.github.com.