diff options
-rw-r--r-- | unsupported/Eigen/ArpackSupport | 2 | ||||
-rw-r--r-- | unsupported/Eigen/src/Eigenvalues/ArpackSelfAdjointEigenSolver.h | 12 |
2 files changed, 10 insertions, 4 deletions
diff --git a/unsupported/Eigen/ArpackSupport b/unsupported/Eigen/ArpackSupport index 98f8e886b..37a2799ef 100644 --- a/unsupported/Eigen/ArpackSupport +++ b/unsupported/Eigen/ArpackSupport @@ -23,7 +23,7 @@ */ #include <Eigen/SparseCholesky> -#include "src/Eigenvalues/ArpackGeneralizedSelfAdjointEigenSolver.h" +#include "src/Eigenvalues/ArpackSelfAdjointEigenSolver.h" #include <Eigen/src/Core/util/ReenableStupidWarnings.h> diff --git a/unsupported/Eigen/src/Eigenvalues/ArpackSelfAdjointEigenSolver.h b/unsupported/Eigen/src/Eigenvalues/ArpackSelfAdjointEigenSolver.h index 68b5dd5cc..3b6a69aff 100644 --- a/unsupported/Eigen/src/Eigenvalues/ArpackSelfAdjointEigenSolver.h +++ b/unsupported/Eigen/src/Eigenvalues/ArpackSelfAdjointEigenSolver.h @@ -25,7 +25,7 @@ #ifndef EIGEN_ARPACKGENERALIZEDSELFADJOINTEIGENSOLVER_H #define EIGEN_ARPACKGENERALIZEDSELFADJOINTEIGENSOLVER_H - +#include <Eigen/Dense> namespace Eigen { @@ -337,6 +337,8 @@ ArpackGeneralizedSelfAdjointEigenSolver<MatrixType, MatrixSolver, BisSPD>& { MatrixType B(0,0); compute(A, B, nbrEigenvalues, eigs_sigma, options, tol); + + return *this; } @@ -681,7 +683,9 @@ template<typename Scalar, typename RealScalar> struct arpack_wrapper int *nev, RealScalar *tol, Scalar *resid, int *ncv, Scalar *v, int *ldv, int *iparam, int *ipntr, Scalar *workd, Scalar *workl, int *lworkl, int *info) - { EIGEN_STATIC_ASSERT(false, static_assertion<true>::NUMERIC_TYPE_MUST_BE_REAL); } + { + EIGEN_STATIC_ASSERT(!NumTraits<Scalar>::IsComplex, NUMERIC_TYPE_MUST_BE_REAL) + } static inline void seupd(int *rvec, char *All, int *select, Scalar *d, Scalar *z, int *ldz, RealScalar *sigma, @@ -689,7 +693,9 @@ template<typename Scalar, typename RealScalar> struct arpack_wrapper RealScalar *tol, Scalar *resid, int *ncv, Scalar *v, int *ldv, int *iparam, int *ipntr, Scalar *workd, Scalar *workl, int *lworkl, int *ierr) - { EIGEN_STATIC_ASSERT(false, static_assertion<true>::NUMERIC_TYPE_MUST_BE_REAL); } + { + EIGEN_STATIC_ASSERT(!NumTraits<Scalar>::IsComplex, NUMERIC_TYPE_MUST_BE_REAL) + } }; template <> struct arpack_wrapper<float, float> |