From 00c29c2caef8fb0c6b1d2ba5ecdf6780c0c766d4 Mon Sep 17 00:00:00 2001 From: Gael Guennebaud Date: Thu, 26 May 2016 17:34:23 +0200 Subject: [PATCH] Store permutation's determinant as char. This also fixes some long to float conversion warnings --- Eigen/src/LU/FullPivLU.h | 3 ++- Eigen/src/LU/PartialPivLU.h | 8 ++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/Eigen/src/LU/FullPivLU.h b/Eigen/src/LU/FullPivLU.h index 64b9eb7f1..c39f8e3d5 100644 --- a/Eigen/src/LU/FullPivLU.h +++ b/Eigen/src/LU/FullPivLU.h @@ -418,9 +418,10 @@ template class FullPivLU PermutationQType m_q; IntColVectorType m_rowsTranspositions; IntRowVectorType m_colsTranspositions; - Index m_det_pq, m_nonzero_pivots; + Index m_nonzero_pivots; RealScalar m_l1_norm; RealScalar m_maxpivot, m_prescribedThreshold; + char m_det_pq; bool m_isInitialized, m_usePrescribedThreshold; }; diff --git a/Eigen/src/LU/PartialPivLU.h b/Eigen/src/LU/PartialPivLU.h index 2e6d91939..715d2b09c 100644 --- a/Eigen/src/LU/PartialPivLU.h +++ b/Eigen/src/LU/PartialPivLU.h @@ -254,8 +254,8 @@ template class PartialPivLU MatrixType m_lu; PermutationType m_p; TranspositionType m_rowsTranspositions; - Index m_det_p; RealScalar m_l1_norm; + char m_det_p; bool m_isInitialized; }; @@ -264,8 +264,8 @@ PartialPivLU::PartialPivLU() : m_lu(), m_p(), m_rowsTranspositions(), - m_det_p(0), m_l1_norm(0), + m_det_p(0), m_isInitialized(false) { } @@ -275,8 +275,8 @@ PartialPivLU::PartialPivLU(Index size) : m_lu(size, size), m_p(size), m_rowsTranspositions(size), - m_det_p(0), m_l1_norm(0), + m_det_p(0), m_isInitialized(false) { } @@ -287,8 +287,8 @@ PartialPivLU::PartialPivLU(const EigenBase& matrix) : m_lu(matrix.rows(), matrix.rows()), m_p(matrix.rows()), m_rowsTranspositions(matrix.rows()), - m_det_p(0), m_l1_norm(0), + m_det_p(0), m_isInitialized(false) { compute(matrix.derived());