DSPT01

   Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd..
   November 2006

Purpose

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.

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) DOUBLE PRECISION array, dimension (N*(N+1)/2)
The original symmetric matrix A, stored as a packed
triangular matrix.
AFAC
(input) 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.
IPIV
(input) INTEGER array, dimension (N)
The pivot indices from DSPTRF.
C
(workspace) DOUBLE PRECISION array, dimension (LDC,N)
LDC
(integer) INTEGER
The leading dimension of the array C.  LDC >= max(1,N).
RWORK
(workspace) DOUBLE PRECISION array, dimension (N)
RESID
(output) 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 )

Call Graph

Caller Graph