LAPACK 3.12.0
LAPACK: Linear Algebra PACKage
|
subroutine dspt01 | ( | character | uplo, |
integer | n, | ||
double precision, dimension( * ) | a, | ||
double precision, dimension( * ) | afac, | ||
integer, dimension( * ) | ipiv, | ||
double precision, dimension( ldc, * ) | c, | ||
integer | ldc, | ||
double precision, dimension( * ) | rwork, | ||
double precision | resid | ||
) |
DSPT01
DSPT01 reconstructs a symmetric indefinite packed 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.
[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 (N*(N+1)/2) The original symmetric matrix A, stored as a packed triangular matrix. |
[in] | AFAC | AFAC is DOUBLE PRECISION array, dimension (N*(N+1)/2) The factored form of the matrix A, stored as a packed triangular matrix. 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 DSPTRF. |
[in] | IPIV | IPIV is INTEGER array, dimension (N) The pivot indices from DSPTRF. |
[out] | C | C is DOUBLE PRECISION array, dimension (LDC,N) |
[in] | LDC | LDC is INTEGER The leading dimension of the array C. LDC >= max(1,N). |
[out] | RWORK | RWORK is DOUBLE PRECISION array, dimension (N) |
[out] | RESID | RESID is DOUBLE PRECISION If UPLO = 'L', norm(L*D*L' - A) / ( N * norm(A) * EPS ) If UPLO = 'U', norm(U*D*U' - A) / ( N * norm(A) * EPS ) |
Definition at line 109 of file dspt01.f.