diff options
author | Benoit Jacob <jacob.benoit.1@gmail.com> | 2010-01-04 21:24:43 -0500 |
---|---|---|
committer | Benoit Jacob <jacob.benoit.1@gmail.com> | 2010-01-04 21:24:43 -0500 |
commit | 39ac57fa6ddf9a74d9a6cc213293914d2e05ec31 (patch) | |
tree | 6c5c83c68ca023799bc09ebcbe150f894cb33b3b /Eigen/src/SVD | |
parent | 78ba523d3038b854c5beca7a94cbe9b7e955a9f3 (diff) |
Big renaming:
start ---> head
end ---> tail
Much frustration with sed syntax. Need to learn perl some day.
Diffstat (limited to 'Eigen/src/SVD')
-rw-r--r-- | Eigen/src/SVD/JacobiSVD.h | 2 | ||||
-rw-r--r-- | Eigen/src/SVD/SVD.h | 42 |
2 files changed, 22 insertions, 22 deletions
diff --git a/Eigen/src/SVD/JacobiSVD.h b/Eigen/src/SVD/JacobiSVD.h index 5792c5767..d2cd8e478 100644 --- a/Eigen/src/SVD/JacobiSVD.h +++ b/Eigen/src/SVD/JacobiSVD.h @@ -342,7 +342,7 @@ JacobiSVD<MatrixType, Options>& JacobiSVD<MatrixType, Options>::compute(const Ma for(int i = 0; i < diagSize; i++) { int pos; - m_singularValues.end(diagSize-i).maxCoeff(&pos); + m_singularValues.tail(diagSize-i).maxCoeff(&pos); if(pos) { pos += i; diff --git a/Eigen/src/SVD/SVD.h b/Eigen/src/SVD/SVD.h index 0ec41e36d..c1b14128c 100644 --- a/Eigen/src/SVD/SVD.h +++ b/Eigen/src/SVD/SVD.h @@ -205,7 +205,7 @@ SVD<MatrixType>& SVD<MatrixType>::compute(const MatrixType& matrix) g = s = scale = 0.0; if (i < m) { - scale = A.col(i).end(m-i).cwise().abs().sum(); + scale = A.col(i).tail(m-i).cwise().abs().sum(); if (scale != Scalar(0)) { for (k=i; k<m; k++) @@ -219,18 +219,18 @@ SVD<MatrixType>& SVD<MatrixType>::compute(const MatrixType& matrix) A(i, i)=f-g; for (j=l-1; j<n; j++) { - s = A.col(j).end(m-i).dot(A.col(i).end(m-i)); + s = A.col(j).tail(m-i).dot(A.col(i).tail(m-i)); f = s/h; - A.col(j).end(m-i) += f*A.col(i).end(m-i); + A.col(j).tail(m-i) += f*A.col(i).tail(m-i); } - A.col(i).end(m-i) *= scale; + A.col(i).tail(m-i) *= scale; } } W[i] = scale * g; g = s = scale = 0.0; if (i+1 <= m && i+1 != n) { - scale = A.row(i).end(n-l+1).cwise().abs().sum(); + scale = A.row(i).tail(n-l+1).cwise().abs().sum(); if (scale != Scalar(0)) { for (k=l-1; k<n; k++) @@ -242,13 +242,13 @@ SVD<MatrixType>& SVD<MatrixType>::compute(const MatrixType& matrix) g = -sign(ei_sqrt(s),f); h = f*g - s; A(i,l-1) = f-g; - rv1.end(n-l+1) = A.row(i).end(n-l+1)/h; + rv1.tail(n-l+1) = A.row(i).tail(n-l+1)/h; for (j=l-1; j<m; j++) { - s = A.row(i).end(n-l+1).dot(A.row(j).end(n-l+1)); - A.row(j).end(n-l+1) += s*rv1.end(n-l+1).transpose(); + s = A.row(i).tail(n-l+1).dot(A.row(j).tail(n-l+1)); + A.row(j).tail(n-l+1) += s*rv1.tail(n-l+1).transpose(); } - A.row(i).end(n-l+1) *= scale; + A.row(i).tail(n-l+1) *= scale; } } anorm = std::max( anorm, (ei_abs(W[i])+ei_abs(rv1[i])) ); @@ -265,12 +265,12 @@ SVD<MatrixType>& SVD<MatrixType>::compute(const MatrixType& matrix) V(j, i) = (A(i, j)/A(i, l))/g; for (j=l; j<n; j++) { - s = V.col(j).end(n-l).dot(A.row(i).end(n-l)); - V.col(j).end(n-l) += s * V.col(i).end(n-l); + s = V.col(j).tail(n-l).dot(A.row(i).tail(n-l)); + V.col(j).tail(n-l) += s * V.col(i).tail(n-l); } } - V.row(i).end(n-l).setZero(); - V.col(i).end(n-l).setZero(); + V.row(i).tail(n-l).setZero(); + V.col(i).tail(n-l).setZero(); } V(i, i) = 1.0; g = rv1[i]; @@ -282,7 +282,7 @@ SVD<MatrixType>& SVD<MatrixType>::compute(const MatrixType& matrix) l = i+1; g = W[i]; if (n-l>0) - A.row(i).end(n-l).setZero(); + A.row(i).tail(n-l).setZero(); if (g != Scalar(0.0)) { g = Scalar(1.0)/g; @@ -290,15 +290,15 @@ SVD<MatrixType>& SVD<MatrixType>::compute(const MatrixType& matrix) { for (j=l; j<n; j++) { - s = A.col(j).end(m-l).dot(A.col(i).end(m-l)); + s = A.col(j).tail(m-l).dot(A.col(i).tail(m-l)); f = (s/A(i,i))*g; - A.col(j).end(m-i) += f * A.col(i).end(m-i); + A.col(j).tail(m-i) += f * A.col(i).tail(m-i); } } - A.col(i).end(m-i) *= g; + A.col(i).tail(m-i) *= g; } else - A.col(i).end(m-i).setZero(); + A.col(i).tail(m-i).setZero(); ++A(i,i); } // Diagonalization of the bidiagonal form: Loop over @@ -408,7 +408,7 @@ SVD<MatrixType>& SVD<MatrixType>::compute(const MatrixType& matrix) for (int i=0; i<n; i++) { int k; - W.end(n-i).maxCoeff(&k); + W.tail(n-i).maxCoeff(&k); if (k != 0) { k += i; @@ -451,8 +451,8 @@ struct ei_solve_retval<SVD<_MatrixType>, Rhs> aux.coeffRef(i) /= si; } const int minsize = std::min(dec().rows(),dec().cols()); - dst.col(j).start(minsize) = aux.start(minsize); - if(dec().cols()>dec().rows()) dst.col(j).end(cols()-minsize).setZero(); + dst.col(j).head(minsize) = aux.head(minsize); + if(dec().cols()>dec().rows()) dst.col(j).tail(cols()-minsize).setZero(); dst.col(j) = dec().matrixV() * dst.col(j); } } |