## DGESVD precision

Post here if you have a question about LAPACK or ScaLAPACK algorithm or data format

### DGESVD precision

Hi. Recently I was using the DGESVD function in LAPACK, and I have some questions on its precision. From the working note "Accurate Singular Values of Bidiagonal Matrices" by James Demmel and W.Kahan, DGESVD should be able to achieve relative accuracy ( Theorem 6 in such working note) for a bidiagonal matrix, namely even for a ill-conditioned bidiagonal matrix, DGESVD should be able to provide accurate result for small singular values even when they are less than the largest singular value multiplied by the machine epsilon. However, after reading several threads in this forum, it seems that the administrator holds the opinion that for an ill-conditioned matrix, DGESVD won't be able to provide accrute result for such kind of small singular value.

Is it true that DGESVD could only guarantee the absolute accuracy instead of relative accuracy for singular values? If so, what's the reason for that, if it is actually implementing the algorithm in "Accurate Singular Values of Bidiagonal Matrices"? Why the implementation cannot fulfill the theoretical prediction?

If DGESVD won't be able to guarantee the relative accuracy for small singular values in an ill-conditioned bidiagonal matrix with condition number greater than one over the machine epsilon, then is there any SVD function in LAPACK library could provide such relative accuracy?
coffee_maker

Posts: 1
Joined: Fri Aug 22, 2014 1:55 pm

### Re: DGESVD precision

There is the algorithm which can achieve relative accuracy for a bidiagonal matrix. The name is orthogonal QD algorithm.
If you want to compute SVD, please try to use our implementation of orthogonal QD algorithm.
http://www-is.amp.i.kyoto-u.ac.jp/kkimu ... ROGNC.html
resultant

Posts: 13
Joined: Fri Nov 13, 2015 9:35 am

### Who is online

Users browsing this forum: Google [Bot] and 2 guests