diff options
Diffstat (limited to 'TESTING/LIN/ssyt01.f')
-rw-r--r-- | TESTING/LIN/ssyt01.f | 177 |
1 files changed, 126 insertions, 51 deletions
diff --git a/TESTING/LIN/ssyt01.f b/TESTING/LIN/ssyt01.f index 33e2a1ce..7aaeae9e 100644 --- a/TESTING/LIN/ssyt01.f +++ b/TESTING/LIN/ssyt01.f @@ -1,9 +1,133 @@ +*> \brief \b SSYT01 +* +* =========== DOCUMENTATION =========== +* +* Online html documentation available at +* http://www.netlib.org/lapack/explore-html/ +* +* Definition +* ========== +* +* SUBROUTINE SSYT01( UPLO, N, A, LDA, AFAC, LDAFAC, IPIV, C, LDC, +* RWORK, RESID ) +* +* .. Scalar Arguments .. +* CHARACTER UPLO +* INTEGER LDA, LDAFAC, LDC, N +* REAL RESID +* .. +* .. Array Arguments .. +* INTEGER IPIV( * ) +* REAL A( LDA, * ), AFAC( LDAFAC, * ), C( LDC, * ), +* $ RWORK( * ) +* .. +* +* Purpose +* ======= +* +*>\details \b Purpose: +*>\verbatim +*> +*> SSYT01 reconstructs a symmetric indefinite matrix A from its +*> block L*D*L' or U*D*U' factorization and computes the residual +*> norm( C - A ) / ( N * norm(A) * EPS ), +*> where C is the reconstructed matrix and EPS is the machine epsilon. +*> +*>\endverbatim +* +* Arguments +* ========= +* +*> \param[in] UPLO +*> \verbatim +*> UPLO is CHARACTER*1 +*> Specifies whether the upper or lower triangular part of the +*> symmetric matrix A is stored: +*> = 'U': Upper triangular +*> = 'L': Lower triangular +*> \endverbatim +*> +*> \param[in] N +*> \verbatim +*> N is INTEGER +*> The number of rows and columns of the matrix A. N >= 0. +*> \endverbatim +*> +*> \param[in] A +*> \verbatim +*> A is REAL array, dimension (LDA,N) +*> The original symmetric matrix A. +*> \endverbatim +*> +*> \param[in] LDA +*> \verbatim +*> LDA is INTEGER +*> The leading dimension of the array A. LDA >= max(1,N) +*> \endverbatim +*> +*> \param[in] AFAC +*> \verbatim +*> AFAC is REAL array, dimension (LDAFAC,N) +*> The factored form of the matrix A. AFAC contains the block +*> diagonal matrix D and the multipliers used to obtain the +*> factor L or U from the block L*D*L' or U*D*U' factorization +*> as computed by SSYTRF. +*> \endverbatim +*> +*> \param[in] LDAFAC +*> \verbatim +*> LDAFAC is INTEGER +*> The leading dimension of the array AFAC. LDAFAC >= max(1,N). +*> \endverbatim +*> +*> \param[in] IPIV +*> \verbatim +*> IPIV is INTEGER array, dimension (N) +*> The pivot indices from SSYTRF. +*> \endverbatim +*> +*> \param[out] C +*> \verbatim +*> C is REAL array, dimension (LDC,N) +*> \endverbatim +*> \verbatim +*> LDC (integer) INTEGER +*> The leading dimension of the array C. LDC >= max(1,N). +*> \endverbatim +*> +*> \param[out] RWORK +*> \verbatim +*> RWORK is REAL array, dimension (N) +*> \endverbatim +*> +*> \param[out] RESID +*> \verbatim +*> RESID is REAL +*> If UPLO = 'L', norm(L*D*L' - A) / ( N * norm(A) * EPS ) +*> If UPLO = 'U', norm(U*D*U' - A) / ( N * norm(A) * EPS ) +*> \endverbatim +*> +* +* Authors +* ======= +* +*> \author Univ. of Tennessee +*> \author Univ. of California Berkeley +*> \author Univ. of Colorado Denver +*> \author NAG Ltd. +* +*> \date November 2011 +* +*> \ingroup single_lin +* +* ===================================================================== SUBROUTINE SSYT01( UPLO, N, A, LDA, AFAC, LDAFAC, IPIV, C, LDC, $ RWORK, RESID ) * * -- LAPACK test routine (version 3.1) -- -* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. -* November 2006 +* -- LAPACK is a software package provided by Univ. of Tennessee, -- +* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..-- +* November 2011 * * .. Scalar Arguments .. CHARACTER UPLO @@ -16,55 +140,6 @@ $ RWORK( * ) * .. * -* Purpose -* ======= -* -* SSYT01 reconstructs a symmetric indefinite matrix A from its -* block L*D*L' or U*D*U' factorization and computes the residual -* norm( C - A ) / ( N * norm(A) * EPS ), -* where C is the reconstructed matrix and EPS is the machine epsilon. -* -* Arguments -* ========== -* -* UPLO (input) CHARACTER*1 -* Specifies whether the upper or lower triangular part of the -* symmetric matrix A is stored: -* = 'U': Upper triangular -* = 'L': Lower triangular -* -* N (input) INTEGER -* The number of rows and columns of the matrix A. N >= 0. -* -* A (input) REAL array, dimension (LDA,N) -* The original symmetric matrix A. -* -* LDA (input) INTEGER -* The leading dimension of the array A. LDA >= max(1,N) -* -* AFAC (input) REAL array, dimension (LDAFAC,N) -* The factored form of the matrix A. AFAC contains the block -* diagonal matrix D and the multipliers used to obtain the -* factor L or U from the block L*D*L' or U*D*U' factorization -* as computed by SSYTRF. -* -* LDAFAC (input) INTEGER -* The leading dimension of the array AFAC. LDAFAC >= max(1,N). -* -* IPIV (input) INTEGER array, dimension (N) -* The pivot indices from SSYTRF. -* -* C (workspace) REAL array, dimension (LDC,N) -* -* LDC (integer) INTEGER -* The leading dimension of the array C. LDC >= max(1,N). -* -* RWORK (workspace) REAL array, dimension (N) -* -* RESID (output) REAL -* If UPLO = 'L', norm(L*D*L' - A) / ( N * norm(A) * EPS ) -* If UPLO = 'U', norm(U*D*U' - A) / ( N * norm(A) * EPS ) -* * ===================================================================== * * .. Parameters .. |