94 SUBROUTINE dget10( M, N, A, LDA, B, LDB, WORK, RESULT )
102 INTEGER lda, ldb, m, n
103 DOUBLE PRECISION result
106 DOUBLE PRECISION a( lda, * ),
b( ldb, * ), work( * )
112 DOUBLE PRECISION one, zero
113 parameter( one = 1.0d+0, zero = 0.0d+0 )
117 DOUBLE PRECISION anorm, eps, unfl, wnorm
127 INTRINSIC dble, max, min
133 IF( m.LE.0 .OR. n.LE.0 )
THEN
138 unfl =
dlamch(
'Safe minimum' )
139 eps =
dlamch(
'Precision' )
143 CALL
dcopy( m, a( 1,
j ), 1, work, 1 )
144 CALL
daxpy( m, -one,
b( 1,
j ), 1, work, 1 )
145 wnorm = max( wnorm,
dasum( n, work, 1 ) )
148 anorm = max(
dlange(
'1', m, n, a, lda, work ), unfl )
150 IF( anorm.GT.wnorm )
THEN
151 result = ( wnorm / anorm ) / ( m*eps )
153 IF( anorm.LT.one )
THEN
154 result = ( min( wnorm, m*anorm ) / anorm ) / ( m*eps )
156 result = min( wnorm / anorm, dble( m ) ) / ( m*eps )
subroutine dcopy(N, DX, INCX, DY, INCY)
DCOPY
set ue cd $ADTTMP cat<< EOF > tmp f Program LinearEquations Implicit none Real b(3) integer i
DOUBLE PRECISION function dlange(NORM, M, N, A, LDA, WORK)
DLANGE returns the value of the 1-norm, Frobenius norm, infinity-norm, or the largest absolute value ...
subroutine dget10(M, N, A, LDA, B, LDB, WORK, RESULT)
DGET10
set ue cd $ADTTMP cat<< EOF > tmp f Program LinearEquations Implicit none Real j
subroutine daxpy(N, DA, DX, INCX, DY, INCY)
DAXPY
DOUBLE PRECISION function dlamch(CMACH)
DLAMCH
DOUBLE PRECISION function dasum(N, DX, INCX)
DASUM