I’d like to use ruby-gsl for some singular value decompositions, i.e.
a matrix m should be decomposed into a product of three matrices,
now,as the documentation says that this algorithm is not implemented
if the dimensions of m (m1 x m2) are such that m1<m2, I’ve implemented
my own version, re-reading some long-forgotten linear algebra book.
In the process, I need to find the eigenvectors and the eigenvalues of
but these are printed out and apparently also calculated only to three
by the command
eigval, eigvec = Eigen::symmv(m*m.transposed).
This causes the matrix u, which is constructed from the values eigval,
to have quite strange values for its determinant (I get values of
0.96 for uu.transpose.det, but u is unitary by definition, i.e.,
Then, of course, m isn’t remotely equal to usv.transposed …
Is there a way of setting the precision of the eigenvalue and
any higher ?
Thank you very much,