74 SUBROUTINE zchkec( THRESH, TSTERR, NIN, NOUT )
83 DOUBLE PRECISION THRESH
91 INTEGER KTREXC, KTRSEN, KTRSNA, KTRSYL, LTREXC, LTRSYL,
92 $ NTESTS, NTREXC, NTRSYL
93 DOUBLE PRECISION EPS, RTREXC, RTRSYL, SFMIN
96 INTEGER LTRSEN( 3 ), LTRSNA( 3 ), NTRSEN( 3 ),
98 DOUBLE PRECISION RTRSEN( 3 ), RTRSNA( 3 )
104 DOUBLE PRECISION DLAMCH
109 path( 1: 1 ) =
'Zomplex precision'
112 sfmin = dlamch(
'S' )
113 WRITE( nout, fmt = 9994 )
114 WRITE( nout, fmt = 9993 )eps, sfmin
115 WRITE( nout, fmt = 9992 )thresh
120 $
CALL zerrec( path, nout )
123 CALL zget35( rtrsyl, ltrsyl, ntrsyl, ktrsyl, nin )
124 IF( rtrsyl.GT.thresh )
THEN
126 WRITE( nout, fmt = 9999 )rtrsyl, ltrsyl, ntrsyl, ktrsyl
129 CALL zget36( rtrexc, ltrexc, ntrexc, ktrexc, nin )
130 IF( rtrexc.GT.thresh .OR. ntrexc.GT.0 )
THEN
132 WRITE( nout, fmt = 9998 )rtrexc, ltrexc, ntrexc, ktrexc
135 CALL zget37( rtrsna, ltrsna, ntrsna, ktrsna, nin )
136 IF( rtrsna( 1 ).GT.thresh .OR. rtrsna( 2 ).GT.thresh .OR.
137 $ ntrsna( 1 ).NE.0 .OR. ntrsna( 2 ).NE.0 .OR. ntrsna( 3 ).NE.0 )
140 WRITE( nout, fmt = 9997 )rtrsna, ltrsna, ntrsna, ktrsna
143 CALL zget38( rtrsen, ltrsen, ntrsen, ktrsen, nin )
144 IF( rtrsen( 1 ).GT.thresh .OR. rtrsen( 2 ).GT.thresh .OR.
145 $ ntrsen( 1 ).NE.0 .OR. ntrsen( 2 ).NE.0 .OR. ntrsen( 3 ).NE.0 )
148 WRITE( nout, fmt = 9996 )rtrsen, ltrsen, ntrsen, ktrsen
151 ntests = ktrsyl + ktrexc + ktrsna + ktrsen
153 $
WRITE( nout, fmt = 9995 )path, ntests
155 9999
FORMAT(
' Error in ZTRSYL: RMAX =', d12.3, /
' LMAX = ', i8,
156 $
' NINFO=', i8,
' KNT=', i8 )
157 9998
FORMAT(
' Error in ZTREXC: RMAX =', d12.3, /
' LMAX = ', i8,
158 $
' NINFO=', i8,
' KNT=', i8 )
159 9997
FORMAT(
' Error in ZTRSNA: RMAX =', 3d12.3, /
' LMAX = ', 3i8,
160 $
' NINFO=', 3i8,
' KNT=', i8 )
161 9996
FORMAT(
' Error in ZTRSEN: RMAX =', 3d12.3, /
' LMAX = ', 3i8,
162 $
' NINFO=', 3i8,
' KNT=', i8 )
163 9995
FORMAT( / 1x,
'All tests for ', a3,
164 $
' routines passed the threshold ( ', i6,
' tests run)' )
165 9994
FORMAT(
' Tests of the Nonsymmetric eigenproblem condition',
166 $
' estimation routines', /
' ZTRSYL, ZTREXC, ZTRSNA, ZTRSEN',
168 9993
FORMAT(
' Relative machine precision (EPS) = ', d16.6,
169 $ /
' Safe minimum (SFMIN) = ', d16.6, / )
170 9992
FORMAT(
' Routines pass computational tests if test ratio is ',
171 $
'less than', f8.2, / / )
subroutine zget35(RMAX, LMAX, NINFO, KNT, NIN)
ZGET35
subroutine zget36(RMAX, LMAX, NINFO, KNT, NIN)
ZGET36
subroutine zerrec(PATH, NUNIT)
ZERREC
subroutine zget38(RMAX, LMAX, NINFO, KNT, NIN)
ZGET38
subroutine zget37(RMAX, LMAX, NINFO, KNT, NIN)
ZGET37
subroutine zchkec(THRESH, TSTERR, NIN, NOUT)
ZCHKEC