DTPT01

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

Purpose

DTPT01 computes the residual for a triangular matrix A times its
inverse when A is stored in packed format:
   RESID = norm(A*AINV - I) / ( N * norm(A) * norm(AINV) * EPS ),
where EPS is the machine epsilon.

Arguments

UPLO
(input) CHARACTER*1
Specifies whether the matrix A is upper or lower triangular.
= 'U':  Upper triangular
= 'L':  Lower triangular
DIAG
(input) CHARACTER*1
Specifies whether or not the matrix A is unit triangular.
= 'N':  Non-unit triangular
= 'U':  Unit triangular
N
(input) INTEGER
The order of the matrix A.  N >= 0.
AP
(input) DOUBLE PRECISION array, dimension (N*(N+1)/2)
The original upper or lower triangular matrix A, packed
columnwise in a linear array.  The j-th column of A is stored
in the array AP as follows:
if UPLO = 'U', AP((j-1)*j/2 + i) = A(i,j) for 1<=i<=j;
if UPLO = 'L',
   AP((j-1)*(n-j) + j*(j+1)/2 + i-j) = A(i,j) for j<=i<=n.
AINVP
(input/output) DOUBLE PRECISION array, dimension (N*(N+1)/2)
On entry, the (triangular) inverse of the matrix A, packed
columnwise in a linear array as in AP.
On exit, the contents of AINVP are destroyed.
RCOND
(output) DOUBLE PRECISION
The reciprocal condition number of A, computed as
1/(norm(A) * norm(AINV)).
WORK
(workspace) DOUBLE PRECISION array, dimension (N)
RESID
(output) DOUBLE PRECISION
norm(A*AINV - I) / ( N * norm(A) * norm(AINV) * EPS )

Call Graph

Caller Graph