LAPACK
3.6.1
LAPACK: Linear Algebra PACKage
|
subroutine zbdt01 | ( | integer | M, |
integer | N, | ||
integer | KD, | ||
complex*16, dimension( lda, * ) | A, | ||
integer | LDA, | ||
complex*16, dimension( ldq, * ) | Q, | ||
integer | LDQ, | ||
double precision, dimension( * ) | D, | ||
double precision, dimension( * ) | E, | ||
complex*16, dimension( ldpt, * ) | PT, | ||
integer | LDPT, | ||
complex*16, dimension( * ) | WORK, | ||
double precision, dimension( * ) | RWORK, | ||
double precision | RESID | ||
) |
ZBDT01
ZBDT01 reconstructs a general matrix A from its bidiagonal form A = Q * B * P' where Q (m by min(m,n)) and P' (min(m,n) by n) are unitary matrices and B is bidiagonal. The test ratio to test the reduction is RESID = norm( A - Q * B * PT ) / ( n * norm(A) * EPS ) where PT = P' and EPS is the machine precision.
[in] | M | M is INTEGER The number of rows of the matrices A and Q. |
[in] | N | N is INTEGER The number of columns of the matrices A and P'. |
[in] | KD | KD is INTEGER If KD = 0, B is diagonal and the array E is not referenced. If KD = 1, the reduction was performed by xGEBRD; B is upper bidiagonal if M >= N, and lower bidiagonal if M < N. If KD = -1, the reduction was performed by xGBBRD; B is always upper bidiagonal. |
[in] | A | A is COMPLEX*16 array, dimension (LDA,N) The m by n matrix A. |
[in] | LDA | LDA is INTEGER The leading dimension of the array A. LDA >= max(1,M). |
[in] | Q | Q is COMPLEX*16 array, dimension (LDQ,N) The m by min(m,n) unitary matrix Q in the reduction A = Q * B * P'. |
[in] | LDQ | LDQ is INTEGER The leading dimension of the array Q. LDQ >= max(1,M). |
[in] | D | D is DOUBLE PRECISION array, dimension (min(M,N)) The diagonal elements of the bidiagonal matrix B. |
[in] | E | E is DOUBLE PRECISION array, dimension (min(M,N)-1) The superdiagonal elements of the bidiagonal matrix B if m >= n, or the subdiagonal elements of B if m < n. |
[in] | PT | PT is COMPLEX*16 array, dimension (LDPT,N) The min(m,n) by n unitary matrix P' in the reduction A = Q * B * P'. |
[in] | LDPT | LDPT is INTEGER The leading dimension of the array PT. LDPT >= max(1,min(M,N)). |
[out] | WORK | WORK is COMPLEX*16 array, dimension (M+N) |
[out] | RWORK | RWORK is DOUBLE PRECISION array, dimension (M) |
[out] | RESID | RESID is DOUBLE PRECISION The test ratio: norm(A - Q * B * P') / ( n * norm(A) * EPS ) |
Definition at line 148 of file zbdt01.f.