DLASQ1(3F)DLASQ1(3F)NAME
DLASQ1 - DLASQ1 computes the singular values of a real N-by-N bidiagonal
matrix with diagonal D and off-diagonal E
SYNOPSIS
SUBROUTINE DLASQ1( N, D, E, WORK, INFO )
INTEGER INFO, N
DOUBLE PRECISION D( * ), E( * ), WORK( * )
PURPOSE
DLASQ1 computes the singular values of a real N-by-N bidiagonal
matrix with diagonal D and off-diagonal E. The singular values are
computed to high relative accuracy, barring over/underflow or
denormalization. The algorithm is described in
"Accurate singular values and differential qd algorithms," by
K. V. Fernando and B. N. Parlett,
Numer. Math., Vol-67, No. 2, pp. 191-230,1994.
See also
"Implementation of differential qd algorithms," by
K. V. Fernando and B. N. Parlett, Technical Report,
Department of Mathematics, University of California at Berkeley,
1994 (Under preparation).
ARGUMENTS
N (input) INTEGER
The number of rows and columns in the matrix. N >= 0.
D (input/output) DOUBLE PRECISION array, dimension (N)
On entry, D contains the diagonal elements of the bidiagonal
matrix whose SVD is desired. On normal exit, D contains the
singular values in decreasing order.
E (input/output) DOUBLE PRECISION array, dimension (N)
On entry, elements E(1:N-1) contain the off-diagonal elements of
the bidiagonal matrix whose SVD is desired. On exit, E is
overwritten.
WORK (workspace) DOUBLE PRECISION array, dimension (2*N)
INFO (output) INTEGER
= 0: successful exit
< 0: if INFO = -i, the i-th argument had an illegal value
> 0: if INFO = i, the algorithm did not converge; i specifies
how many superdiagonals did not converge.
Page 1