diff options
author | 2012-11-06 15:25:50 +0100 | |
---|---|---|
committer | 2012-11-06 15:25:50 +0100 | |
commit | a76fbbf39777827200455477a9e3557b6063913f (patch) | |
tree | 6a03f8fcb163fa2c3dc2267c52fd1204f5490309 /unsupported/Eigen/src/IterativeSolvers/IncompleteCholesky.h | |
parent | 959ef37006e60f68b9a9e667bf9da2e14eb0e8af (diff) |
Fix bug #314:
- remove most of the metaprogramming kung fu in MathFunctions.h (only keep functions that differs from the std)
- remove the overloads for array expression that were in the std namespace
Diffstat (limited to 'unsupported/Eigen/src/IterativeSolvers/IncompleteCholesky.h')
-rw-r--r-- | unsupported/Eigen/src/IterativeSolvers/IncompleteCholesky.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/unsupported/Eigen/src/IterativeSolvers/IncompleteCholesky.h b/unsupported/Eigen/src/IterativeSolvers/IncompleteCholesky.h index 5bc41c0f8..746d29473 100644 --- a/unsupported/Eigen/src/IterativeSolvers/IncompleteCholesky.h +++ b/unsupported/Eigen/src/IterativeSolvers/IncompleteCholesky.h @@ -116,6 +116,7 @@ template<typename Scalar, int _UpLo, typename OrderingType> template<typename _MatrixType> void IncompleteCholesky<Scalar,_UpLo, OrderingType>::factorize(const _MatrixType& mat) { + using std::sqrt; eigen_assert(m_analysisIsOk && "analyzePattern() should be called first"); // FIXME Stability: We should probably compute the scaling factors and the shifts that are needed to ensure a succesful LLT factorization and an efficient preconditioner. @@ -182,7 +183,7 @@ void IncompleteCholesky<Scalar,_UpLo, OrderingType>::factorize(const _MatrixType m_info = NumericalIssue; return; } - RealScalar rdiag = internal::sqrt(RealScalar(diag)); + RealScalar rdiag = sqrt(RealScalar(diag)); Scalar scal = Scalar(1)/rdiag; vals[colPtr[j]] = rdiag; // Insert the largest p elements in the matrix and scale them meanwhile |