Merge pull request #641 from atgeirr/rename-autodiff

Rename opm-autodiff -> opm-simulators.
This commit is contained in:
Joakim Hove 2016-04-10 22:15:12 +02:00
commit 2defd015ad
15 changed files with 61 additions and 72 deletions

View File

@ -45,4 +45,4 @@ install:
- opm-grid/travis/build-opm-grid.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

View File

@ -118,7 +118,7 @@ if (NOT EIGEN3_FOUND)
)
include_directories (${CMAKE_BINARY_DIR}/eigen3-installed/include/eigen3)
add_dependencies (opmautodiff Eigen3)
add_dependencies (opmsimulators Eigen3)
endif (NOT EIGEN3_FOUND)
@ -132,7 +132,7 @@ if (HAVE_OPM_DATA)
set_tests_properties(flow_SPE1CASE2_restart PROPERTIES DEPENDS flow_SPE1CASE2) # Dependes on the restart file from test flow_SPE1CASE2
add_executable( test_restart tests/test_restart.cpp )
target_link_libraries( test_restart opmautodiff ${Boost_LIBRARIES})
target_link_libraries( test_restart opmsimulators ${Boost_LIBRARIES})
add_test( compare_restart_files
${CMAKE_BINARY_DIR}/bin/test_restart

View File

@ -1,17 +1,16 @@
# Open Porous Media Automatic Differentiation Library [![Build Status](https://travis-ci.org/OPM/opm-autodiff.svg?branch=master)](https://travis-ci.org/OPM/opm-autodiff)
# Open Porous Media Simulators and Automatic Differentiation Library [![Build Status](https://travis-ci.org/OPM/opm-simulators.svg?branch=master)](https://travis-ci.org/OPM/opm-simulators)
CONTENT
-------
opm-autodiff contains a small library for automatic differentiation
built on the Eigen linear algebra package. It also contains some
experimental solver and simulator prototypes demonstrating how it can
be used. The most important parts are:
opm-simulators contains simulator programs for porous media flow. It
also contains a small library for automatic differentiation
built on the Eigen linear algebra package which is used by many of the
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)
* AutoDiffHelpers.hpp (various utilities to simplify writing solvers)
* sim_fibo_ad.cpp (prototype fully implicit black-oil simulator)
LICENSE
-------
@ -23,7 +22,7 @@ version 3 or later (GPLv3+).
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
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
------------
opm-autodiff requires opm-core, and all its requirements (see
opm-core/README). In addition, opm-autodiff requires Eigen, version
3.1 (has not been tested with later versions).
opm-simulators requires opm-output, opm-core, and all their
requirements (see opm-core/README). In addition, opm-simulators
requires the Dune modue dune-istl and Eigen, version 3.1 (has not been
tested with later versions).
DOWNLOADING
-----------
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
--------
See build instructions in opm-core/README, or at
http://opm-project.org/download.php.
See build instructions at http://opm-project.org/?page_id=36
DOCUMENTATION
@ -69,7 +68,7 @@ REPORTING ISSUES
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
with the issue description.

View File

@ -3,8 +3,8 @@
# and by the CMake build scripts.
####################################################################
Module: opm-autodiff
Description: Utilities for automatic differentiation and simulators based on AD
Module: opm-simulators
Description: Simulators and utilities for automatic differentiation
Version: 2016.04-pre
Label: 2016.04-pre
Maintainer: atgeirr@sintef.no

View File

@ -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,
testing and cloning opm-autodiff and its dependencies.
testing and cloning opm-simulators and its dependencies.
**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.
**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
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.

View File

