diff options
author | Gael Guennebaud <g.gael@free.fr> | 2010-06-24 17:48:38 +0200 |
---|---|---|
committer | Gael Guennebaud <g.gael@free.fr> | 2010-06-24 17:48:38 +0200 |
commit | 6be06745dfa177560388beaaf862653865df3a07 (patch) | |
tree | 588737cbea03f9031d0514575908a6ba9c671cff /Eigen/src/Householder/BlockHouseholder.h | |
parent | 905beb0953c2ae5064f4b7b5bf534555a0010220 (diff) |
block householder : minor optimization
Diffstat (limited to 'Eigen/src/Householder/BlockHouseholder.h')
-rw-r--r-- | Eigen/src/Householder/BlockHouseholder.h | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/Eigen/src/Householder/BlockHouseholder.h b/Eigen/src/Householder/BlockHouseholder.h index 60da512e1..de5d960f2 100644 --- a/Eigen/src/Householder/BlockHouseholder.h +++ b/Eigen/src/Householder/BlockHouseholder.h @@ -42,9 +42,8 @@ void ei_make_block_householder_triangular_factor(TriangularFactorType& triFactor Index rs = vectors.rows() - i; Scalar Vii = vectors(i,i); vectors.const_cast_derived().coeffRef(i,i) = Scalar(1); - triFactor.col(i).head(i).noalias() = vectors.block(i, 0, rs, i).adjoint() + triFactor.col(i).head(i).noalias() = -hCoeffs(i) * vectors.block(i, 0, rs, i).adjoint() * vectors.col(i).tail(rs); - triFactor.col(i).head(i) *= -hCoeffs(i); vectors.const_cast_derived().coeffRef(i, i) = Vii; // FIXME add .noalias() once the triangular product can work inplace triFactor.col(i).head(i) = triFactor.block(0,0,i,i).template triangularView<Upper>() |