LAPACK 3.12.0
LAPACK: Linear Algebra PACKage
|
subroutine dpot03 | ( | character | uplo, |
integer | n, | ||
double precision, dimension( lda, * ) | a, | ||
integer | lda, | ||
double precision, dimension( ldainv, * ) | ainv, | ||
integer | ldainv, | ||
double precision, dimension( ldwork, * ) | work, | ||
integer | ldwork, | ||
double precision, dimension( * ) | rwork, | ||
double precision | rcond, | ||
double precision | resid | ||
) |
DPOT03
DPOT03 computes the residual for a symmetric matrix times its inverse: norm( I - A*AINV ) / ( N * norm(A) * norm(AINV) * EPS ), where EPS is the machine epsilon.
[in] | UPLO | 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 |
[in] | N | N is INTEGER The number of rows and columns of the matrix A. N >= 0. |
[in] | A | A is DOUBLE PRECISION array, dimension (LDA,N) The original symmetric matrix A. |
[in] | LDA | LDA is INTEGER The leading dimension of the array A. LDA >= max(1,N) |
[in,out] | AINV | AINV is DOUBLE PRECISION array, dimension (LDAINV,N) On entry, the inverse of the matrix A, stored as a symmetric matrix in the same format as A. In this version, AINV is expanded into a full matrix and multiplied by A, so the opposing triangle of AINV will be changed; i.e., if the upper triangular part of AINV is stored, the lower triangular part will be used as work space. |
[in] | LDAINV | LDAINV is INTEGER The leading dimension of the array AINV. LDAINV >= max(1,N). |
[out] | WORK | WORK is DOUBLE PRECISION array, dimension (LDWORK,N) |
[in] | LDWORK | LDWORK is INTEGER The leading dimension of the array WORK. LDWORK >= max(1,N). |
[out] | RWORK | RWORK is DOUBLE PRECISION array, dimension (N) |
[out] | RCOND | RCOND is DOUBLE PRECISION The reciprocal of the condition number of A, computed as ( 1/norm(A) ) / norm(AINV). |
[out] | RESID | RESID is DOUBLE PRECISION norm(I - A*AINV) / ( N * norm(A) * norm(AINV) * EPS ) |
Definition at line 123 of file dpot03.f.