100 SUBROUTINE zget10( M, N, A, LDA, B, LDB, WORK, RWORK, RESULT )
108 INTEGER lda, ldb, m, n
109 DOUBLE PRECISION result
112 DOUBLE PRECISION rwork( * )
113 COMPLEX*16 a( lda, * ),
b( ldb, * ), work( * )
119 DOUBLE PRECISION one, zero
120 parameter( one = 1.0d+0, zero = 0.0d+0 )
124 DOUBLE PRECISION anorm, eps, unfl, wnorm
134 INTRINSIC dble, dcmplx, max, min
140 IF( m.LE.0 .OR. n.LE.0 )
THEN
145 unfl =
dlamch(
'Safe minimum' )
146 eps =
dlamch(
'Precision' )
150 CALL
zcopy( m, a( 1,
j ), 1, work, 1 )
151 CALL
zaxpy( m, dcmplx( -one ),
b( 1,
j ), 1, work, 1 )
152 wnorm = max( wnorm,
dzasum( n, work, 1 ) )
155 anorm = max(
zlange(
'1', m, n, a, lda, rwork ), unfl )
157 IF( anorm.GT.wnorm )
THEN
158 result = ( wnorm / anorm ) / ( m*eps )
160 IF( anorm.LT.one )
THEN
161 result = ( min( wnorm, m*anorm ) / anorm ) / ( m*eps )
163 result = min( wnorm / anorm, dble( m ) ) / ( m*eps )
set ue cd $ADTTMP cat<< EOF > tmp f Program LinearEquations Implicit none Real b(3) integer i
subroutine zcopy(N, ZX, INCX, ZY, INCY)
ZCOPY
subroutine zaxpy(N, ZA, ZX, INCX, ZY, INCY)
ZAXPY
double precision function dzasum(N, ZX, INCX)
DZASUM
subroutine zget10(M, N, A, LDA, B, LDB, WORK, RWORK, RESULT)
ZGET10
double precision function zlange(NORM, M, N, A, LDA, WORK)
ZLANGE returns the value of the 1-norm, Frobenius norm, infinity-norm, or the largest absolute value ...
double precision function dlamch(CMACH)
DLAMCH
set ue cd $ADTTMP cat<< EOF > tmp f Program LinearEquations Implicit none Real j