From d8dce1da000547e94c81557d347f776169047c43 Mon Sep 17 00:00:00 2001 From: kronbichler Date: Wed, 19 Nov 2008 16:55:17 +0000 Subject: [PATCH] Fixed an issue with define flag for Xgetri. git-svn-id: https://svn.dealii.org/trunk@17644 0785d39b-7218-0410-832d-ea1e28bc413d --- deal.II/base/include/base/config.h.in | 117 +++++++++++++++++- .../blastemplates/lapack_templates.h.in | 3 + deal.II/contrib/blastemplates/templates.pl | 4 +- deal.II/lac/include/lac/full_matrix.h | 2 +- deal.II/lac/include/lac/lapack_templates.h | 4 +- deal.II/lac/source/full_matrix.cc | 2 +- 6 files changed, 122 insertions(+), 10 deletions(-) diff --git a/deal.II/base/include/base/config.h.in b/deal.II/base/include/base/config.h.in index 7e10dd2e47..684d4b1f23 100644 --- a/deal.II/base/include/base/config.h.in +++ b/deal.II/base/include/base/config.h.in @@ -220,6 +220,15 @@ linking. For the details, look at aclocal.m4 in the top-level directory. */ #undef DEAL_II_WEAK_LINKAGE_BUG +/* Define to 1 if you have the header file. */ +#undef HAVE_AMESOS_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_AZTECOO_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_AZTECOO_OPERATOR_H + /* Define if the compiler provides __builtin_expect */ #undef HAVE_BUILTIN_EXPECT @@ -238,12 +247,42 @@ /* Define to 1 if you have the `dgetrf_' function. */ #undef HAVE_DGETRF_ +/* Define to 1 if you have the `dgetri_' function. */ +#undef HAVE_DGETRI_ + /* Define to 1 if you have the `dgetrs_' function. */ #undef HAVE_DGETRS_ /* Define to 1 if you have the `dstev_' function. */ #undef HAVE_DSTEV_ +/* Define to 1 if you have the header file. */ +#undef HAVE_EPETRA_CRSGRAPH_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_EPETRA_CRSMATRIX_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_EPETRA_IMPORT_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_EPETRA_LINEARPROBLEM_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_EPETRA_MAP_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_EPETRA_MULTIVECTOR_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_EPETRA_OPERATOR_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_EPETRA_SERIALCOMM_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_EPETRA_VECTOR_H + /* Define to 1 if you have the `gethostname' function. */ #undef HAVE_GETHOSTNAME @@ -260,12 +299,12 @@ /* Availability of the MA47 algorithm from HSL */ #undef HAVE_HSL_MA47 +/* Define to 1 if you have the header file. */ +#undef HAVE_IFPACK_H + /* Define to 1 if you have the header file. */ #undef HAVE_INTTYPES_H -/* Define to 1 if you have the `amd' library (-lamd). */ -#undef HAVE_LIBAMD - /* Defined if deal.II was configured with BLAS support */ #undef HAVE_LIBBLAS @@ -279,7 +318,7 @@ libstdc++ interface. */ #undef HAVE_LIBSTDCXX_DEMANGLER -/* UMFPACK is $withval */ +/* UMFPACK is */ #undef HAVE_LIBUMFPACK /* Define to 1 if you have the `z' library (-lz). */ @@ -288,9 +327,15 @@ /* Define to 1 if you have the header file. */ #undef HAVE_MEMORY_H +/* Define to 1 if you have the header file. */ +#undef HAVE_ML_MULTILEVELPRECONDITIONER_H + /* Define if you have the rand_r function */ #undef HAVE_RAND_R +/* Define to 1 if you have the header file. */ +#undef HAVE_SACADO_HPP + /* Define to 1 if you have the `sgeevx_' function. */ #undef HAVE_SGEEVX_ @@ -306,6 +351,9 @@ /* Define to 1 if you have the `sgetrf_' function. */ #undef HAVE_SGETRF_ +/* Define to 1 if you have the `sgetri_' function. */ +#undef HAVE_SGETRI_ + /* Define to 1 if you have the `sgetrs_' function. */ #undef HAVE_SGETRS_ @@ -351,6 +399,67 @@ /* Define to 1 if you have the header file. */ #undef HAVE_SYS_TYPES_H +/* Define to 1 if you have the header file. */ +#undef HAVE_TEUCHOS_PARAMETERLIST_HPP + +/* Define to 1 if you have the header file. */ +#undef HAVE_TEUCHOS_RCP_HPP + +/* Define to 1 if you have the header file. */ +#undef HAVE_TEUCHOS_REFCOUNTPTR_HPP + +/* Define to 1 if you have the + header file. */ +#undef HAVE_THYRA_AZTECOOLINEAROPWITHSOLVEFACTORY_HPP + +/* Define to 1 if you have the header + file. */ +#undef HAVE_THYRA_DEFAULTBLOCKEDLINEAROPDECL_HPP + +/* Define to 1 if you have the header file. + */ +#undef HAVE_THYRA_DEFAULTBLOCKEDLINEAROP_HPP + +/* Define to 1 if you have the header file. + */ +#undef HAVE_THYRA_DEFAULTINVERSELINEAROP_HPP + +/* Define to 1 if you have the header file. */ +#undef HAVE_THYRA_EPETRALINEAROP_HPP + +/* Define to 1 if you have the header file. */ +#undef HAVE_THYRA_EPETRATHYRAWRAPPERS_HPP + +/* Define to 1 if you have the header file. + */ +#undef HAVE_THYRA_INVERSELINEAROPERATOR_HPP + +/* Define to 1 if you have the header file. */ +#undef HAVE_THYRA_LINEAROPERATORDECL_HPP + +/* Define to 1 if you have the header file. */ +#undef HAVE_THYRA_LINEAROPERATORIMPL_HPP + +/* Define to 1 if you have the + header file. */ +#undef HAVE_THYRA_LINEAROPWITHSOLVEFACTORYHELPERS_HPP + +/* Define to 1 if you have the header file. */ +#undef HAVE_THYRA_MULTIVECTORBASE_HPP + +/* Define to 1 if you have the header file. + */ +#undef HAVE_THYRA_MULTIVECTORDEFAULTBASE_HPP + +/* Define to 1 if you have the header file. */ +#undef HAVE_THYRA_VECTORDECL_HPP + +/* Define to 1 if you have the header file. */ +#undef HAVE_THYRA_VECTORIMPL_HPP + +/* Define to 1 if you have the header file. */ +#undef HAVE_THYRA_VECTORSPACEIMPL_HPP + /* Define to 1 if you have the header file. */ #undef HAVE_UNISTD_H diff --git a/deal.II/contrib/blastemplates/lapack_templates.h.in b/deal.II/contrib/blastemplates/lapack_templates.h.in index 7800f15b1c..c795262b03 100644 --- a/deal.II/contrib/blastemplates/lapack_templates.h.in +++ b/deal.II/contrib/blastemplates/lapack_templates.h.in @@ -15,6 +15,9 @@ void dgemm_ (const char* transa, const char* transb, // Compute LU factorization void dgetrf_ (const int* m, const int* n, double* A, const int* lda, int* ipiv, int* info); +// Invert matrix from LU factorization +void dgetri_ (const int* n, double* A, const int* lda, + int* ipiv, double* inv_work, const int* lwork, int* info); // Apply forward/backward substitution to LU factorization void dgetrs_ (const char* trans, const int* n, const int* nrhs, const double* A, const int* lda, const int* ipiv, diff --git a/deal.II/contrib/blastemplates/templates.pl b/deal.II/contrib/blastemplates/templates.pl index 855076e9a3..2ddbb78eec 100644 --- a/deal.II/contrib/blastemplates/templates.pl +++ b/deal.II/contrib/blastemplates/templates.pl @@ -2,7 +2,7 @@ # $Id$ # Version: $Name$ # -# Copyright (C) 2005, 2006, 2007 by the deal authors +# Copyright (C) 2005, 2006, 2007, 2008 by the deal authors # # This file is subject to QPL and may not be distributed # without copyright and license information. Please refer @@ -23,7 +23,7 @@ print << 'EOT' // This file was automatically generated from blas.h.in // See blastemplates in the deal.II contrib directory // -// Copyright (C) 2005, 2006, 2007 by the deal authors +// Copyright (C) 2005, 2006, 2007, 2008 by the deal authors // // This file is subject to QPL and may not be distributed // without copyright and license information. Please refer diff --git a/deal.II/lac/include/lac/full_matrix.h b/deal.II/lac/include/lac/full_matrix.h index ffbebca87c..7a27ce59dc 100644 --- a/deal.II/lac/include/lac/full_matrix.h +++ b/deal.II/lac/include/lac/full_matrix.h @@ -1156,7 +1156,7 @@ class FullMatrix : public Table<2,number> private: -#ifdef HAVE_LIBLAPACK +#if defined(HAVE_DGETRF_) && defined (HAVE_SGETRF_) && defined(HAVE_DGETRI_) && defined (HAVE_SGETRI_) /** * The vector storing the * permutations applied for diff --git a/deal.II/lac/include/lac/lapack_templates.h b/deal.II/lac/include/lac/lapack_templates.h index 89fcebf77f..fafd383f88 100644 --- a/deal.II/lac/include/lac/lapack_templates.h +++ b/deal.II/lac/include/lac/lapack_templates.h @@ -218,7 +218,7 @@ getrf (const int*, const int*, float*, const int*, int*, int*) #endif -#ifdef HAVE_DGETRF_ +#ifdef HAVE_DGETRI_ inline void getri (const int* n, double* A, const int* lda, int* ipiv, double* inv_work, const int* lwork, int* info) { @@ -233,7 +233,7 @@ getri (const int*, double*, const int*, int*, double*, const int*, int*) #endif -#ifdef HAVE_SGETRF_ +#ifdef HAVE_SGETRI_ inline void getri (const int* n, float* A, const int* lda, int* ipiv, float* inv_work, const int* lwork, int* info) { diff --git a/deal.II/lac/source/full_matrix.cc b/deal.II/lac/source/full_matrix.cc index 30ec55d91d..bf7d74b8b4 100644 --- a/deal.II/lac/source/full_matrix.cc +++ b/deal.II/lac/source/full_matrix.cc @@ -23,7 +23,7 @@ DEAL_II_NAMESPACE_OPEN // inversion since it only works with // floats and doubles in case LAPACK was // detected by configure. -#if defined(HAVE_DGETRF_) && defined (HAVE_SGETRF_) +#if defined(HAVE_DGETRF_) && defined (HAVE_SGETRF_) && defined(HAVE_DGETRI_) && defined (HAVE_SGETRI_) template <> void -- 2.39.5