74 SUBROUTINE cchkec( THRESH, TSTERR, NIN, NOUT )
91 INTEGER KTREXC, KTRSEN, KTRSNA, KTRSYL, LTREXC, LTRSYL,
92 $ NTESTS, NTREXC, NTRSYL
93 REAL EPS, RTREXC, RTRSYL, SFMIN
96 INTEGER LTRSEN( 3 ), LTRSNA( 3 ), NTRSEN( 3 ),
98 REAL RTRSEN( 3 ), RTRSNA( 3 )
109 path( 1: 1 ) =
'Complex precision'
112 sfmin = slamch(
'S' )
113 WRITE( nout, fmt = 9994 )
114 WRITE( nout, fmt = 9993 )eps, sfmin
115 WRITE( nout, fmt = 9992 )thresh
120 $
CALL cerrec( path, nout )
123 CALL cget35( rtrsyl, ltrsyl, ntrsyl, ktrsyl, nin )
124 IF( rtrsyl.GT.thresh )
THEN
126 WRITE( nout, fmt = 9999 )rtrsyl, ltrsyl, ntrsyl, ktrsyl
129 CALL cget36( 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 cget37( 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 cget38( 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 CTRSYL: RMAX =', e12.3, /
' LMAX = ', i8,
156 $
' NINFO=', i8,
' KNT=', i8 )
157 9998
FORMAT(
' Error in CTREXC: RMAX =', e12.3, /
' LMAX = ', i8,
158 $
' NINFO=', i8,
' KNT=', i8 )
159 9997
FORMAT(
' Error in CTRSNA: RMAX =', 3e12.3, /
' LMAX = ',
160 $ 3i8, ' ninfo=
', 3I8, ' knt=
', I8 )
161 9996 FORMAT( ' error in
ctrsen: rmax =
', 3E12.3, / ' lmax =
',
162 $ 3I8, ' 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
',
168 9993 FORMAT( ' relative machine precision (eps) =
', E16.6,
169 $ / ' safe minimum(sfmin) =
', E16.6, / )
170 9992 FORMAT( ' routines pass computational tests
if test ratio is
',
171 $ 'less than
', F8.2, / / )
subroutine ctrexc(compq, n, t, ldt, q, ldq, ifst, ilst, info)
CTREXC
subroutine ctrsna(job, howmny, select, n, t, ldt, vl, ldvl, vr, ldvr, s, sep, mm, m, work, ldwork, rwork, info)
CTRSNA
subroutine ctrsen(job, compq, select, n, t, ldt, q, ldq, w, m, s, sep, work, lwork, info)
CTRSEN
subroutine ctrsyl(trana, tranb, isgn, m, n, a, lda, b, ldb, c, ldc, scale, info)
CTRSYL