# cbdt01.f - Man Page

TESTING/EIG/cbdt01.f

## Synopsis

### Functions/Subroutines

subroutine **cbdt01** (m, n, kd, a, lda, q, ldq, d, e, pt, ldpt, work, rwork, resid)**CBDT01**

## Function/Subroutine Documentation

### subroutine cbdt01 (integer m, integer n, integer kd, complex, dimension( lda, * ) a, integer lda, complex, dimension( ldq, * ) q, integer ldq, real, dimension( * ) d, real, dimension( * ) e, complex, dimension( ldpt, * ) pt, integer ldpt, complex, dimension( * ) work, real, dimension( * ) rwork, real resid)

**CBDT01**

**Purpose:**

CBDT01 reconstructs a general matrix A from its bidiagonal form A = Q * B * P**H where Q (m by min(m,n)) and P**H (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 * P**H) / ( n * norm(A) * EPS ) where EPS is the machine precision.

**Parameters***M*M is INTEGER The number of rows of the matrices A and Q.

*N*N is INTEGER The number of columns of the matrices A and P**H.

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

*A*A is COMPLEX array, dimension (LDA,N) The m by n matrix A.

*LDA*LDA is INTEGER The leading dimension of the array A. LDA >= max(1,M).

*Q*Q is COMPLEX array, dimension (LDQ,N) The m by min(m,n) unitary matrix Q in the reduction A = Q * B * P**H.

*LDQ*LDQ is INTEGER The leading dimension of the array Q. LDQ >= max(1,M).

*D*D is REAL array, dimension (min(M,N)) The diagonal elements of the bidiagonal matrix B.

*E*E is 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*PT is COMPLEX array, dimension (LDPT,N) The min(m,n) by n unitary matrix P**H in the reduction A = Q * B * P**H.

*LDPT*LDPT is INTEGER The leading dimension of the array PT. LDPT >= max(1,min(M,N)).

*WORK*WORK is COMPLEX array, dimension (M+N)

*RWORK*RWORK is REAL array, dimension (M)

*RESID*RESID is REAL The test ratio: norm(A - Q * B * P**H) / ( n * norm(A) * EPS )

**Author**Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line **145** of file **cbdt01.f**.

## Author

Generated automatically by Doxygen for LAPACK from the source code.

## Referenced By

The man page cbdt01(3) is an alias of cbdt01.f(3).

Tue Nov 28 2023 12:08:42 Version 3.12.0 LAPACK