Remove support for AGMG from the build system

AGMG is now under a closed-source license, meaning that results
obtained with this solver is not freely reproducible by others.
Its use is therefore discouraged.

As of version 2.3, the DUNE AMG parts are competitive, so there
is a free and open alternative.
This commit is contained in:
Roland Kaufmann 2013-08-09 20:14:54 +02:00
parent 56b910e2ce
commit 8ec655e321
4 changed files with 0 additions and 114 deletions

View File

@ -1,94 +0,0 @@
# - Find Notay's Algebraic Multigrid Solver
#
# Set the path to the source directory of AGMG in the cache variable
# AGMG_ROOT.
#
# Note the difference between AGMG_DIR and AGMG_ROOT. The former will
# cause find_package to switch to config mode and search for a file
# named agmg-config.cmake, thereby bypassing this module altogether,
# whereas the latter communicates the location of the library to this
# module.
#
# When found, add the contents of AGMG_SOURCES to your own list of
# sources to compile and link for the target.
#
# Use define_fc_func from UseFortranWrappers to write FC_FUNC to your
# own config.h, and declare the function dagmg using this macro.
# USE_MPI is an option that must be declared in the program
# if this is enabled, then we use the parallel version of MUMPS
# in package "libmumps-dev"; otherwise use serial version in
# "libmumps-seq-dev"
# use the same options when searching for MPI
if (AGMG_FIND_REQUIRED)
set (_required "REQUIRED")
endif ()
if (AGMG_FIND_QUIETLY)
set (_quiet "QUIET")
endif ()
# use different version of library depending on MPI or not
if (USE_MPI)
set (_seq "")
set (_par "_par")
find_package (MPI ${_required} ${_quiet})
set (_mpi_found "MPI_FOUND")
else ()
set (_seq "_seq")
set (_par "")
set (_mpi_found "")
endif ()
find_file (AGMG_SOURCES
dagmg${_par}.f90
PATHS ${AGMG_ROOT}
PATH_SUFFIXES SRC
DOC "Yvan Notay's Algebraic Multigrid Solver, Double Precision version"
NO_DEFAULT_PATH
)
# AGMG is dependent on having the MUMPS library present
find_path (MUMPS_INCLUDE_DIR
dmumps_struc.h
PATH_SUFFIXES include
)
find_library (MUMPS_LIBRARY
NAMES dmumps${_seq}
DOC "MUltifrontal Massive Parallel sparse direct Solver"
)
# make sure that we can compile Fortran code
if (AGMG_SOURCES)
enable_language (Fortran)
endif (AGMG_SOURCES)
# set value for config.h
if (AGMG_SOURCES)
set (HAVE_AGMG 1 CACHE INT "Is AGMG present?")
else (AGMG_SOURCES)
unset (HAVE_AGMG CACHE)
endif (AGMG_SOURCES)
# handle REQUIRED and QUIET standard options
include (FindPackageHandleStandardArgs)
find_package_handle_standard_args (AGMG
DEFAULT_MSG
AGMG_SOURCES
MUMPS_INCLUDE_DIR
MUMPS_LIBRARY
CMAKE_Fortran_COMPILER_SUPPORTS_F90
${_mpi_found}
)
# add our own compatibility routine to link with system MUMPS
if (AGMG_SOURCES)
list (APPEND AGMG_SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/cmake/Templates/dagmg_mumps.f90")
list (APPEND AGMG_INCLUDE_DIRS "${MUMPS_INCLUDE_DIR}")
list (APPEND AGMG_LIBRARIES "${MUMPS_LIBRARY}")
endif ()
if (USE_MPI AND MPI_FOUND)
list (APPEND AGMG_INCLUDE_DIRS "${MPI_Fortran_INCLUDE_PATH}")
list (APPEND AGMG_LIBRARIES "${MPI_Fortran_LIBRARIES}")
endif ()

View File

@ -3,7 +3,6 @@
# defines that must be present in config.h for our headers
set (opm-core_CONFIG_VAR
HAVE_AGMG
HAVE_DUNE_ISTL
HAVE_DYNAMIC_BOOST_TEST
HAVE_ERT
@ -28,8 +27,6 @@ set (opm-core_DEPS
"SuiteSparse COMPONENTS umfpack"
# solver
"SuperLU"
# Algebraic Multigrid
"AGMG"
# xml processing (for config parsing)
"TinyXML"
# Ensembles-based Reservoir Tools (ERT)

View File

@ -39,10 +39,6 @@ Optional Packages:
--with-opm=PATH specify parent of all OPM modules not specified
--with-opm-MODULE=PATH use given OPM module from a specified location
--with-superlu=PATH user defined path to SuperLU library
--with-agmg=PATH Include DOUBLE PRECISION version Notay's of AGMG
Algebraic Multigrid solver from specified source
location. Note: this option requires a complete,
working Fortran 90 environment.
--with-umfpack=PATH use UMFPACK/SuiteSparse from a specified location
--with-ert=PATH Use ERT libraries
--with-tinyxml=PATH use TinyXML library from a specified location
@ -187,7 +183,6 @@ for OPT in "$@"; do
mpi-prefix)
rootvar="_MPI_PREFIX_PATH"
;;
agmg |\
ert |\
boost |\
superlu |\
@ -280,7 +275,6 @@ for OPT in "$@"; do
use_ninja=""
pkgname=""
;;
agmg |\
ert |\
superlu)
pkgname="${pkgname^^}"

View File

@ -1,11 +0,0 @@
! AGMG expects an interface to MUMPS named like this
subroutine DAGMG_MUMPS (id)
! In here are the official defines for the parameter passed to
! MUMPS. These must match the corresponding ones in dagmg.f90
include 'dmumps_struc.h'
type (DMUMPS_STRUC) :: id
! Let the system library do all the heavy lifting
call DMUMPS (id)
end subroutine DAGMG_MUMPS