summaryrefslogtreecommitdiff
path: root/SRC/zgebd2.f
diff options
context:
space:
mode:
Diffstat (limited to 'SRC/zgebd2.f')
-rw-r--r--SRC/zgebd2.f91
1 files changed, 66 insertions, 25 deletions
diff --git a/SRC/zgebd2.f b/SRC/zgebd2.f
index c6eda5bb..54c9b4f7 100644
--- a/SRC/zgebd2.f
+++ b/SRC/zgebd2.f
@@ -54,52 +54,93 @@
*> 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) COMPLEX*16 array, dimension (max(M,N))
+*> \param[out] WORK
+*> \verbatim
+*> WORK is COMPLEX*16 array, dimension (max(M,N))
+*> \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: