Hi All,

I've been attempting to use the GSL (specifically, the svd function) to compute the pseudo-inverse of a potentially singular matrix. Unfortunately, the smaller singular values that I am getting (with both gsl_linalg_sv_decomp() or gsl_linalg_sv_decomp_jacobi()) are orders of magnitude off from the true result (computed and verified in octave).

I do understand the issues with numerical computing, and yet this still appears to be a strange issue (especially when you consider that most svd algorithms are quite robust). For example, even if the matrix is not rank deficient, I still get poor results from the svd, enough to cause the pseudo-inverse to deviate significantly from the true inverse. I was going to try calling svd with long double matrices to see whether this would improve things any, but the gsl does not seem to support this (am I wrong?).

Any suggestions?

Thanks,
Evan




_______________________________________________
Help-gsl mailing list
Help-gsl@gnu.org
http://lists.gnu.org/mailman/listinfo/help-gsl

Reply via email to