diff options
author | Kenneth Frank Riddile <kfriddile@yahoo.com> | 2009-01-06 04:38:00 +0000 |
---|---|---|
committer | Kenneth Frank Riddile <kfriddile@yahoo.com> | 2009-01-06 04:38:00 +0000 |
commit | 6736e52d2552750c7346c67e6154e7169528af2a (patch) | |
tree | eb24a8b951d86b963289fc0a94d107b1e8314e50 /Eigen/src/SVD/SVD.h | |
parent | 1c29d703123f876d75885a03b10c5deb3d36813f (diff) |
* suppressed some minor warnings
Diffstat (limited to 'Eigen/src/SVD/SVD.h')
-rw-r--r-- | Eigen/src/SVD/SVD.h | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/Eigen/src/SVD/SVD.h b/Eigen/src/SVD/SVD.h index b8432c943..7041d16b5 100644 --- a/Eigen/src/SVD/SVD.h +++ b/Eigen/src/SVD/SVD.h @@ -208,7 +208,7 @@ void SVD<MatrixType>::compute(const MatrixType& matrix) m_matU.col(j).end(m-k) += t * m_matU.col(k).end(m-k); } m_matU.col(k).end(m-k) = - m_matU.col(k).end(m-k); - m_matU(k,k) = 1.0 + m_matU(k,k); + m_matU(k,k) = Scalar(1) + m_matU(k,k); if (k-1>0) m_matU.col(k).start(k-1).setZero(); } @@ -242,7 +242,7 @@ void SVD<MatrixType>::compute(const MatrixType& matrix) // Main iteration loop for the singular values. int pp = p-1; int iter = 0; - Scalar eps(pow(2.0,-52.0)); + Scalar eps(Scalar(pow(2.0,-52.0))); while (p > 0) { int k=0; @@ -260,7 +260,7 @@ void SVD<MatrixType>::compute(const MatrixType& matrix) // s(k), ..., s(p) are not negligible (qr step). // kase = 4 if e(p-1) is negligible (convergence). - for (k = p-2; k >= -1; k--) + for (k = p-2; k >= -1; --k) { if (k == -1) break; @@ -277,11 +277,11 @@ void SVD<MatrixType>::compute(const MatrixType& matrix) else { int ks; - for (ks = p-1; ks >= k; ks--) + for (ks = p-1; ks >= k; --ks) { if (ks == k) break; - Scalar t( (ks != p ? ei_abs(e[ks]) : 0.) + (ks != k+1 ? ei_abs(e[ks-1]) : 0.)); + Scalar t( Scalar((ks != p ? ei_abs(e[ks]) : 0.) + (ks != k+1 ? ei_abs(e[ks-1]) : 0.)) ); if (ei_abs(m_sigma[ks]) <= eps*t) { m_sigma[ks] = 0.0; @@ -313,9 +313,9 @@ void SVD<MatrixType>::compute(const MatrixType& matrix) { Scalar f(e[p-2]); e[p-2] = 0.0; - for (j = p-2; j >= k; j--) + for (j = p-2; j >= k; --j) { - Scalar t(hypot(m_sigma[j],f)); + Scalar t(Scalar(hypot(m_sigma[j],f))); Scalar cs(m_sigma[j]/t); Scalar sn(f/t); m_sigma[j] = t; @@ -344,7 +344,7 @@ void SVD<MatrixType>::compute(const MatrixType& matrix) e[k-1] = 0.0; for (j = k; j < p; ++j) { - Scalar t(hypot(m_sigma[j],f)); + Scalar t(Scalar(hypot(m_sigma[j],f))); Scalar cs( m_sigma[j]/t); Scalar sn(f/t); m_sigma[j] = t; @@ -375,7 +375,7 @@ void SVD<MatrixType>::compute(const MatrixType& matrix) Scalar epm1 = e[p-2]/scale; Scalar sk = m_sigma[k]/scale; Scalar ek = e[k]/scale; - Scalar b = ((spm1 + sp)*(spm1 - sp) + epm1*epm1)/2.0; + Scalar b = Scalar(((spm1 + sp)*(spm1 - sp) + epm1*epm1)/2.0); Scalar c = (sp*epm1)*(sp*epm1); Scalar shift = 0.0; if ((b != 0.0) || (c != 0.0)) @@ -392,7 +392,7 @@ void SVD<MatrixType>::compute(const MatrixType& matrix) for (j = k; j < p-1; ++j) { - Scalar t = hypot(f,g); + Scalar t = Scalar(hypot(f,g)); Scalar cs = f/t; Scalar sn = g/t; if (j != k) @@ -410,7 +410,7 @@ void SVD<MatrixType>::compute(const MatrixType& matrix) m_matV(i,j) = t; } } - t = hypot(f,g); + t = Scalar(hypot(f,g)); cs = f/t; sn = g/t; m_sigma[j] = t; @@ -439,7 +439,7 @@ void SVD<MatrixType>::compute(const MatrixType& matrix) // Make the singular values positive. if (m_sigma[k] <= 0.0) { - m_sigma[k] = (m_sigma[k] < 0.0 ? -m_sigma[k] : 0.0); + m_sigma[k] = Scalar((m_sigma[k] < 0.0 ? -m_sigma[k] : 0.0)); if (wantv) m_matV.col(k).start(pp+1) = -m_matV.col(k).start(pp+1); } |