76 SUBROUTINE zchkec( THRESH, TSTERR, NIN, NOUT )
86 DOUBLE PRECISION thresh
94 INTEGER ktrexc, ktrsen, ktrsna, ktrsyl, ltrexc, ltrsyl,
95 $ ntests, ntrexc, ntrsyl
96 DOUBLE PRECISION eps, rtrexc, rtrsyl, sfmin
99 INTEGER ltrsen( 3 ), ltrsna( 3 ), ntrsen( 3 ),
101 DOUBLE PRECISION rtrsen( 3 ), rtrsna( 3 )
112 path( 1: 1 ) =
'Zomplex precision'
116 WRITE( nout, fmt = 9994 )
117 WRITE( nout, fmt = 9993 )eps, sfmin
118 WRITE( nout, fmt = 9992 )thresh
123 $ CALL
zerrec( path, nout )
126 CALL
zget35( rtrsyl, ltrsyl, ntrsyl, ktrsyl, nin )
127 IF( rtrsyl.GT.thresh )
THEN
129 WRITE( nout, fmt = 9999 )rtrsyl, ltrsyl, ntrsyl, ktrsyl
132 CALL
zget36( rtrexc, ltrexc, ntrexc, ktrexc, nin )
133 IF( rtrexc.GT.thresh .OR. ntrexc.GT.0 )
THEN
135 WRITE( nout, fmt = 9998 )rtrexc, ltrexc, ntrexc, ktrexc
138 CALL
zget37( rtrsna, ltrsna, ntrsna, ktrsna, nin )
139 IF( rtrsna( 1 ).GT.thresh .OR. rtrsna( 2 ).GT.thresh .OR.
140 $ ntrsna( 1 ).NE.0 .OR. ntrsna( 2 ).NE.0 .OR. ntrsna( 3 ).NE.0 )
143 WRITE( nout, fmt = 9997 )rtrsna, ltrsna, ntrsna, ktrsna
146 CALL
zget38( rtrsen, ltrsen, ntrsen, ktrsen, nin )
147 IF( rtrsen( 1 ).GT.thresh .OR. rtrsen( 2 ).GT.thresh .OR.
148 $ ntrsen( 1 ).NE.0 .OR. ntrsen( 2 ).NE.0 .OR. ntrsen( 3 ).NE.0 )
151 WRITE( nout, fmt = 9996 )rtrsen, ltrsen, ntrsen, ktrsen
154 ntests = ktrsyl + ktrexc + ktrsna + ktrsen
156 $
WRITE( nout, fmt = 9995 )path, ntests
158 9999 format(
' Error in ZTRSYL: RMAX =', d12.3, /
' LMAX = ', i8,
159 $
' NINFO=', i8,
' KNT=', i8 )
160 9998 format(
' Error in ZTREXC: RMAX =', d12.3, /
' LMAX = ', i8,
161 $
' NINFO=', i8,
' KNT=', i8 )
162 9997 format(
' Error in ZTRSNA: RMAX =', 3d12.3, /
' LMAX = ', 3i8,
163 $
' NINFO=', 3i8,
' KNT=', i8 )
164 9996 format(
' Error in ZTRSEN: RMAX =', 3d12.3, /
' LMAX = ', 3i8,
165 $
' NINFO=', 3i8,
' KNT=', i8 )
166 9995 format( / 1x,
'All tests for ', a3,
167 $
' routines passed the threshold ( ', i6,
' tests run)' )
168 9994 format(
' Tests of the Nonsymmetric eigenproblem condition',
169 $
' estimation routines', /
' ZTRSYL, ZTREXC, ZTRSNA, ZTRSEN',
171 9993 format(
' Relative machine precision (EPS) = ', d16.6,
172 $ /
' Safe minimum (SFMIN) = ', d16.6, / )
173 9992 format(
' Routines pass computational tests if test ratio is ',
174 $
'less than', f8.2, / / )