mirror of
https://gitlab.com/libeigen/eigen.git
synced 2025-07-25 22:34:30 +08:00
bug #230, fix compilation issues and wrong static assertions
This commit is contained in:
parent
33788b97dd
commit
05da15bf40
@ -23,7 +23,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#include <Eigen/SparseCholesky>
|
#include <Eigen/SparseCholesky>
|
||||||
#include "src/Eigenvalues/ArpackGeneralizedSelfAdjointEigenSolver.h"
|
#include "src/Eigenvalues/ArpackSelfAdjointEigenSolver.h"
|
||||||
|
|
||||||
#include <Eigen/src/Core/util/ReenableStupidWarnings.h>
|
#include <Eigen/src/Core/util/ReenableStupidWarnings.h>
|
||||||
|
|
||||||
|
@ -25,7 +25,7 @@
|
|||||||
#ifndef EIGEN_ARPACKGENERALIZEDSELFADJOINTEIGENSOLVER_H
|
#ifndef EIGEN_ARPACKGENERALIZEDSELFADJOINTEIGENSOLVER_H
|
||||||
#define EIGEN_ARPACKGENERALIZEDSELFADJOINTEIGENSOLVER_H
|
#define EIGEN_ARPACKGENERALIZEDSELFADJOINTEIGENSOLVER_H
|
||||||
|
|
||||||
|
#include <Eigen/Dense>
|
||||||
|
|
||||||
namespace Eigen {
|
namespace Eigen {
|
||||||
|
|
||||||
@ -337,6 +337,8 @@ ArpackGeneralizedSelfAdjointEigenSolver<MatrixType, MatrixSolver, BisSPD>&
|
|||||||
{
|
{
|
||||||
MatrixType B(0,0);
|
MatrixType B(0,0);
|
||||||
compute(A, B, nbrEigenvalues, eigs_sigma, options, tol);
|
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,
|
int *nev, RealScalar *tol, Scalar *resid, int *ncv,
|
||||||
Scalar *v, int *ldv, int *iparam, int *ipntr,
|
Scalar *v, int *ldv, int *iparam, int *ipntr,
|
||||||
Scalar *workd, Scalar *workl, int *lworkl, int *info)
|
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,
|
static inline void seupd(int *rvec, char *All, int *select, Scalar *d,
|
||||||
Scalar *z, int *ldz, RealScalar *sigma,
|
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,
|
RealScalar *tol, Scalar *resid, int *ncv, Scalar *v,
|
||||||
int *ldv, int *iparam, int *ipntr, Scalar *workd,
|
int *ldv, int *iparam, int *ipntr, Scalar *workd,
|
||||||
Scalar *workl, int *lworkl, int *ierr)
|
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>
|
template <> struct arpack_wrapper<float, float>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user