56 SUBROUTINE dchkbk( NIN, NOUT )
71 parameter ( lde = 20 )
73 parameter ( zero = 0.0d0 )
76 INTEGER I, IHI, ILO, INFO, J, KNT, N, NINFO
77 DOUBLE PRECISION EPS, RMAX, SAFMIN, VMAX, X
81 DOUBLE PRECISION E( lde, lde ), EIN( lde, lde ), SCALE( lde )
84 DOUBLE PRECISION DLAMCH
101 safmin = dlamch(
'S' )
105 READ( nin, fmt = * )n, ilo, ihi
109 READ( nin, fmt = * )( scale( i ), i = 1, n )
111 READ( nin, fmt = * )( e( i, j ), j = 1, n )
115 READ( nin, fmt = * )( ein( i, j ), j = 1, n )
119 CALL dgebak(
'B',
'R', n, ilo, ihi, scale, n, e, lde, info )
129 x = abs( e( i, j )-ein( i, j ) ) / eps
130 IF( abs( e( i, j ) ).GT.safmin )
131 $ x = x / abs( e( i, j ) )
132 vmax = max( vmax, x )
136 IF( vmax.GT.rmax )
THEN
145 WRITE( nout, fmt = 9999 )
146 9999
FORMAT( 1x,
'.. test output of DGEBAK .. ' )
148 WRITE( nout, fmt = 9998 )rmax
149 9998
FORMAT( 1x,
'value of largest test error = ', d12.3 )
150 WRITE( nout, fmt = 9997 )lmax( 1 )
151 9997
FORMAT( 1x,
'example number where info is not zero = ', i4 )
152 WRITE( nout, fmt = 9996 )lmax( 2 )
153 9996
FORMAT( 1x,
'example number having largest error = ', i4 )
154 WRITE( nout, fmt = 9995 )ninfo
155 9995
FORMAT( 1x,
'number of examples where info is not 0 = ', i4 )
156 WRITE( nout, fmt = 9994 )knt
157 9994
FORMAT( 1x,
'total number of examples tested = ', i4 )
subroutine dgebak(JOB, SIDE, N, ILO, IHI, SCALE, M, V, LDV, INFO)
DGEBAK
subroutine dchkbk(NIN, NOUT)
DCHKBK