70 DOUBLE PRECISION ONE, ZERO
71 parameter( nmax = 4, one = 1.0d0, zero = 0.0d0 )
74 INTEGER I, IFST, ILST, INFO, J, M, NT
80 DOUBLE PRECISION A( NMAX, NMAX ), B( NMAX, NMAX ),
81 $ C( NMAX, NMAX ), S( NMAX ), SEP( ),
82 $ ( NMAX ), WORK( NMAX ), WR( NMAX )
93 COMMON / infoc / infot, nout, ok, lerr
94 COMMON / srnamc / srnamt
119 CALL dtrsyl(
'X',
'N', 1, 0, 0, a, 1, b, 1, c, 1, scale, info )
120 CALL chkxer(
'DTRSYL', infot, nout, lerr, ok )
122CALL dtrsyl(
'N',
'X', 1, 0, 0, a, 1, b, 1, c, 1, scale, info )
123 CALL chkxer(
'DTRSYL', infot, nout, lerr, ok )
125 CALL dtrsyl(
'N',
'N', 0, 0, 0, a, 1, b, 1, c, 1, scale, info )
126 CALL chkxer(
'DTRSYL', infot, nout, lerr, ok )
128 CALL dtrsyl(
'N',
'N', 1, -1, 0, a, 1, b, 1, c, 1, scale, info )
129 CALL chkxer(
'DTRSYL', infot, nout, lerr, ok )
131 CALL dtrsyl(
'N',
'N', 1, 0, -1, a, 1, b, 1, c
132 CALL chkxer(
'DTRSYL', infot, nout, lerr, ok )
134 CALL dtrsyl(
'N',
'N', 1, 2, 0, a, 1, b, 1, c, 2, scale, info )
137 CALL dtrsyl(
'N',
'N', 1, 0, 2, a, 1, b, 1, c, 1, scale, info )
140 CALL dtrsyl(
'N', 'n
', 1, 2, 0, A, 2, B, 1, C, 1, SCALE, INFO )
141 CALL CHKXER( 'dtrsyl', INFOT, NOUT, LERR, OK )
150 CALL DTREXC( 'x
', 1, A, 1, B, 1, IFST, ILST, WORK, INFO )
151 CALL CHKXER( 'dtrexc', INFOT, NOUT, LERR, OK )
153 CALL DTREXC( 'n
', -1, A, 1, B, 1, IFST, ILST, WORK, INFO )
154 CALL CHKXER( 'dtrexc', INFOT, NOUT, LERR, OK )
157 CALL DTREXC( 'n
', 2, A, 1, B, 1, IFST, ILST, WORK, INFO )
158 CALL CHKXER( 'dtrexc', INFOT, NOUT, LERR, OK )
160 CALL DTREXC( 'v
', 2, A, 2, B, 1, IFST, ILST, WORK, INFO )
161 CALL CHKXER( 'dtrexc', INFOT, NOUT, LERR, OK )
165 CALL DTREXC( 'v
', 1, A, 1, B, 1, IFST, ILST, WORK, INFO )
166 CALL CHKXER( 'dtrexc', INFOT, NOUT, LERR, OK )
169 CALL DTREXC( 'v
', 1, A, 1, B, 1, IFST, ILST, WORK, INFO )
170 CALL CHKXER( 'dtrexc', INFOT, NOUT, LERR, OK )
174 CALL DTREXC( 'v
', 1, A, 1, B, 1, IFST, ILST, WORK, INFO )
175 CALL CHKXER( 'dtrexc', INFOT, NOUT, LERR, OK )
178 CALL DTREXC( 'v
', 1, A, 1, B, 1, IFST, ILST, WORK, INFO )
179 CALL CHKXER( 'dtrexc', INFOT, NOUT, LERR, OK )
186 CALL DTRSNA( 'x
', 'a
', SEL, 0, A, 1, B, 1, C, 1, S, SEP, 1, M,
187 $ WORK, 1, IWORK, INFO )
188 CALL CHKXER( 'dtrsna', INFOT, NOUT, LERR, OK )
190 CALL DTRSNA( 'b
', 'x
', SEL, 0, A, 1, B, 1, C, 1, S, SEP, 1, M,
191 $ WORK, 1, IWORK, INFO )
192 CALL CHKXER( 'dtrsna', INFOT, NOUT, LERR, OK )
194 CALL DTRSNA( 'b
', 'a
', SEL, -1, A, 1, B, 1, C, 1, S, SEP, 1, M,
195 $ WORK, 1, IWORK, INFO )
196 CALL CHKXER( 'dtrsna', INFOT, NOUT, LERR, OK )
198 CALL DTRSNA( 'v
', 'a
', SEL, 2, A, 1, B, 1, C, 1, S, SEP, 2, M,
199 $ WORK, 2, IWORK, INFO )
200 CALL CHKXER( 'dtrsna', INFOT, NOUT, LERR, OK )
202 CALL DTRSNA( 'b
', 'a
', SEL, 2, A, 2, B, 1, C, 2, S, SEP, 2, M,
203 $ WORK, 2, IWORK, INFO )
204 CALL CHKXER( 'dtrsna', INFOT, NOUT, LERR, OK )
206 CALL DTRSNA( 'b
', 'a
', SEL, 2, A, 2, B, 2, C, 1, S, SEP, 2, M,
207 $ WORK, 2, IWORK, INFO )
208 CALL CHKXER( 'dtrsna', INFOT, NOUT, LERR, OK )
210 CALL DTRSNA( 'b
', 'a
', SEL, 1, A, 1, B, 1, C, 1, S, SEP, 0, M,
211 $ WORK, 1, IWORK, INFO )
212 CALL CHKXER( 'dtrsna', INFOT, NOUT, LERR, OK )
214 CALL DTRSNA( 'b
', 's
', SEL, 2, A, 2, B, 2, C, 2, S, SEP, 1, M,
215 $ WORK, 2, IWORK, INFO )
216 CALL CHKXER( 'dtrsna', INFOT, NOUT, LERR, OK )
218 CALL DTRSNA( 'b
', 'a
', SEL, 2, A, 2, B, 2, C, 2, S, SEP, 2, M,
219 $ WORK, 1, IWORK, INFO )
220 CALL CHKXER( 'dtrsna', INFOT, NOUT, LERR, OK )
228 CALL DTRSEN( 'x',
'N', sel, 0, a, 1, b, 1, wr, wi, m, s( 1 ),
229 $ sep( 1 ), work, 1, iwork, 1, info )
230 CALL chkxer(
'DTRSEN', infot, nout, lerr, ok )
232 CALL dtrsen(
'N',
'X', sel, 0, a, 1, b, 1, wr, wi, m, s( 1 ),
233 $ sep( 1 ), work, 1, iwork, 1, info )
234 CALL chkxer(
'DTRSEN', infot, nout, lerr, ok )
236 CALL dtrsen(
'N',
'N', sel, -1, a, 1, b, 1, wr, wi, m, s( 1 ),
237 $ sep( 1 ), work, 1, iwork, 1, info )
238 CALL chkxer(
'DTRSEN', infot, nout, lerr, ok )
240 CALL dtrsen(
'N',
'N', sel, 2, a, 1, b, 1, wr, wi, m, s( 1 ),
241 $ sep( 1 ), work, 2, iwork, 1, info )
242 CALL chkxer(
'DTRSEN', infot, nout, lerr, ok )
244 CALL dtrsen(
'N',
'V', sel, 2, a, 2, b, 1, wr, wi, m, s( 1 ),
245 $ sep( 1 ), work, 1, iwork, 1, info )
246 CALL chkxer(
'DTRSEN', infot, nout, lerr, ok
248 CALL dtrsen(
'N',
'V', sel, 2, a, 2, b, 2, wr, wi, m, s( 1 ),
249 $ sep( 1 ), work, 0, iwork, 1, info )
250 CALL chkxer(
'DTRSEN', infot, nout, lerr, ok )
252 CALL dtrsen(
'E',
'V', sel, 3, a, 3, b, 3, wr, wi, m, s( 1 ),
253 $ sep( 1 ), work, 1, iwork, 1, info )
254 CALL chkxer(
'DTRSEN', infot, nout, lerr, ok )
256 CALL dtrsen(
'V',
'V', sel, 3, a, 3, b, 3, wr, wi, m, s( 1 ),
257 $ sep( 1 ), work, 3, iwork, 2, info )
258 CALL chkxer(
'DTRSEN', infot, nout, lerr, ok )
260 CALL dtrsen(
'E',
'V', sel, 2, a, 2, b, 2, wr, wi, m, s( 1 ),
261 $ sep( 1 ), work, 1, iwork, 0, info )
262 CALL chkxer(
'DTRSEN', infot, nout, lerr, ok )
264 CALL dtrsen(
'V',
'V', sel, 3, a, 3, b, 3, wr, wi, m, s( 1 ),
265 $ sep( 1 ), work, 4, iwork, 1, info )
266 CALL chkxer(
'DTRSEN', infot, nout, lerr, ok )
272 WRITE( nout, fmt = 9999 )path, nt
274 WRITE( nout, fmt = 9998 )path
278 9999
FORMAT( 1x, a3, ' routines passed
the tests of
the error exits(
',
279 $ I3, ' tests done)
' )
280 9998 FORMAT( ' ***
', A3, ' routines failed
the tests of
the error ex
',