mirror of
https://gitlab.com/libeigen/eigen.git
synced 2024-12-15 07:10:37 +08:00
added missing JacobiRotation's ...
This commit is contained in:
parent
5b8ffa4d46
commit
05ddd32849
@ -380,7 +380,7 @@ static void ei_tridiagonal_qr_step(RealScalar* diag, RealScalar* subdiag, int st
|
||||
if (matrixQ)
|
||||
{
|
||||
Map<Matrix<Scalar,Dynamic,Dynamic> > q(matrixQ,n,n);
|
||||
q.applyJacobiOnTheRight(k,k+1,c,s);
|
||||
q.applyJacobiOnTheRight(k,k+1,JacobiRotation<RealScalar>(c,s));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -309,7 +309,7 @@ SVD<MatrixType>& SVD<MatrixType>::compute(const MatrixType& matrix)
|
||||
h = Scalar(1.0)/h;
|
||||
c = g*h;
|
||||
s = -f*h;
|
||||
V.applyJacobiOnTheRight(i,nm,c,s);
|
||||
V.applyJacobiOnTheRight(i,nm,JacobiRotation<Scalar>(c,s));
|
||||
}
|
||||
}
|
||||
z = W[k];
|
||||
@ -351,7 +351,7 @@ SVD<MatrixType>& SVD<MatrixType>::compute(const MatrixType& matrix)
|
||||
g = g*c - x*s;
|
||||
h = y*s;
|
||||
y *= c;
|
||||
V.applyJacobiOnTheRight(i,j,c,s);
|
||||
V.applyJacobiOnTheRight(i,j,JacobiRotation<Scalar>(c,s));
|
||||
|
||||
z = pythag(f,h);
|
||||
W[j] = z;
|
||||
@ -364,7 +364,7 @@ SVD<MatrixType>& SVD<MatrixType>::compute(const MatrixType& matrix)
|
||||
}
|
||||
f = c*g + s*y;
|
||||
x = c*y - s*g;
|
||||
A.applyJacobiOnTheRight(i,j,c,s);
|
||||
A.applyJacobiOnTheRight(i,j,JacobiRotation<Scalar>(c,s));
|
||||
}
|
||||
rv1[l] = 0.0;
|
||||
rv1[k] = f;
|
||||
|
Loading…
Reference in New Issue
Block a user