CBDT01

   Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd..
   November 2006

Purpose

CBDT01 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.

Arguments

M
(input) INTEGER
The number of rows of the matrices A and Q.
N
(input) INTEGER
The number of columns of the matrices A and P'.
KD
(input) 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.
A
(input) COMPLEX array, dimension (LDA,N)
The m by n matrix A.
LDA
(input) INTEGER
The leading dimension of the array A.  LDA >= max(1,M).
Q
(input) COMPLEX array, dimension (LDQ,N)
The m by min(m,n) unitary matrix Q in the reduction
A = Q * B * P'.
LDQ
(input) INTEGER
The leading dimension of the array Q.  LDQ >= max(1,M).
D
(input) REAL array, dimension (min(M,N))
The diagonal elements of the bidiagonal matrix B.
E
(input) REAL 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.
PT
(input) COMPLEX array, dimension (LDPT,N)
The min(m,n) by n unitary matrix P' in the reduction
A = Q * B * P'.
LDPT
(input) INTEGER
The leading dimension of the array PT.
LDPT >= max(1,min(M,N)).
WORK
(workspace) COMPLEX array, dimension (M+N)
RWORK
(workspace) REAL array, dimension (M)
RESID
(output) REAL
The test ratio:  norm(A - Q * B * P') / ( n * norm(A) * EPS )

Call Graph

Caller Graph