From 2c64a655fedfb159c552cbed65200a4058f691f6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Bened=C3=AD?= Date: Wed, 6 Sep 2023 14:40:06 +0200 Subject: [PATCH] Stage will not be ok if pardiso returned error --- Eigen/src/PardisoSupport/PardisoSupport.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Eigen/src/PardisoSupport/PardisoSupport.h b/Eigen/src/PardisoSupport/PardisoSupport.h index ced7595b2..f9f79796f 100644 --- a/Eigen/src/PardisoSupport/PardisoSupport.h +++ b/Eigen/src/PardisoSupport/PardisoSupport.h @@ -274,8 +274,8 @@ Derived& PardisoImpl::compute(const MatrixType& a) m_matrix.valuePtr(), m_matrix.outerIndexPtr(), m_matrix.innerIndexPtr(), m_perm.data(), 0, m_iparm.data(), m_msglvl, NULL, NULL); manageErrorCode(error); - m_analysisIsOk = true; - m_factorizationIsOk = true; + m_analysisIsOk = m_info == Eigen::Success; + m_factorizationIsOk = m_info == Eigen::Success; m_isInitialized = true; return derived(); } @@ -296,7 +296,7 @@ Derived& PardisoImpl::analyzePattern(const MatrixType& a) m_perm.data(), 0, m_iparm.data(), m_msglvl, NULL, NULL); manageErrorCode(error); - m_analysisIsOk = true; + m_analysisIsOk = m_info == Eigen::Success; m_factorizationIsOk = false; m_isInitialized = true; return derived(); @@ -316,7 +316,7 @@ Derived& PardisoImpl::factorize(const MatrixType& a) m_perm.data(), 0, m_iparm.data(), m_msglvl, NULL, NULL); manageErrorCode(error); - m_factorizationIsOk = true; + m_factorizationIsOk = m_info == Eigen::Success; return derived(); }