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/EIG/dstt22.f | |
parent | 5fe0466a14e395641f4f8a300ecc9dcb8058081b (diff) | |
download | lapack-e1d39294aee16fa6db9ba079b14442358217db71.tar.gz lapack-e1d39294aee16fa6db9ba079b14442358217db71.tar.bz2 lapack-e1d39294aee16fa6db9ba079b14442358217db71.zip |
Integrating Doxygen in comments
Diffstat (limited to 'TESTING/EIG/dstt22.f')
-rw-r--r-- | TESTING/EIG/dstt22.f | 207 |
1 files changed, 142 insertions, 65 deletions
diff --git a/TESTING/EIG/dstt22.f b/TESTING/EIG/dstt22.f index b6a6487e..376510f2 100644 --- a/TESTING/EIG/dstt22.f +++ b/TESTING/EIG/dstt22.f @@ -1,81 +1,158 @@ - SUBROUTINE DSTT22( N, M, KBAND, AD, AE, SD, SE, U, LDU, WORK, - $ LDWORK, RESULT ) -* -* -- LAPACK test routine (version 3.1) -- -* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. -* November 2006 -* -* .. Scalar Arguments .. - INTEGER KBAND, LDU, LDWORK, M, N -* .. -* .. Array Arguments .. - DOUBLE PRECISION AD( * ), AE( * ), RESULT( 2 ), SD( * ), - $ SE( * ), U( LDU, * ), WORK( LDWORK, * ) -* .. -* +*> \brief \b DSTT22 +* +* =========== DOCUMENTATION =========== +* +* Online html documentation available at +* http://www.netlib.org/lapack/explore-html/ +* +* Definition +* ========== +* +* SUBROUTINE DSTT22( N, M, KBAND, AD, AE, SD, SE, U, LDU, WORK, +* LDWORK, RESULT ) +* +* .. Scalar Arguments .. +* INTEGER KBAND, LDU, LDWORK, M, N +* .. +* .. Array Arguments .. +* DOUBLE PRECISION AD( * ), AE( * ), RESULT( 2 ), SD( * ), +* $ SE( * ), U( LDU, * ), WORK( LDWORK, * ) +* .. +* * Purpose * ======= * -* DSTT22 checks a set of M eigenvalues and eigenvectors, -* -* A U = U S -* -* where A is symmetric tridiagonal, the columns of U are orthogonal, -* and S is diagonal (if KBAND=0) or symmetric tridiagonal (if KBAND=1). -* Two tests are performed: -* -* RESULT(1) = | U' A U - S | / ( |A| m ulp ) -* -* RESULT(2) = | I - U'U | / ( m ulp ) +*>\details \b Purpose: +*>\verbatim +*> +*> DSTT22 checks a set of M eigenvalues and eigenvectors, +*> +*> A U = U S +*> +*> where A is symmetric tridiagonal, the columns of U are orthogonal, +*> and S is diagonal (if KBAND=0) or symmetric tridiagonal (if KBAND=1). +*> Two tests are performed: +*> +*> RESULT(1) = | U' A U - S | / ( |A| m ulp ) +*> +*> RESULT(2) = | I - U'U | / ( m ulp ) +*> +*>\endverbatim * * Arguments * ========= * -* N (input) INTEGER -* The size of the matrix. If it is zero, DSTT22 does nothing. -* It must be at least zero. -* -* M (input) INTEGER -* The number of eigenpairs to check. If it is zero, DSTT22 -* does nothing. It must be at least zero. -* -* KBAND (input) INTEGER -* The bandwidth of the matrix S. It may only be zero or one. -* If zero, then S is diagonal, and SE is not referenced. If -* one, then S is symmetric tri-diagonal. -* -* AD (input) DOUBLE PRECISION array, dimension (N) -* The diagonal of the original (unfactored) matrix A. A is -* assumed to be symmetric tridiagonal. -* -* AE (input) DOUBLE PRECISION array, dimension (N) -* The off-diagonal of the original (unfactored) matrix A. A -* is assumed to be symmetric tridiagonal. AE(1) is ignored, -* AE(2) is the (1,2) and (2,1) element, etc. -* -* SD (input) DOUBLE PRECISION array, dimension (N) -* The diagonal of the (symmetric tri-) diagonal matrix S. +*> \param[in] N +*> \verbatim +*> N is INTEGER +*> The size of the matrix. If it is zero, DSTT22 does nothing. +*> It must be at least zero. +*> \endverbatim +*> +*> \param[in] M +*> \verbatim +*> M is INTEGER +*> The number of eigenpairs to check. If it is zero, DSTT22 +*> does nothing. It must be at least zero. +*> \endverbatim +*> +*> \param[in] KBAND +*> \verbatim +*> KBAND is INTEGER +*> The bandwidth of the matrix S. It may only be zero or one. +*> If zero, then S is diagonal, and SE is not referenced. If +*> one, then S is symmetric tri-diagonal. +*> \endverbatim +*> +*> \param[in] AD +*> \verbatim +*> AD is DOUBLE PRECISION array, dimension (N) +*> The diagonal of the original (unfactored) matrix A. A is +*> assumed to be symmetric tridiagonal. +*> \endverbatim +*> +*> \param[in] AE +*> \verbatim +*> AE is DOUBLE PRECISION array, dimension (N) +*> The off-diagonal of the original (unfactored) matrix A. A +*> is assumed to be symmetric tridiagonal. AE(1) is ignored, +*> AE(2) is the (1,2) and (2,1) element, etc. +*> \endverbatim +*> +*> \param[in] SD +*> \verbatim +*> SD is DOUBLE PRECISION array, dimension (N) +*> The diagonal of the (symmetric tri-) diagonal matrix S. +*> \endverbatim +*> +*> \param[in] SE +*> \verbatim +*> SE is DOUBLE PRECISION array, dimension (N) +*> The off-diagonal of the (symmetric tri-) diagonal matrix S. +*> Not referenced if KBSND=0. If KBAND=1, then AE(1) is +*> ignored, SE(2) is the (1,2) and (2,1) element, etc. +*> \endverbatim +*> +*> \param[in] U +*> \verbatim +*> U is DOUBLE PRECISION array, dimension (LDU, N) +*> The orthogonal matrix in the decomposition. +*> \endverbatim +*> +*> \param[in] LDU +*> \verbatim +*> LDU is INTEGER +*> The leading dimension of U. LDU must be at least N. +*> \endverbatim +*> +*> \param[out] WORK +*> \verbatim +*> WORK is DOUBLE PRECISION array, dimension (LDWORK, M+1) +*> \endverbatim +*> +*> \param[in] LDWORK +*> \verbatim +*> LDWORK is INTEGER +*> The leading dimension of WORK. LDWORK must be at least +*> max(1,M). +*> \endverbatim +*> +*> \param[out] RESULT +*> \verbatim +*> RESULT is DOUBLE PRECISION array, dimension (2) +*> The values computed by the two tests described above. The +*> values are currently limited to 1/ulp, to avoid overflow. +*> \endverbatim +*> +* +* Authors +* ======= * -* SE (input) DOUBLE PRECISION array, dimension (N) -* The off-diagonal of the (symmetric tri-) diagonal matrix S. -* Not referenced if KBSND=0. If KBAND=1, then AE(1) is -* ignored, SE(2) is the (1,2) and (2,1) element, etc. +*> \author Univ. of Tennessee +*> \author Univ. of California Berkeley +*> \author Univ. of Colorado Denver +*> \author NAG Ltd. * -* U (input) DOUBLE PRECISION array, dimension (LDU, N) -* The orthogonal matrix in the decomposition. +*> \date November 2011 * -* LDU (input) INTEGER -* The leading dimension of U. LDU must be at least N. +*> \ingroup double_eig * -* WORK (workspace) DOUBLE PRECISION array, dimension (LDWORK, M+1) +* ===================================================================== + SUBROUTINE DSTT22( N, M, KBAND, AD, AE, SD, SE, U, LDU, WORK, + $ LDWORK, RESULT ) * -* LDWORK (input) INTEGER -* The leading dimension of WORK. LDWORK must be at least -* max(1,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 (2) -* The values computed by the two tests described above. The -* values are currently limited to 1/ulp, to avoid overflow. +* .. Scalar Arguments .. + INTEGER KBAND, LDU, LDWORK, M, N +* .. +* .. Array Arguments .. + DOUBLE PRECISION AD( * ), AE( * ), RESULT( 2 ), SD( * ), + $ SE( * ), U( LDU, * ), WORK( LDWORK, * ) +* .. * * ===================================================================== * |