162 SUBROUTINE spot05( UPLO, N, NRHS, A, LDA, B, LDB, X, LDX, XACT,
163 $ LDXACT, FERR, BERR, RESLTS )
171 INTEGER LDA, LDB, LDX, LDXACT, N,
174 REAL A( LDA, * ), B( LDB, * ), BERR( * ), FERR( * ),
175 $ reslts( * ), x( ldx, * ), xact( ldxact, * )
182 parameter( zero = 0.0e+0, one = 1.0e+0 )
187 REAL AXBI, DIFF, EPS, ERRBND, OVFL, TMP, UNFL, XNORM
193 EXTERNAL lsame,
isamax, slamch
202 IF( n.LE.0 .OR. nrhs.LE.0 )
THEN
208 eps = slamch( 'epsilon
' )
209 UNFL = SLAMCH( 'safe minimum
' )
211 UPPER = LSAME( UPLO, 'u
' )
219 IMAX = ISAMAX( N, X( 1, J ), 1 )
220 XNORM = MAX( ABS( X( IMAX, J ) ), UNFL )
223 DIFF = MAX( DIFF, ABS( X( I, J )-XACT( I, J ) ) )
226.GT.
IF( XNORMONE ) THEN
228.LE.
ELSE IF( DIFFOVFL*XNORM ) THEN
236.LE.
IF( DIFF / XNORMFERR( J ) ) THEN
237 ERRBND = MAX( ERRBND, ( DIFF / XNORM ) / FERR( J ) )
249 TMP = ABS( B( I, K ) )
252 TMP = TMP + ABS( A( J, I ) )*ABS( X( J, K ) )
255 TMP = TMP + ABS( A( I, J ) )*ABS( X( J, K ) )
259 TMP = TMP + ABS( A( I, J ) )*ABS( X( J, K ) )
262 TMP = TMP + ABS( A( J, I ) )*ABS( X( J, K ) )
268 AXBI = MIN( AXBI, TMP )
271 TMP = BERR( K ) / ( ( N+1 )*EPS+( N+1 )*UNFL /
272 $ MAX( AXBI, ( N+1 )*UNFL ) )
276 RESLTS( 2 ) = MAX( RESLTS( 2 ), TMP )
subroutine spot05(uplo, n, nrhs, a, lda, b, ldb, x, ldx, xact, ldxact, ferr, berr, reslts)
SPOT05