105 SUBROUTINE spot01( UPLO, N, A, LDA, AFAC, LDAFAC, RWORK, RESID )
114 INTEGER LDA, LDAFAC, N
118 REAL A( LDA, * ), AFAC( LDAFAC, * ), RWORK( * )
125 parameter( zero = 0.0e+0, one = 1.0e+0 )
133 REAL SDOT, SLAMCH, SLANSY
134 EXTERNAL lsame, sdot, slamch, slansy
153 eps = slamch(
'Epsilon' )
154 anorm = slansy(
'1', uplo, n, a, lda, rwork )
155 IF( anorm.LE.zero )
THEN
162 IF( lsame( uplo,
'U' ) )
THEN
167 t = sdot( k, afac( 1, k ), 1, afac( 1, k ), 1 )
172 CALL strmv(
'Upper',
'Transpose',
'Non-unit', k-1, afac,
173 $ ldafac, afac( 1, k ), 1 )
186 $
CALL ssyr(
'Lower', n-k, one, afac( k+1, k ), 1,
187 $ afac( k+1, k+1 ), ldafac )
192 CALL sscal( n-k+1, t, afac( k, k ), 1 )
199 IF( lsame( uplo,
'U' ) )
THEN
202 afac( i, j ) = afac( i, j ) - a( i, j )
208 afac( i, j ) = afac( i, j ) - a( i, j )
215 resid = slansy(
'1', uplo, n, afac, ldafac, rwork )
217 resid = ( ( resid / real( n ) ) / anorm ) / eps