aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen/src/QR
diff options
context:
space:
mode:
authorGravatar Gael Guennebaud <g.gael@free.fr>2009-07-15 14:20:45 +0200
committerGravatar Gael Guennebaud <g.gael@free.fr>2009-07-15 14:20:45 +0200
commit1578421ed14c23fa5c7ab3c818a069f1c1cefb8a (patch)
tree565cfe8bfd2e85872b95684e364aa9a9ef3ae7eb /Eigen/src/QR
parent7a9519a9be524a879b44a1912ae694cfe4ee4ef7 (diff)
fix issue #25 : the problem was that we assumed Dynamic was a multiple of a packet size
(also disable the test of blueNorm)
Diffstat (limited to 'Eigen/src/QR')
-rw-r--r--Eigen/src/QR/Tridiagonalization.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/Eigen/src/QR/Tridiagonalization.h b/Eigen/src/QR/Tridiagonalization.h
index bd8ff4fe3..59bffc12a 100644
--- a/Eigen/src/QR/Tridiagonalization.h
+++ b/Eigen/src/QR/Tridiagonalization.h
@@ -279,6 +279,7 @@ Tridiagonalization<MatrixType>::matrixQ(void) const
Scalar tmp = m_matrix.coeff(i+1,i);
m_matrix.const_cast_derived().coeffRef(i+1,i) = 1;
+ // TODO this product could be optimized by processing the submatrix per panel of at least 4 columns
matQ.corner(BottomRight,n-i-1,n-i-1) -=
((m_hCoeffs.coeff(i) * m_matrix.col(i).end(n-i-1)) *
(m_matrix.col(i).end(n-i-1).adjoint() * matQ.corner(BottomRight,n-i-1,n-i-1)).lazy()).lazy();