summaryrefslogtreecommitdiff
path: root/SRC/zgebrd.f
diff options
context:
space:
mode:
Diffstat (limited to 'SRC/zgebrd.f')
-rw-r--r--SRC/zgebrd.f99
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: