![]() |
LAPACK 3.11.0
LAPACK: Linear Algebra PACKage
|
| subroutine dbdt01 | ( | integer | m, |
| integer | n, | ||
| integer | kd, | ||
| double precision, dimension( lda, * ) | a, | ||
| integer | lda, | ||
| double precision, dimension( ldq, * ) | q, | ||
| integer | ldq, | ||
| double precision, dimension( * ) | d, | ||
| double precision, dimension( * ) | e, | ||
| double precision, dimension( ldpt, * ) | pt, | ||
| integer | ldpt, | ||
| double precision, dimension( * ) | work, | ||
| double precision | resid | ||
| ) |
DBDT01
DBDT01 reconstructs a general matrix A from its bidiagonal form
A = Q * B * P**T
where Q (m by min(m,n)) and P**T (min(m,n) by n) are orthogonal
matrices and B is bidiagonal.
The test ratio to test the reduction is
RESID = norm(A - Q * B * P**T) / ( n * norm(A) * EPS )
where 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**T. |
| [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 DOUBLE PRECISION 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 DOUBLE PRECISION array, dimension (LDQ,N)
The m by min(m,n) orthogonal matrix Q in the reduction
A = Q * B * P**T. |
| [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 DOUBLE PRECISION array, dimension (LDPT,N)
The min(m,n) by n orthogonal matrix P**T in the reduction
A = Q * B * P**T. |
| [in] | LDPT | LDPT is INTEGER
The leading dimension of the array PT.
LDPT >= max(1,min(M,N)). |
| [out] | WORK | WORK is DOUBLE PRECISION array, dimension (M+N) |
| [out] | RESID | RESID is DOUBLE PRECISION
The test ratio:
norm(A - Q * B * P**T) / ( n * norm(A) * EPS ) |