mirror of
https://github.com/OPM/opm-simulators.git
synced 2025-02-25 18:55:30 -06:00
Rename opm-autodiff -> opm-simulators.
This commit is contained in:
parent
3f70248415
commit
ff549195ab
@ -45,4 +45,4 @@ install:
|
|||||||
- opm-grid/travis/build-opm-grid.sh
|
- opm-grid/travis/build-opm-grid.sh
|
||||||
- opm-output/travis/build-opm-output.sh
|
- opm-output/travis/build-opm-output.sh
|
||||||
|
|
||||||
script: opm-autodiff/travis/build-and-test-opm-autodiff.sh
|
script: opm-simulators/travis/build-and-test-opm-simulators.sh
|
||||||
|
31
README.md
31
README.md
@ -1,17 +1,16 @@
|
|||||||
# Open Porous Media Automatic Differentiation Library [](https://travis-ci.org/OPM/opm-autodiff)
|
# Open Porous Media Simulators and Automatic Differentiation Library [](https://travis-ci.org/OPM/opm-simulators)
|
||||||
|
|
||||||
|
|
||||||
CONTENT
|
CONTENT
|
||||||
-------
|
-------
|
||||||
|
|
||||||
opm-autodiff contains a small library for automatic differentiation
|
opm-simulators contains simulator programs for porous media flow. It
|
||||||
built on the Eigen linear algebra package. It also contains some
|
also contains a small library for automatic differentiation
|
||||||
experimental solver and simulator prototypes demonstrating how it can
|
built on the Eigen linear algebra package which is used by many of the
|
||||||
be used. The most important parts are:
|
simulators to handle the building of Jacobians. The most important parts are:
|
||||||
|
|
||||||
|
* flow.cpp (a fully implicit black-oil simulator)
|
||||||
* AutoDiffBlock.hpp (class for AD on vectorized data with sparse jacobians)
|
* AutoDiffBlock.hpp (class for AD on vectorized data with sparse jacobians)
|
||||||
* AutoDiffHelpers.hpp (various utilities to simplify writing solvers)
|
|
||||||
* sim_fibo_ad.cpp (prototype fully implicit black-oil simulator)
|
|
||||||
|
|
||||||
LICENSE
|
LICENSE
|
||||||
-------
|
-------
|
||||||
@ -23,7 +22,7 @@ version 3 or later (GPLv3+).
|
|||||||
PLATFORMS
|
PLATFORMS
|
||||||
---------
|
---------
|
||||||
|
|
||||||
The opm-autodiff module is designed to run on Linux platforms. It is
|
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
|
also regularly run on Mac OS X. No efforts have been made to ensure
|
||||||
that the code will compile and run on windows platforms.
|
that the code will compile and run on windows platforms.
|
||||||
|
|
||||||
@ -31,25 +30,25 @@ that the code will compile and run on windows platforms.
|
|||||||
REQUIREMENTS
|
REQUIREMENTS
|
||||||
------------
|
------------
|
||||||
|
|
||||||
opm-autodiff requires opm-core, and all its requirements (see
|
opm-simulators requires opm-output, opm-core, and all their
|
||||||
opm-core/README). In addition, opm-autodiff requires Eigen, version
|
requirements (see opm-core/README). In addition, opm-simulators
|
||||||
3.1 (has not been tested with later versions).
|
requires the Dune modue dune-istl and Eigen, version 3.1 (has not been
|
||||||
|
tested with later versions).
|
||||||
|
|
||||||
|
|
||||||
DOWNLOADING
|
DOWNLOADING
|
||||||
-----------
|
-----------
|
||||||
|
|
||||||
For a read-only download:
|
For a read-only download:
|
||||||
git clone git://github.com/OPM/opm-autodiff.git
|
git clone git://github.com/OPM/opm-simulators.git
|
||||||
|
|
||||||
If you want to contribute, fork OPM/opm-autodiff on github.
|
If you want to contribute, fork OPM/opm-simulators on github.
|
||||||
|
|
||||||
|
|
||||||
BUILDING
|
BUILDING
|
||||||
--------
|
--------
|
||||||
|
|
||||||
See build instructions in opm-core/README, or at
|
See build instructions at http://opm-project.org/?page_id=36
|
||||||
http://opm-project.org/download.php.
|
|
||||||
|
|
||||||
|
|
||||||
DOCUMENTATION
|
DOCUMENTATION
|
||||||
@ -69,7 +68,7 @@ REPORTING ISSUES
|
|||||||
|
|
||||||
Issues can be reported in the Git issue tracker online at:
|
Issues can be reported in the Git issue tracker online at:
|
||||||
|
|
||||||
https://github.com/OPM/opm-autodiff/issues
|
https://github.com/OPM/opm-simulators/issues
|
||||||
|
|
||||||
To help diagnose build errors, please provide a link to a build log together
|
To help diagnose build errors, please provide a link to a build log together
|
||||||
with the issue description.
|
with the issue description.
|
||||||
|
@ -3,8 +3,8 @@
|
|||||||
# and by the CMake build scripts.
|
# and by the CMake build scripts.
|
||||||
####################################################################
|
####################################################################
|
||||||
|
|
||||||
Module: opm-autodiff
|
Module: opm-simulators
|
||||||
Description: Utilities for automatic differentiation and simulators based on AD
|
Description: Simulators and utilities for automatic differentiation
|
||||||
Version: 2016.04-pre
|
Version: 2016.04-pre
|
||||||
Label: 2016.04-pre
|
Label: 2016.04-pre
|
||||||
Maintainer: atgeirr@sintef.no
|
Maintainer: atgeirr@sintef.no
|
||||||
|
@ -1,18 +1,18 @@
|
|||||||
# opm-autodiff jenkins build scripts:
|
# opm-simulators jenkins build scripts:
|
||||||
|
|
||||||
**build-opm-autodiff.sh**:
|
**build-opm-simulators.sh**:
|
||||||
This is a helper script which contains functions for building,
|
This is a helper script which contains functions for building,
|
||||||
testing and cloning opm-autodiff and its dependencies.
|
testing and cloning opm-simulators and its dependencies.
|
||||||
|
|
||||||
**build.sh**:
|
**build.sh**:
|
||||||
This script will build dependencies, then build opm-autodiff and execute its tests.
|
This script will build dependencies, then build opm-simulators and execute its tests.
|
||||||
It is intended for post-merge builds of the master branch.
|
It is intended for post-merge builds of the master branch.
|
||||||
|
|
||||||
**build-pr.sh**:
|
**build-pr.sh**:
|
||||||
This script will build dependencies, then build opm-autodiff and execute its tests.
|
This script will build dependencies, then build opm-simulators and execute its tests.
|
||||||
It inspects the $ghbPrBuildComment environmental variable to obtain a pull request
|
It inspects the $ghbPrBuildComment environmental variable to obtain a pull request
|
||||||
to use for ert, opm-common, opm-parser, opm-material, opm-core and
|
to use for ert, opm-common, opm-parser, opm-material, opm-core and
|
||||||
opm-grid (defaults to master) and then builds $sha1 of opm-autodiff.
|
opm-grid (defaults to master) and then builds $sha1 of opm-simulators.
|
||||||
|
|
||||||
It is intended for pre-merge builds of pull requests.
|
It is intended for pre-merge builds of pull requests.
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
function build_opm_autodiff {
|
function build_opm_simulators {
|
||||||
# Build ERT
|
# Build ERT
|
||||||
pushd .
|
pushd .
|
||||||
mkdir -p $WORKSPACE/deps/ert
|
mkdir -p $WORKSPACE/deps/ert
|
||||||
@ -58,10 +58,10 @@ function build_opm_autodiff {
|
|||||||
clone_and_build_module opm-output "-DCMAKE_PREFIX_PATH=$WORKSPACE/serial/install -DCMAKE_INSTALL_PREFIX=$WORKSPACE/serial/install" $OPM_OUTPUT_REVISION $WORKSPACE/serial
|
clone_and_build_module opm-output "-DCMAKE_PREFIX_PATH=$WORKSPACE/serial/install -DCMAKE_INSTALL_PREFIX=$WORKSPACE/serial/install" $OPM_OUTPUT_REVISION $WORKSPACE/serial
|
||||||
test $? -eq 0 || exit 1
|
test $? -eq 0 || exit 1
|
||||||
|
|
||||||
# Build opm-autodiff
|
# Build opm-simulators
|
||||||
pushd .
|
pushd .
|
||||||
mkdir serial/build-opm-autodiff
|
mkdir serial/build-opm-simulators
|
||||||
cd serial/build-opm-autodiff
|
cd serial/build-opm-simulators
|
||||||
build_module "-DCMAKE_PREFIX_PATH=$WORKSPACE/serial/install" 1 $WORKSPACE
|
build_module "-DCMAKE_PREFIX_PATH=$WORKSPACE/serial/install" 1 $WORKSPACE
|
||||||
test $? -eq 0 || exit 1
|
test $? -eq 0 || exit 1
|
||||||
popd
|
popd
|
@ -1,6 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
source `dirname $0`/build-opm-autodiff.sh
|
source `dirname $0`/build-opm-simulators.sh
|
||||||
|
|
||||||
ERT_REVISION=master
|
ERT_REVISION=master
|
||||||
OPM_COMMON_REVISION=master
|
OPM_COMMON_REVISION=master
|
||||||
@ -9,7 +9,7 @@ OPM_MATERIAL_REVISION=master
|
|||||||
OPM_CORE_REVISION=master
|
OPM_CORE_REVISION=master
|
||||||
OPM_GRID_REVISION=master
|
OPM_GRID_REVISION=master
|
||||||
OPM_OUTPUT_REVISION=master
|
OPM_OUTPUT_REVISION=master
|
||||||
OPM_AUTODIFF_REVISION=$sha1
|
OPM_SIMULATORS_REVISION=$sha1
|
||||||
|
|
||||||
if grep -q "ert=" <<< $ghprbCommentBody
|
if grep -q "ert=" <<< $ghprbCommentBody
|
||||||
then
|
then
|
||||||
@ -46,9 +46,9 @@ then
|
|||||||
OPM_OUTPUT_REVISION=pull/`echo $ghprbCommentBody | sed -r 's/.*opm-output=([0-9]+).*/\1/g'`/merge
|
OPM_OUTPUT_REVISION=pull/`echo $ghprbCommentBody | sed -r 's/.*opm-output=([0-9]+).*/\1/g'`/merge
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "Building with ert=$ERT_REVISION opm-common=$OPM_COMMON_REVISION opm-parser=$OPM_PARSER_REVISION opm-material=$OPM_MATERIAL_REVISION opm-core=$OPM_CORE_REVISION opm-grid=$OPM_GRID_REVISION opm-output=$OPM_OUTPUT_REVISION opm-autodiff=$OPM_AUTODIFF_REVISION"
|
echo "Building with ert=$ERT_REVISION opm-common=$OPM_COMMON_REVISION opm-parser=$OPM_PARSER_REVISION opm-material=$OPM_MATERIAL_REVISION opm-core=$OPM_CORE_REVISION opm-grid=$OPM_GRID_REVISION opm-output=$OPM_OUTPUT_REVISION opm-simulators=$OPM_SIMULATORS_REVISION"
|
||||||
|
|
||||||
build_opm_autodiff
|
build_opm_simulators
|
||||||
test $? -eq 0 || exit 1
|
test $? -eq 0 || exit 1
|
||||||
|
|
||||||
cp serial/build-opm-autodiff/testoutput.xml .
|
cp serial/build-opm-simulators/testoutput.xml .
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
source `dirname $0`/build-opm-autodiff.sh
|
source `dirname $0`/build-opm-simulators.sh
|
||||||
|
|
||||||
ERT_REVISION=master
|
ERT_REVISION=master
|
||||||
OPM_COMMON_REVISION=master
|
OPM_COMMON_REVISION=master
|
||||||
@ -10,7 +10,7 @@ OPM_CORE_REVISION=master
|
|||||||
OPM_GRID_REVISION=master
|
OPM_GRID_REVISION=master
|
||||||
OPM_OUTPUT_REVISION=master
|
OPM_OUTPUT_REVISION=master
|
||||||
|
|
||||||
build_opm_autodiff
|
build_opm_simulators
|
||||||
test $? -eq 0 || exit 1
|
test $? -eq 0 || exit 1
|
||||||
|
|
||||||
cp serial/build-opm-autodiff/testoutput.xml .
|
cp serial/build-opm-simulators/testoutput.xml .
|
||||||
|
@ -17,7 +17,7 @@ cd deps/opm-data
|
|||||||
|
|
||||||
# Run the norne case
|
# Run the norne case
|
||||||
cd norne
|
cd norne
|
||||||
$WORKSPACE/serial/build-opm-autodiff/bin/flow deck_filename=NORNE_ATW2013.DATA output_dir=OPM
|
$WORKSPACE/serial/build-opm-simulators/bin/flow deck_filename=NORNE_ATW2013.DATA output_dir=OPM
|
||||||
test $? -eq 0 || exit 1
|
test $? -eq 0 || exit 1
|
||||||
PATH=$WORKSPACE/serial/install/bin:$PATH ./plotwells.sh
|
PATH=$WORKSPACE/serial/install/bin:$PATH ./plotwells.sh
|
||||||
|
|
||||||
|
@ -18,7 +18,7 @@ cd deps/opm-data
|
|||||||
|
|
||||||
# Run the simple2D polymer case
|
# Run the simple2D polymer case
|
||||||
cd polymer_test_suite/simple2D
|
cd polymer_test_suite/simple2D
|
||||||
$WORKSPACE/serial/build-opm-autodiff/bin/flow_polymer run.param
|
$WORKSPACE/serial/build-opm-simulators/bin/flow_polymer run.param
|
||||||
test $? -eq 0 || exit 1
|
test $? -eq 0 || exit 1
|
||||||
cd ../..
|
cd ../..
|
||||||
|
|
||||||
|
@ -17,15 +17,15 @@ cd deps/opm-data
|
|||||||
|
|
||||||
# Run the SPE1/3/9 cases
|
# Run the SPE1/3/9 cases
|
||||||
cd spe1
|
cd spe1
|
||||||
$WORKSPACE/serial/build-opm-autodiff/bin/flow deck_filename=SPE1CASE2.DATA
|
$WORKSPACE/serial/build-opm-simulators/bin/flow deck_filename=SPE1CASE2.DATA
|
||||||
test $? -eq 0 || exit 1
|
test $? -eq 0 || exit 1
|
||||||
cd ..
|
cd ..
|
||||||
cd spe3
|
cd spe3
|
||||||
$WORKSPACE/serial/build-opm-autodiff/bin/flow max_iter=50 deck_filename=SPE3CASE1.DATA
|
$WORKSPACE/serial/build-opm-simulators/bin/flow max_iter=50 deck_filename=SPE3CASE1.DATA
|
||||||
test $? -eq 0 || exit 1
|
test $? -eq 0 || exit 1
|
||||||
cd ..
|
cd ..
|
||||||
cd spe9
|
cd spe9
|
||||||
$WORKSPACE/serial/build-opm-autodiff/bin/flow max_iter=50 deck_filename=SPE9_CP.DATA
|
$WORKSPACE/serial/build-opm-simulators/bin/flow max_iter=50 deck_filename=SPE9_CP.DATA
|
||||||
test $? -eq 0 || exit 1
|
test $? -eq 0 || exit 1
|
||||||
cd ..
|
cd ..
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
Copyright 2013 SINTEF ICT, Applied Mathematics.
|
Copyright 2013, 2016 SINTEF ICT, Applied Mathematics.
|
||||||
|
|
||||||
This file is part of the Open Porous Media project (OPM).
|
This file is part of the Open Porous Media project (OPM).
|
||||||
|
|
||||||
@ -17,11 +17,21 @@
|
|||||||
along with OPM. If not, see <http://www.gnu.org/licenses/>.
|
along with OPM. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef OPM_OPM-AUTODIFF_DOXYGEN_MAIN_HEADER_INCLUDED
|
#ifndef OPM_OPM-SIMULATORS_DOXYGEN_MAIN_HEADER_INCLUDED
|
||||||
#define OPM_OPM-AUTODIFF_DOXYGEN_MAIN_HEADER_INCLUDED
|
#define OPM_OPM-SIMULATORS_DOXYGEN_MAIN_HEADER_INCLUDED
|
||||||
|
|
||||||
|
|
||||||
/** \mainpage Documentation for the opm-autodiff library.
|
/** \mainpage Documentation for the opm-simulators library.
|
||||||
|
|
||||||
|
|
||||||
|
<h3>Solvers and simulators</h3>
|
||||||
|
|
||||||
|
The opm-simulators module contains a diverse set of simulator programs.
|
||||||
|
Notable simulator programs include
|
||||||
|
- examples/flow.cpp, a fully implicit black-oil simulator.
|
||||||
|
- examples/flow_polymer.cpp, a version of Flow that supports polymer EOR simulation
|
||||||
|
- examples/flow_solvent.cpp, a version of Flow that supports solvent EOR simulation
|
||||||
|
- examples/sim_2p_incomp_ad.cpp, a sequential incompressible 2-phase simulator.
|
||||||
|
|
||||||
<h3>Automatic differentiation</h3>
|
<h3>Automatic differentiation</h3>
|
||||||
|
|
||||||
@ -36,14 +46,6 @@ include Opm::HelperOps, Opm::UpwindSelector, Opm::subset,
|
|||||||
Opm::superset, Opm::Selector, Opm::collapseJacs, Opm::vertcat,
|
Opm::superset, Opm::Selector, Opm::collapseJacs, Opm::vertcat,
|
||||||
Opm::Span and Opm::sign.
|
Opm::Span and Opm::sign.
|
||||||
|
|
||||||
<h3>Solvers and simulators</h3>
|
|
||||||
|
|
||||||
There are some solvers and simulators in opm-autodiff. They should all
|
|
||||||
be considered experimental prototypes at this point. Notable simulator
|
|
||||||
prototypes include
|
|
||||||
- examples/sim_fibo_ad.cpp, a fully implicit black-oil simulator.
|
|
||||||
- examples/sim_2p_incomp_ad.cpp, a sequential incompressible 2-phase simulator.
|
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#endif // OPM_OPM-AUTODIFF_DOXYGEN_MAIN_HEADER_INCLUDED
|
#endif // OPM_OPM-SIMULATORS_DOXYGEN_MAIN_HEADER_INCLUDED
|
@ -2,7 +2,7 @@
|
|||||||
set -ex
|
set -ex
|
||||||
|
|
||||||
pushd . > /dev/null
|
pushd . > /dev/null
|
||||||
opm-autodiff/travis/build-opm-autodiff.sh
|
opm-simulators/travis/build-opm-simulators.sh
|
||||||
cd opm-autodiff/build
|
cd opm-simulators/build
|
||||||
ctest --output-on-failure
|
ctest --output-on-failure
|
||||||
popd > /dev/null
|
popd > /dev/null
|
@ -2,7 +2,7 @@
|
|||||||
set -ex
|
set -ex
|
||||||
|
|
||||||
pushd . > /dev/null
|
pushd . > /dev/null
|
||||||
cd opm-autodiff
|
cd opm-simulators
|
||||||
mkdir build
|
mkdir build
|
||||||
cd build
|
cd build
|
||||||
cmake -D SUPERLU_ROOT=../../SuperLU ../
|
cmake -D SUPERLU_ROOT=../../SuperLU ../
|
Loading…
Reference in New Issue
Block a user