summaryrefslogtreecommitdiff
path: root/SRC/stgsja.f
diff options
context:
space:
mode:
authorjulie <julielangou@users.noreply.github.com>2011-10-31 22:21:11 +0000
committerjulie <julielangou@users.noreply.github.com>2011-10-31 22:21:11 +0000
commit0d9e213c670ab0e68f17d68251412d53250108e1 (patch)
tree2bcab1c08b84e327b9be345385e2c31e8a26905a /SRC/stgsja.f
parent82901cd3e7bb75c73fc3a17fe7bf922289337f97 (diff)
downloadlapack-0d9e213c670ab0e68f17d68251412d53250108e1.tar.gz
lapack-0d9e213c670ab0e68f17d68251412d53250108e1.tar.bz2
lapack-0d9e213c670ab0e68f17d68251412d53250108e1.zip
Correct Warning detected during Doxygen Generation.
Now each routine should have the correct list of arguments. This allowed to detect and fix problems in parameter description of many routines.
Diffstat (limited to 'SRC/stgsja.f')
-rw-r--r--SRC/stgsja.f143
1 files changed, 108 insertions, 35 deletions
diff --git a/SRC/stgsja.f b/SRC/stgsja.f
index 44c04a9b..7f2f30a0 100644
--- a/SRC/stgsja.f
+++ b/SRC/stgsja.f
@@ -175,52 +175,77 @@
*> The number of columns of the matrices A and B. 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 realOTHERcomputational
-*
-*
-* Further Details
-* ===============
-*>\details \b Further \b Details
+*> \param[in] K
+*> \verbatim
+*> K is INTEGER
+*> \endverbatim
+*>
+*> \param[in] L
+*> \verbatim
+*> L is INTEGER
+*> \endverbatim
*> \verbatim
-* See Further Details.
+*> K and L specify the subblocks in the input matrices A and B:
+*> A23 = A(K+1:MIN(K+L,M),N-L+1:N) and B13 = B(1:L,N-L+1:N)
+*> of A and B, whose GSVD is going to be computed by STGSJA.
+*> See Further Details.
+*> \endverbatim
*>
-*> A (input/output) REAL array, dimension (LDA,N)
+*> \param[in,out] A
+*> \verbatim
+*> A is REAL array, dimension (LDA,N)
*> On entry, the M-by-N matrix A.
*> On exit, A(N-K+1:N,1:MIN(K+L,M) ) contains the triangular
*> matrix R or part of R. See Purpose for details.
+*> \endverbatim
*>
-*> LDA (input) INTEGER
+*> \param[in] LDA
+*> \verbatim
+*> LDA is INTEGER
*> The leading dimension of the array A. LDA >= max(1,M).
+*> \endverbatim
*>
-*> B (input/output) REAL array, dimension (LDB,N)
+*> \param[in,out] B
+*> \verbatim
+*> B is REAL array, dimension (LDB,N)
*> On entry, the P-by-N matrix B.
*> On exit, if necessary, B(M-K+1:L,N+M-K-L+1:N) contains
*> a part of R. See Purpose for details.
+*> \endverbatim
*>
-*> LDB (input) INTEGER
+*> \param[in] LDB
+*> \verbatim
+*> LDB is INTEGER
*> The leading dimension of the array B. LDB >= max(1,P).
+*> \endverbatim
*>
-*> TOLA (input) REAL
-*> TOLB (input) REAL
+*> \param[in] TOLA
+*> \verbatim
+*> TOLA is REAL
+*> \endverbatim
+*>
+*> \param[in] TOLB
+*> \verbatim
+*> TOLB is REAL
+*> \endverbatim
+*> \verbatim
*> TOLA and TOLB are the convergence criteria for the Jacobi-
*> Kogbetliantz iteration procedure. Generally, they are the
*> same as used in the preprocessing step, say
*> TOLA = max(M,N)*norm(A)*MACHEPS,
*> TOLB = max(P,N)*norm(B)*MACHEPS.
+*> \endverbatim
*>
-*> ALPHA (output) REAL array, dimension (N)
-*> BETA (output) REAL array, dimension (N)
+*> \param[out] ALPHA
+*> \verbatim
+*> ALPHA is REAL array, dimension (N)
+*> \endverbatim
+*>
+*> \param[out] BETA
+*> \verbatim
+*> BETA is REAL array, dimension (N)
+*> \endverbatim
+*> \verbatim
*> On exit, ALPHA and BETA contain the generalized singular
*> value pairs of A and B;
*> ALPHA(1:K) = 1,
@@ -234,53 +259,82 @@
*> Furthermore, if K+L < N,
*> ALPHA(K+L+1:N) = 0 and
*> BETA(K+L+1:N) = 0.
+*> \endverbatim
*>
-*> U (input/output) REAL array, dimension (LDU,M)
+*> \param[in,out] U
+*> \verbatim
+*> U is REAL array, dimension (LDU,M)
*> On entry, if JOBU = 'U', U must contain a matrix U1 (usually
*> the orthogonal matrix returned by SGGSVP).
*> On exit,
*> if JOBU = 'I', U contains the orthogonal matrix U;
*> if JOBU = 'U', U contains the product U1*U.
*> If JOBU = 'N', U is not referenced.
+*> \endverbatim
*>
-*> LDU (input) INTEGER
+*> \param[in] LDU
+*> \verbatim
+*> LDU is INTEGER
*> The leading dimension of the array U. LDU >= max(1,M) if
*> JOBU = 'U'; LDU >= 1 otherwise.
+*> \endverbatim
*>
-*> V (input/output) REAL array, dimension (LDV,P)
+*> \param[in,out] V
+*> \verbatim
+*> V is REAL array, dimension (LDV,P)
*> On entry, if JOBV = 'V', V must contain a matrix V1 (usually
*> the orthogonal matrix returned by SGGSVP).
*> On exit,
*> if JOBV = 'I', V contains the orthogonal matrix V;
*> if JOBV = 'V', V contains the product V1*V.
*> If JOBV = 'N', V is not referenced.
+*> \endverbatim
*>
-*> LDV (input) INTEGER
+*> \param[in] LDV
+*> \verbatim
+*> LDV is INTEGER
*> The leading dimension of the array V. LDV >= max(1,P) if
*> JOBV = 'V'; LDV >= 1 otherwise.
+*> \endverbatim
*>
-*> Q (input/output) REAL array, dimension (LDQ,N)
+*> \param[in,out] Q
+*> \verbatim
+*> Q is REAL array, dimension (LDQ,N)
*> On entry, if JOBQ = 'Q', Q must contain a matrix Q1 (usually
*> the orthogonal matrix returned by SGGSVP).
*> On exit,
*> if JOBQ = 'I', Q contains the orthogonal matrix Q;
*> if JOBQ = 'Q', Q contains the product Q1*Q.
*> If JOBQ = 'N', Q is not referenced.
+*> \endverbatim
*>
-*> LDQ (input) INTEGER
+*> \param[in] LDQ
+*> \verbatim
+*> LDQ is INTEGER
*> The leading dimension of the array Q. LDQ >= max(1,N) if
*> JOBQ = 'Q'; LDQ >= 1 otherwise.
+*> \endverbatim
*>
-*> WORK (workspace) REAL array, dimension (2*N)
+*> \param[out] WORK
+*> \verbatim
+*> WORK is REAL array, dimension (2*N)
+*> \endverbatim
*>
-*> NCYCLE (output) INTEGER
+*> \param[out] NCYCLE
+*> \verbatim
+*> NCYCLE is INTEGER
*> The number of cycles required for convergence.
+*> \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.
*> = 1: the procedure does not converge after MAXIT cycles.
+*> \endverbatim
*>
+*> \verbatim
*> Internal Parameters
*> ===================
*>
@@ -288,7 +342,26 @@
*> MAXIT specifies the total loops that the iterative procedure
*> may take. If after MAXIT cycles, the routine fails to
*> converge, we return INFO = 1.
+*> \endverbatim
*>
+*
+* Authors
+* =======
+*
+*> \author Univ. of Tennessee
+*> \author Univ. of California Berkeley
+*> \author Univ. of Colorado Denver
+*> \author NAG Ltd.
+*
+*> \date November 2011
+*
+*> \ingroup realOTHERcomputational
+*
+*
+* Further Details
+* ===============
+*>\details \b Further \b Details
+*> \verbatim
*>
*> STGSJA essentially uses a variant of Kogbetliantz algorithm to reduce
*> min(L,M-K)-by-L triangular (or trapezoidal) matrix A23 and L-by-L