diff options
author | julie <julielangou@users.noreply.github.com> | 2011-10-06 06:53:11 +0000 |
---|---|---|
committer | julie <julielangou@users.noreply.github.com> | 2011-10-06 06:53:11 +0000 |
commit | e1d39294aee16fa6db9ba079b14442358217db71 (patch) | |
tree | 30e5aa04c1f6596991fda5334f63dfb9b8027849 /TESTING/LIN/zrqt03.f | |
parent | 5fe0466a14e395641f4f8a300ecc9dcb8058081b (diff) | |
download | lapack-e1d39294aee16fa6db9ba079b14442358217db71.tar.gz lapack-e1d39294aee16fa6db9ba079b14442358217db71.tar.bz2 lapack-e1d39294aee16fa6db9ba079b14442358217db71.zip |
Integrating Doxygen in comments
Diffstat (limited to 'TESTING/LIN/zrqt03.f')
-rw-r--r-- | TESTING/LIN/zrqt03.f | 199 |
1 files changed, 140 insertions, 59 deletions
diff --git a/TESTING/LIN/zrqt03.f b/TESTING/LIN/zrqt03.f index 1c9fb22c..2329bbec 100644 --- a/TESTING/LIN/zrqt03.f +++ b/TESTING/LIN/zrqt03.f @@ -1,75 +1,156 @@ - SUBROUTINE ZRQT03( M, N, K, AF, C, CC, Q, LDA, TAU, WORK, LWORK, - $ RWORK, RESULT ) -* -* -- LAPACK test routine (version 3.1) -- -* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. -* November 2006 -* -* .. Scalar Arguments .. - INTEGER K, LDA, LWORK, M, N -* .. -* .. Array Arguments .. - DOUBLE PRECISION RESULT( * ), RWORK( * ) - COMPLEX*16 AF( LDA, * ), C( LDA, * ), CC( LDA, * ), - $ Q( LDA, * ), TAU( * ), WORK( LWORK ) -* .. -* +*> \brief \b ZRQT03 +* +* =========== DOCUMENTATION =========== +* +* Online html documentation available at +* http://www.netlib.org/lapack/explore-html/ +* +* Definition +* ========== +* +* SUBROUTINE ZRQT03( M, N, K, AF, C, CC, Q, LDA, TAU, WORK, LWORK, +* RWORK, RESULT ) +* +* .. Scalar Arguments .. +* INTEGER K, LDA, LWORK, M, N +* .. +* .. Array Arguments .. +* DOUBLE PRECISION RESULT( * ), RWORK( * ) +* COMPLEX*16 AF( LDA, * ), C( LDA, * ), CC( LDA, * ), +* $ Q( LDA, * ), TAU( * ), WORK( LWORK ) +* .. +* * Purpose * ======= * -* ZRQT03 tests ZUNMRQ, which computes Q*C, Q'*C, C*Q or C*Q'. -* -* ZRQT03 compares the results of a call to ZUNMRQ with the results of -* forming Q explicitly by a call to ZUNGRQ and then performing matrix -* multiplication by a call to ZGEMM. +*>\details \b Purpose: +*>\verbatim +*> +*> ZRQT03 tests ZUNMRQ, which computes Q*C, Q'*C, C*Q or C*Q'. +*> +*> ZRQT03 compares the results of a call to ZUNMRQ with the results of +*> forming Q explicitly by a call to ZUNGRQ and then performing matrix +*> multiplication by a call to ZGEMM. +*> +*>\endverbatim * * Arguments * ========= * -* M (input) INTEGER -* The number of rows or columns of the matrix C; C is n-by-m if -* Q is applied from the left, or m-by-n if Q is applied from -* the right. M >= 0. -* -* N (input) INTEGER -* The order of the orthogonal matrix Q. N >= 0. -* -* K (input) INTEGER -* The number of elementary reflectors whose product defines the -* orthogonal matrix Q. N >= K >= 0. -* -* AF (input) COMPLEX*16 array, dimension (LDA,N) -* Details of the RQ factorization of an m-by-n matrix, as -* returned by ZGERQF. See CGERQF for further details. -* -* C (workspace) COMPLEX*16 array, dimension (LDA,N) -* -* CC (workspace) COMPLEX*16 array, dimension (LDA,N) -* -* Q (workspace) COMPLEX*16 array, dimension (LDA,N) +*> \param[in] M +*> \verbatim +*> M is INTEGER +*> The number of rows or columns of the matrix C; C is n-by-m if +*> Q is applied from the left, or m-by-n if Q is applied from +*> the right. M >= 0. +*> \endverbatim +*> +*> \param[in] N +*> \verbatim +*> N is INTEGER +*> The order of the orthogonal matrix Q. N >= 0. +*> \endverbatim +*> +*> \param[in] K +*> \verbatim +*> K is INTEGER +*> The number of elementary reflectors whose product defines the +*> orthogonal matrix Q. N >= K >= 0. +*> \endverbatim +*> +*> \param[in] AF +*> \verbatim +*> AF is COMPLEX*16 array, dimension (LDA,N) +*> Details of the RQ factorization of an m-by-n matrix, as +*> returned by ZGERQF. See CGERQF for further details. +*> \endverbatim +*> +*> \param[out] C +*> \verbatim +*> C is COMPLEX*16 array, dimension (LDA,N) +*> \endverbatim +*> +*> \param[out] CC +*> \verbatim +*> CC is COMPLEX*16 array, dimension (LDA,N) +*> \endverbatim +*> +*> \param[out] Q +*> \verbatim +*> Q is COMPLEX*16 array, dimension (LDA,N) +*> \endverbatim +*> +*> \param[in] LDA +*> \verbatim +*> LDA is INTEGER +*> The leading dimension of the arrays AF, C, CC, and Q. +*> \endverbatim +*> +*> \param[in] TAU +*> \verbatim +*> TAU is COMPLEX*16 array, dimension (min(M,N)) +*> The scalar factors of the elementary reflectors corresponding +*> to the RQ factorization in AF. +*> \endverbatim +*> +*> \param[out] WORK +*> \verbatim +*> WORK is COMPLEX*16 array, dimension (LWORK) +*> \endverbatim +*> +*> \param[in] LWORK +*> \verbatim +*> LWORK is INTEGER +*> The length of WORK. LWORK must be at least M, and should be +*> M*NB, where NB is the blocksize for this environment. +*> \endverbatim +*> +*> \param[out] RWORK +*> \verbatim +*> RWORK is DOUBLE PRECISION array, dimension (M) +*> \endverbatim +*> +*> \param[out] RESULT +*> \verbatim +*> RESULT is DOUBLE PRECISION array, dimension (4) +*> The test ratios compare two techniques for multiplying a +*> random matrix C by an n-by-n orthogonal matrix Q. +*> RESULT(1) = norm( Q*C - Q*C ) / ( N * norm(C) * EPS ) +*> RESULT(2) = norm( C*Q - C*Q ) / ( N * norm(C) * EPS ) +*> RESULT(3) = norm( Q'*C - Q'*C )/ ( N * norm(C) * EPS ) +*> RESULT(4) = norm( C*Q' - C*Q' )/ ( N * norm(C) * EPS ) +*> \endverbatim +*> +* +* Authors +* ======= * -* LDA (input) INTEGER -* The leading dimension of the arrays AF, C, CC, and Q. +*> \author Univ. of Tennessee +*> \author Univ. of California Berkeley +*> \author Univ. of Colorado Denver +*> \author NAG Ltd. * -* TAU (input) COMPLEX*16 array, dimension (min(M,N)) -* The scalar factors of the elementary reflectors corresponding -* to the RQ factorization in AF. +*> \date November 2011 * -* WORK (workspace) COMPLEX*16 array, dimension (LWORK) +*> \ingroup complex16_lin * -* LWORK (input) INTEGER -* The length of WORK. LWORK must be at least M, and should be -* M*NB, where NB is the blocksize for this environment. +* ===================================================================== + SUBROUTINE ZRQT03( M, N, K, AF, C, CC, Q, LDA, TAU, WORK, LWORK, + $ RWORK, RESULT ) * -* RWORK (workspace) DOUBLE PRECISION array, dimension (M) +* -- LAPACK test routine (version 3.1) -- +* -- LAPACK is a software package provided by Univ. of Tennessee, -- +* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..-- +* November 2011 * -* RESULT (output) DOUBLE PRECISION array, dimension (4) -* The test ratios compare two techniques for multiplying a -* random matrix C by an n-by-n orthogonal matrix Q. -* RESULT(1) = norm( Q*C - Q*C ) / ( N * norm(C) * EPS ) -* RESULT(2) = norm( C*Q - C*Q ) / ( N * norm(C) * EPS ) -* RESULT(3) = norm( Q'*C - Q'*C )/ ( N * norm(C) * EPS ) -* RESULT(4) = norm( C*Q' - C*Q' )/ ( N * norm(C) * EPS ) +* .. Scalar Arguments .. + INTEGER K, LDA, LWORK, M, N +* .. +* .. Array Arguments .. + DOUBLE PRECISION RESULT( * ), RWORK( * ) + COMPLEX*16 AF( LDA, * ), C( LDA, * ), CC( LDA, * ), + $ Q( LDA, * ), TAU( * ), WORK( LWORK ) +* .. * * ===================================================================== * |