114 SUBROUTINE zptt02( UPLO, N, NRHS, D, E, X, LDX, B, LDB, RESID )
122 INTEGER LDB, LDX, N, NRHS
123 DOUBLE PRECISION RESID
126 DOUBLE PRECISION D( * )
127 COMPLEX*16 ( LDB, * ), E( * ), X( LDX, * )
133 DOUBLE PRECISION ONE, ZERO
134 parameter( one = 1.0d+0, zero = 0.0d+0 )
138 DOUBLE PRECISION ANORM, BNORM, EPS, XNORM
141 DOUBLE PRECISION DLAMCH, DZASUM,
142 EXTERNAL dlamch, dzasum,
zlanht
161 anorm =
zlanht(
'1', n, d, e )
165 eps = dlamch(
'Epsilon' )
166 IF( anorm.LE.zero )
THEN
173 CALL zlaptm( uplo, n, nrhs, -one, d, e, x, ldx, one, b, ldb )
180 bnorm = dzasum( n, b( 1, j ), 1 )
181 xnorm = dzasum( n, x( 1, j ), 1 )
182 IF( xnorm.LE.zero )
THEN
185 resid =
max( resid, ( ( bnorm / anorm ) / xnorm ) / eps )
double precision function zlanht(norm, n, d, e)
ZLANHT returns the value of the 1-norm, or the Frobenius norm, or the infinity norm,...
subroutine zlaptm(uplo, n, nrhs, alpha, d, e, x, ldx, beta, b, ldb)
ZLAPTM
subroutine zptt02(uplo, n, nrhs, d, e, x, ldx, b, ldb, resid)
ZPTT02