@ -1,6 +1,6 @@
#!/bin/bash
function build_opm_autodiff {
function build_opm_simulators {
# Build ERT
pushd .
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
test $? -eq 0 || exit 1
# Build opm-autodiff
# Build opm-simulators
pushd .
mkdir serial/build-opm-autodiff
cd serial/build-opm-autodiff
mkdir serial/build-opm-simulators
cd serial/build-opm-simulators
build_module "-DCMAKE_PREFIX_PATH=$WORKSPACE/serial/install" 1 $WORKSPACE
test $? -eq 0 || exit 1
popd

View File

@ -1,6 +1,6 @@
#!/bin/bash
source `dirname $0`/build-opm-autodiff.sh
source `dirname $0`/build-opm-simulators.sh
ERT_REVISION=master
OPM_COMMON_REVISION=master
@ -9,7 +9,7 @@ OPM_MATERIAL_REVISION=master
OPM_CORE_REVISION=master
OPM_GRID_REVISION=master
OPM_OUTPUT_REVISION=master
OPM_AUTODIFF_REVISION=$sha1
OPM_SIMULATORS_REVISION=$sha1
if grep -q "ert=" <<< $ghprbCommentBody
then
@ -46,9 +46,9 @@ then
OPM_OUTPUT_REVISION=pull/`echo $ghprbCommentBody | sed -r 's/.*opm-output=([0-9]+).*/\1/g'`/merge
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
cp serial/build-opm-autodiff/testoutput.xml .
cp serial/build-opm-simulators/testoutput.xml .

View File

@ -1,6 +1,6 @@
#!/bin/bash
source `dirname $0`/build-opm-autodiff.sh
source `dirname $0`/build-opm-simulators.sh
ERT_REVISION=master
OPM_COMMON_REVISION=master
@ -10,7 +10,7 @@ OPM_CORE_REVISION=master
OPM_GRID_REVISION=master
OPM_OUTPUT_REVISION=master
build_opm_autodiff
build_opm_simulators
test $? -eq 0 || exit 1
cp serial/build-opm-autodiff/testoutput.xml .
cp serial/build-opm-simulators/testoutput.xml .

View File

@ -17,7 +17,7 @@ cd deps/opm-data
# Run the norne case
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
PATH=$WORKSPACE/serial/install/bin:$PATH ./plotwells.sh

View File

@ -18,7 +18,7 @@ cd deps/opm-data
# Run the simple2D polymer case
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
cd ../..

View File

@ -17,15 +17,15 @@ cd deps/opm-data
# Run the SPE1/3/9 cases
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
cd ..
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
cd ..
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
cd ..

View File

@ -1,12 +0,0 @@
dnl -*- autoconf -*-
dnl locate opm-autodiff library itself; this macro is called by every module
dnl that depends on opm-autodiff.
AC_DEFUN([OPM_AUTODIFF_CHECK_MODULE],
[
OPM_CHECK_PKG_MODULE([opm-autodiff],[1.0],[Utilities for automatic differentiation and simulators based on AD])
])
dnl find all prerequisites of opm-autodiff; nothing to do here since this
dnl is done by the CMake module and then stored in the -config file.
AC_DEFUN([OPM_AUTODIFF_CHECKS],[])

View File

@ -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).
@ -17,11 +17,21 @@
along with OPM. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef OPM_OPM-AUTODIFF_DOXYGEN_MAIN_HEADER_INCLUDED
#define OPM_OPM-AUTODIFF_DOXYGEN_MAIN_HEADER_INCLUDED
#ifndef OPM_OPM-SIMULATORS_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>
@ -36,14 +46,6 @@ include Opm::HelperOps, Opm::UpwindSelector, Opm::subset,
Opm::superset, Opm::Selector, Opm::collapseJacs, Opm::vertcat,
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

View File

@ -2,7 +2,7 @@
set -ex
pushd . > /dev/null
opm-autodiff/travis/build-opm-autodiff.sh
cd opm-autodiff/build
opm-simulators/travis/build-opm-simulators.sh
cd opm-simulators/build
ctest --output-on-failure
popd > /dev/null

View File

@ -2,7 +2,7 @@
set -ex
pushd . > /dev/null
cd opm-autodiff
cd opm-simulators
mkdir build
cd build
cmake -D SUPERLU_ROOT=../../SuperLU ../