diff options
Diffstat (limited to 'SRC/zgebrd.f')
-rw-r--r-- | SRC/zgebrd.f | 99 |
1 files changed, 72 insertions, 27 deletions
diff --git a/SRC/zgebrd.f b/SRC/zgebrd.f index f8be2562..f978a8ba 100644 --- a/SRC/zgebrd.f +++ b/SRC/zgebrd.f @@ -55,63 +55,108 @@ *> The number of columns in the matrix A. N >= 0. *> \endverbatim *> -* -* Authors -* ======= -* -*> \author Univ. of Tennessee -*> \author Univ. of California Berkeley -*> \author Univ. of Colorado Denver -*> \author NAG Ltd. -* -*> \date November 2011 -* -*> \ingroup complex16GEcomputational -* -* -* Further Details -* =============== -*>\details \b Further \b Details +*> \param[in,out] A *> \verbatim -* See Further Details. +*> A is COMPLEX*16 array, dimension (LDA,N) +*> On entry, the M-by-N general matrix to be reduced. +*> On exit, +*> if m >= n, the diagonal and the first superdiagonal are +*> overwritten with the upper bidiagonal matrix B; the +*> elements below the diagonal, with the array TAUQ, represent +*> the unitary matrix Q as a product of elementary +*> reflectors, and the elements above the first superdiagonal, +*> with the array TAUP, represent the unitary matrix P as +*> a product of elementary reflectors; +*> if m < n, the diagonal and the first subdiagonal are +*> overwritten with the lower bidiagonal matrix B; the +*> elements below the first subdiagonal, with the array TAUQ, +*> represent the unitary matrix Q as a product of +*> elementary reflectors, and the elements above the diagonal, +*> with the array TAUP, represent the unitary matrix P as +*> a product of elementary reflectors. +*> See Further Details. +*> \endverbatim *> -*> LDA (input) INTEGER +*> \param[in] LDA +*> \verbatim +*> LDA is INTEGER *> The leading dimension of the array A. LDA >= max(1,M). +*> \endverbatim *> -*> D (output) DOUBLE PRECISION array, dimension (min(M,N)) +*> \param[out] D +*> \verbatim +*> D is DOUBLE PRECISION array, dimension (min(M,N)) *> The diagonal elements of the bidiagonal matrix B: *> D(i) = A(i,i). +*> \endverbatim *> -*> E (output) DOUBLE PRECISION array, dimension (min(M,N)-1) +*> \param[out] E +*> \verbatim +*> E is DOUBLE PRECISION array, dimension (min(M,N)-1) *> The off-diagonal elements of the bidiagonal matrix B: *> if m >= n, E(i) = A(i,i+1) for i = 1,2,...,n-1; *> if m < n, E(i) = A(i+1,i) for i = 1,2,...,m-1. +*> \endverbatim *> -*> TAUQ (output) COMPLEX*16 array dimension (min(M,N)) +*> \param[out] TAUQ +*> \verbatim +*> TAUQ is COMPLEX*16 array dimension (min(M,N)) *> The scalar factors of the elementary reflectors which *> represent the unitary matrix Q. See Further Details. +*> \endverbatim *> -*> TAUP (output) COMPLEX*16 array, dimension (min(M,N)) +*> \param[out] TAUP +*> \verbatim +*> TAUP is COMPLEX*16 array, dimension (min(M,N)) *> The scalar factors of the elementary reflectors which *> represent the unitary matrix P. See Further Details. +*> \endverbatim *> -*> WORK (workspace/output) COMPLEX*16 array, dimension (MAX(1,LWORK)) +*> \param[out] WORK +*> \verbatim +*> WORK is COMPLEX*16 array, dimension (MAX(1,LWORK)) *> On exit, if INFO = 0, WORK(1) returns the optimal LWORK. +*> \endverbatim *> -*> LWORK (input) INTEGER +*> \param[in] LWORK +*> \verbatim +*> LWORK is INTEGER *> The length of the array WORK. LWORK >= max(1,M,N). *> For optimum performance LWORK >= (M+N)*NB, where NB *> is the optimal blocksize. -*> +*> \endverbatim +*> \verbatim *> If LWORK = -1, then a workspace query is assumed; the routine *> only calculates the optimal size of the WORK array, returns *> this value as the first entry of the WORK array, and no error *> message related to LWORK is issued by XERBLA. +*> \endverbatim *> -*> INFO (output) INTEGER +*> \param[out] INFO +*> \verbatim +*> INFO is INTEGER *> = 0: successful exit. *> < 0: if INFO = -i, the i-th argument had an illegal value. +*> \endverbatim *> +* +* Authors +* ======= +* +*> \author Univ. of Tennessee +*> \author Univ. of California Berkeley +*> \author Univ. of Colorado Denver +*> \author NAG Ltd. +* +*> \date November 2011 +* +*> \ingroup complex16GEcomputational +* +* +* Further Details +* =============== +*>\details \b Further \b Details +*> \verbatim *> *> The matrices Q and P are represented as products of elementary *> reflectors: |