165 SUBROUTINE sget07( TRANS, N, NRHS, A, LDA, B, LDB, X, LDX, XACT,
166 $ ldxact, ferr, chkferr, berr, reslts )
176 INTEGER lda, ldb, ldx, ldxact, n, nrhs
179 REAL a( lda, * ),
b( ldb, * ), berr( * ), ferr( * ),
180 $ reslts( * ),
x( ldx, * ), xact( ldxact, * )
187 parameter( zero = 0.0e+0, one = 1.0e+0 )
191 INTEGER i, imax,
j, k
192 REAL axbi, diff, eps, errbnd, ovfl, tmp, unfl, xnorm
201 INTRINSIC abs, max, min
207 IF( n.LE.0 .OR. nrhs.LE.0 )
THEN
214 unfl =
slamch(
'Safe minimum' )
216 notran =
lsame( trans,
'N' )
226 xnorm = max( abs(
x( imax,
j ) ), unfl )
229 diff = max( diff, abs(
x( i,
j )-xact( i,
j ) ) )
232 IF( xnorm.GT.one )
THEN
234 ELSE IF( diff.LE.ovfl*xnorm )
THEN
242 IF( diff / xnorm.LE.ferr(
j ) )
THEN
243 errbnd = max( errbnd, ( diff / xnorm ) / ferr(
j ) )
256 tmp = abs(
b( i, k ) )
259 tmp = tmp + abs( a( i,
j ) )*abs(
x(
j, k ) )
263 tmp = tmp + abs( a(
j, i ) )*abs(
x(
j, k ) )
269 axbi = min( axbi, tmp )
272 tmp = berr( k ) / ( ( n+1 )*eps+( n+1 )*unfl /
273 $ max( axbi, ( n+1 )*unfl ) )
277 reslts( 2 ) = max( reslts( 2 ), tmp )
LOGICAL function lsame(CA, CB)
LSAME
INTEGER function isamax(N, SX, INCX)
ISAMAX
REAL function slamch(CMACH)
SLAMCH
subroutine sget07(TRANS, N, NRHS, A, LDA, B, LDB, X, LDX, XACT, LDXACT, FERR, CHKFERR, BERR, RESLTS)
SGET07
set ue cd $ADTTMP cat<< EOF > tmp f Program LinearEquations Implicit none Real b(3) integer i
set ue cd $ADTTMP cat<< EOF > tmp f Program LinearEquations Implicit none Real j