LAPACK 3.12.0
LAPACK: Linear Algebra PACKage
Loading...
Searching...
No Matches
zerrsyx.f
Go to the documentation of this file.
1*> \brief \b ZERRSYX
2*
3* =========== DOCUMENTATION ===========
4*
5* Online html documentation available at
6* http://www.netlib.org/lapack/explore-html/
7*
8* Definition:
9* ===========
10*
11* SUBROUTINE ZERRSY( PATH, NUNIT )
12*
13* .. Scalar Arguments ..
14* CHARACTER*3 PATH
15* INTEGER NUNIT
16* ..
17*
18*
19*> \par Purpose:
20* =============
21*>
22*> \verbatim
23*>
24*> ZERRSY tests the error exits for the COMPLEX*16 routines
25*> for symmetric indefinite matrices.
26*>
27*> Note that this file is used only when the XBLAS are available,
28*> otherwise zerrsy.f defines this subroutine.
29*> \endverbatim
30*
31* Arguments:
32* ==========
33*
34*> \param[in] PATH
35*> \verbatim
36*> PATH is CHARACTER*3
37*> The LAPACK path name for the routines to be tested.
38*> \endverbatim
39*>
40*> \param[in] NUNIT
41*> \verbatim
42*> NUNIT is INTEGER
43*> The unit number for output.
44*> \endverbatim
45*
46* Authors:
47* ========
48*
49*> \author Univ. of Tennessee
50*> \author Univ. of California Berkeley
51*> \author Univ. of Colorado Denver
52*> \author NAG Ltd.
53*
54*> \ingroup complex16_lin
55*
56* =====================================================================
57 SUBROUTINE zerrsy( PATH, NUNIT )
58*
59* -- LAPACK test routine --
60* -- LAPACK is a software package provided by Univ. of Tennessee, --
61* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
62*
63* .. Scalar Arguments ..
64 CHARACTER*3 PATH
65 INTEGER NUNIT
66* ..
67*
68* =====================================================================
69*
70* .. Parameters ..
71 INTEGER NMAX
72 parameter( nmax = 4 )
73* ..
74* .. Local Scalars ..
75 CHARACTER EQ
76 CHARACTER*2 C2
77 INTEGER I, INFO, J, N_ERR_BNDS, NPARAMS
78 DOUBLE PRECISION ANRM, RCOND, BERR
79* ..
80* .. Local Arrays ..
81 INTEGER IP( NMAX )
82 DOUBLE PRECISION R( NMAX ), R1( NMAX ), R2( NMAX ),
83 $ S( NMAX ), ERR_BNDS_N( NMAX, 3 ),
84 $ ERR_BNDS_C( NMAX, 3 ), PARAMS( 1 )
85 COMPLEX*16 A( NMAX, NMAX ), AF( NMAX, NMAX ), B( NMAX ),
86 $ E( NMAX ), W( 2*NMAX ), X( NMAX )
87* ..
88* .. External Functions ..
89 LOGICAL LSAMEN
90 EXTERNAL lsamen
91* ..
92* .. External Subroutines ..
93 EXTERNAL alaesm, chkxer, zspcon, zsprfs, zsptrf, zsptri,
99* ..
100* .. Scalars in Common ..
101 LOGICAL LERR, OK
102 CHARACTER*32 SRNAMT
103 INTEGER INFOT, NOUT
104* ..
105* .. Common blocks ..
106 COMMON / infoc / infot, nout, ok, lerr
107 COMMON / srnamc / srnamt
108* ..
109* .. Intrinsic Functions ..
110 INTRINSIC dble, dcmplx
111* ..
112* .. Executable Statements ..
113*
114 nout = nunit
115 WRITE( nout, fmt = * )
116 c2 = path( 2: 3 )
117*
118* Set the variables to innocuous values.
119*
120 DO 20 j = 1, nmax
121 DO 10 i = 1, nmax
122 a( i, j ) = dcmplx( 1.d0 / dble( i+j ),
123 $ -1.d0 / dble( i+j ) )
124 af( i, j ) = dcmplx( 1.d0 / dble( i+j ),
125 $ -1.d0 / dble( i+j ) )
126 10 CONTINUE
127 b( j ) = 0.d0
128 e( j ) = 0.d0
129 r1( j ) = 0.d0
130 r2( j ) = 0.d0
131 w( j ) = 0.d0
132 x( j ) = 0.d0
133 s( j ) = 0.d0
134 ip( j ) = j
135 20 CONTINUE
136 anrm = 1.0d0
137 ok = .true.
138*
139 IF( lsamen( 2, c2, 'SY' ) ) THEN
140*
141* Test error exits of the routines that use factorization
142* of a symmetric indefinite matrix with partial
143* (Bunch-Kaufman) diagonal pivoting method.
144*
145* ZSYTRF
146*
147 srnamt = 'ZSYTRF'
148 infot = 1
149 CALL zsytrf( '/', 0, a, 1, ip, w, 1, info )
150 CALL chkxer( 'ZSYTRF', infot, nout, lerr, ok )
151 infot = 2
152 CALL zsytrf( 'U', -1, a, 1, ip, w, 1, info )
153 CALL chkxer( 'ZSYTRF', infot, nout, lerr, ok )
154 infot = 4
155 CALL zsytrf( 'U', 2, a, 1, ip, w, 4, info )
156 CALL chkxer( 'ZSYTRF', infot, nout, lerr, ok )
157 infot = 7
158 CALL zsytrf( 'U', 0, a, 1, ip, w, 0, info )
159 CALL chkxer( 'ZSYTRF', infot, nout, lerr, ok )
160 infot = 7
161 CALL zsytrf( 'U', 0, a, 1, ip, w, -2, info )
162 CALL chkxer( 'ZSYTRF', infot, nout, lerr, ok )
163*
164* ZSYTF2
165*
166 srnamt = 'ZSYTF2'
167 infot = 1
168 CALL zsytf2( '/', 0, a, 1, ip, info )
169 CALL chkxer( 'ZSYTF2', infot, nout, lerr, ok )
170 infot = 2
171 CALL zsytf2( 'U', -1, a, 1, ip, info )
172 CALL chkxer( 'ZSYTF2', infot, nout, lerr, ok )
173 infot = 4
174 CALL zsytf2( 'U', 2, a, 1, ip, info )
175 CALL chkxer( 'ZSYTF2', infot, nout, lerr, ok )
176*
177* ZSYTRI
178*
179 srnamt = 'ZSYTRI'
180 infot = 1
181 CALL zsytri( '/', 0, a, 1, ip, w, info )
182 CALL chkxer( 'ZSYTRI', infot, nout, lerr, ok )
183 infot = 2
184 CALL zsytri( 'U', -1, a, 1, ip, w, info )
185 CALL chkxer( 'ZSYTRI', infot, nout, lerr, ok )
186 infot = 4
187 CALL zsytri( 'U', 2, a, 1, ip, w, info )
188 CALL chkxer( 'ZSYTRI', infot, nout, lerr, ok )
189*
190* ZSYTRI2
191*
192 srnamt = 'ZSYTRI2'
193 infot = 1
194 CALL zsytri2( '/', 0, a, 1, ip, w, 1, info )
195 CALL chkxer( 'ZSYTRI2', infot, nout, lerr, ok )
196 infot = 2
197 CALL zsytri2( 'U', -1, a, 1, ip, w, 1, info )
198 CALL chkxer( 'ZSYTRI2', infot, nout, lerr, ok )
199 infot = 4
200 CALL zsytri2( 'U', 2, a, 1, ip, w, 1, info )
201 CALL chkxer( 'ZSYTRI2', infot, nout, lerr, ok )
202*
203* ZSYTRI2X
204*
205 srnamt = 'ZSYTRI2X'
206 infot = 1
207 CALL zsytri2x( '/', 0, a, 1, ip, w, 1, info )
208 CALL chkxer( 'ZSYTRI2X', infot, nout, lerr, ok )
209 infot = 2
210 CALL zsytri2x( 'U', -1, a, 1, ip, w, 1, info )
211 CALL chkxer( 'ZSYTRI2X', infot, nout, lerr, ok )
212 infot = 4
213 CALL zsytri2x( 'U', 2, a, 1, ip, w, 1, info )
214 CALL chkxer( 'ZSYTRI2X', infot, nout, lerr, ok )
215*
216* ZSYTRS
217*
218 srnamt = 'ZSYTRS'
219 infot = 1
220 CALL zsytrs( '/', 0, 0, a, 1, ip, b, 1, info )
221 CALL chkxer( 'ZSYTRS', infot, nout, lerr, ok )
222 infot = 2
223 CALL zsytrs( 'U', -1, 0, a, 1, ip, b, 1, info )
224 CALL chkxer( 'ZSYTRS', infot, nout, lerr, ok )
225 infot = 3
226 CALL zsytrs( 'U', 0, -1, a, 1, ip, b, 1, info )
227 CALL chkxer( 'ZSYTRS', infot, nout, lerr, ok )
228 infot = 5
229 CALL zsytrs( 'U', 2, 1, a, 1, ip, b, 2, info )
230 CALL chkxer( 'ZSYTRS', infot, nout, lerr, ok )
231 infot = 8
232 CALL zsytrs( 'U', 2, 1, a, 2, ip, b, 1, info )
233 CALL chkxer( 'ZSYTRS', infot, nout, lerr, ok )
234*
235* ZSYRFS
236*
237 srnamt = 'ZSYRFS'
238 infot = 1
239 CALL zsyrfs( '/', 0, 0, a, 1, af, 1, ip, b, 1, x, 1, r1, r2, w,
240 $ r, info )
241 CALL chkxer( 'ZSYRFS', infot, nout, lerr, ok )
242 infot = 2
243 CALL zsyrfs( 'U', -1, 0, a, 1, af, 1, ip, b, 1, x, 1, r1, r2,
244 $ w, r, info )
245 CALL chkxer( 'ZSYRFS', infot, nout, lerr, ok )
246 infot = 3
247 CALL zsyrfs( 'U', 0, -1, a, 1, af, 1, ip, b, 1, x, 1, r1, r2,
248 $ w, r, info )
249 CALL chkxer( 'ZSYRFS', infot, nout, lerr, ok )
250 infot = 5
251 CALL zsyrfs( 'U', 2, 1, a, 1, af, 2, ip, b, 2, x, 2, r1, r2, w,
252 $ r, info )
253 CALL chkxer( 'ZSYRFS', infot, nout, lerr, ok )
254 infot = 7
255 CALL zsyrfs( 'U', 2, 1, a, 2, af, 1, ip, b, 2, x, 2, r1, r2, w,
256 $ r, info )
257 CALL chkxer( 'ZSYRFS', infot, nout, lerr, ok )
258 infot = 10
259 CALL zsyrfs( 'U', 2, 1, a, 2, af, 2, ip, b, 1, x, 2, r1, r2, w,
260 $ r, info )
261 CALL chkxer( 'ZSYRFS', infot, nout, lerr, ok )
262 infot = 12
263 CALL zsyrfs( 'U', 2, 1, a, 2, af, 2, ip, b, 2, x, 1, r1, r2, w,
264 $ r, info )
265 CALL chkxer( 'ZSYRFS', infot, nout, lerr, ok )
266*
267* ZSYRFSX
268*
269 n_err_bnds = 3
270 nparams = 0
271 srnamt = 'ZSYRFSX'
272 infot = 1
273 CALL zsyrfsx( '/', eq, 0, 0, a, 1, af, 1, ip, s, b, 1, x, 1,
274 $ rcond, berr, n_err_bnds, err_bnds_n, err_bnds_c, nparams,
275 $ params, w, r, info )
276 CALL chkxer( 'ZSYRFSX', infot, nout, lerr, ok )
277 infot = 2
278 CALL zsyrfsx( 'U', eq, -1, 0, a, 1, af, 1, ip, s, b, 1, x, 1,
279 $ rcond, berr, n_err_bnds, err_bnds_n, err_bnds_c, nparams,
280 $ params, w, r, info )
281 CALL chkxer( 'ZSYRFSX', infot, nout, lerr, ok )
282 eq = 'N'
283 infot = 3
284 CALL zsyrfsx( 'U', eq, -1, 0, a, 1, af, 1, ip, s, b, 1, x, 1,
285 $ rcond, berr, n_err_bnds, err_bnds_n, err_bnds_c, nparams,
286 $ params, w, r, info )
287 CALL chkxer( 'ZSYRFSX', infot, nout, lerr, ok )
288 infot = 4
289 CALL zsyrfsx( 'U', eq, 0, -1, a, 1, af, 1, ip, s, b, 1, x, 1,
290 $ rcond, berr, n_err_bnds, err_bnds_n, err_bnds_c, nparams,
291 $ params, w, r, info )
292 CALL chkxer( 'ZSYRFSX', infot, nout, lerr, ok )
293 infot = 6
294 CALL zsyrfsx( 'U', eq, 2, 1, a, 1, af, 2, ip, s, b, 2, x, 2,
295 $ rcond, berr, n_err_bnds, err_bnds_n, err_bnds_c, nparams,
296 $ params, w, r, info )
297 CALL chkxer( 'ZSYRFSX', infot, nout, lerr, ok )
298 infot = 8
299 CALL zsyrfsx( 'U', eq, 2, 1, a, 2, af, 1, ip, s, b, 2, x, 2,
300 $ rcond, berr, n_err_bnds, err_bnds_n, err_bnds_c, nparams,
301 $ params, w, r, info )
302 CALL chkxer( 'ZSYRFSX', infot, nout, lerr, ok )
303 infot = 12
304 CALL zsyrfsx( 'U', eq, 2, 1, a, 2, af, 2, ip, s, b, 1, x, 2,
305 $ rcond, berr, n_err_bnds, err_bnds_n, err_bnds_c, nparams,
306 $ params, w, r, info )
307 CALL chkxer( 'ZSYRFSX', infot, nout, lerr, ok )
308 infot = 14
309 CALL zsyrfsx( 'U', eq, 2, 1, a, 2, af, 2, ip, s, b, 2, x, 1,
310 $ rcond, berr, n_err_bnds, err_bnds_n, err_bnds_c, nparams,
311 $ params, w, r, info )
312 CALL chkxer( 'ZSYRFSX', infot, nout, lerr, ok )
313*
314* ZSYCON
315*
316 srnamt = 'ZSYCON'
317 infot = 1
318 CALL zsycon( '/', 0, a, 1, ip, anrm, rcond, w, info )
319 CALL chkxer( 'ZSYCON', infot, nout, lerr, ok )
320 infot = 2
321 CALL zsycon( 'U', -1, a, 1, ip, anrm, rcond, w, info )
322 CALL chkxer( 'ZSYCON', infot, nout, lerr, ok )
323 infot = 4
324 CALL zsycon( 'U', 2, a, 1, ip, anrm, rcond, w, info )
325 CALL chkxer( 'ZSYCON', infot, nout, lerr, ok )
326 infot = 6
327 CALL zsycon( 'U', 1, a, 1, ip, -anrm, rcond, w, info )
328 CALL chkxer( 'ZSYCON', infot, nout, lerr, ok )
329*
330 ELSE IF( lsamen( 2, c2, 'SR' ) ) THEN
331*
332* Test error exits of the routines that use factorization
333* of a symmetric indefinite matrix with rook
334* (bounded Bunch-Kaufman) diagonal pivoting method.
335*
336* ZSYTRF_ROOK
337*
338 srnamt = 'ZSYTRF_ROOK'
339 infot = 1
340 CALL zsytrf_rook( '/', 0, a, 1, ip, w, 1, info )
341 CALL chkxer( 'ZSYTRF_ROOK', infot, nout, lerr, ok )
342 infot = 2
343 CALL zsytrf_rook( 'U', -1, a, 1, ip, w, 1, info )
344 CALL chkxer( 'ZSYTRF_ROOK', infot, nout, lerr, ok )
345 infot = 4
346 CALL zsytrf_rook( 'U', 2, a, 1, ip, w, 4, info )
347 CALL chkxer( 'ZSYTRF_ROOK', infot, nout, lerr, ok )
348 infot = 7
349 CALL zsytrf_rook( 'U', 0, a, 1, ip, w, 0, info )
350 CALL chkxer( 'ZSYTRF_ROOK', infot, nout, lerr, ok )
351 infot = 7
352 CALL zsytrf_rook( 'U', 0, a, 1, ip, w, -2, info )
353 CALL chkxer( 'ZSYTRF_ROOK', infot, nout, lerr, ok )
354*
355* ZSYTF2_ROOK
356*
357 srnamt = 'ZSYTF2_ROOK'
358 infot = 1
359 CALL zsytf2_rook( '/', 0, a, 1, ip, info )
360 CALL chkxer( 'ZSYTF2_ROOK', infot, nout, lerr, ok )
361 infot = 2
362 CALL zsytf2_rook( 'U', -1, a, 1, ip, info )
363 CALL chkxer( 'ZSYTF2_ROOK', infot, nout, lerr, ok )
364 infot = 4
365 CALL zsytf2_rook( 'U', 2, a, 1, ip, info )
366 CALL chkxer( 'ZSYTF2_ROOK', infot, nout, lerr, ok )
367*
368* ZSYTRI_ROOK
369*
370 srnamt = 'ZSYTRI_ROOK'
371 infot = 1
372 CALL zsytri_rook( '/', 0, a, 1, ip, w, info )
373 CALL chkxer( 'ZSYTRI_ROOK', infot, nout, lerr, ok )
374 infot = 2
375 CALL zsytri_rook( 'U', -1, a, 1, ip, w, info )
376 CALL chkxer( 'ZSYTRI_ROOK', infot, nout, lerr, ok )
377 infot = 4
378 CALL zsytri_rook( 'U', 2, a, 1, ip, w, info )
379 CALL chkxer( 'ZSYTRI_ROOK', infot, nout, lerr, ok )
380*
381* ZSYTRS_ROOK
382*
383 srnamt = 'ZSYTRS_ROOK'
384 infot = 1
385 CALL zsytrs_rook( '/', 0, 0, a, 1, ip, b, 1, info )
386 CALL chkxer( 'ZSYTRS_ROOK', infot, nout, lerr, ok )
387 infot = 2
388 CALL zsytrs_rook( 'U', -1, 0, a, 1, ip, b, 1, info )
389 CALL chkxer( 'ZSYTRS_ROOK', infot, nout, lerr, ok )
390 infot = 3
391 CALL zsytrs_rook( 'U', 0, -1, a, 1, ip, b, 1, info )
392 CALL chkxer( 'ZSYTRS_ROOK', infot, nout, lerr, ok )
393 infot = 5
394 CALL zsytrs_rook( 'U', 2, 1, a, 1, ip, b, 2, info )
395 CALL chkxer( 'ZSYTRS_ROOK', infot, nout, lerr, ok )
396 infot = 8
397 CALL zsytrs_rook( 'U', 2, 1, a, 2, ip, b, 1, info )
398 CALL chkxer( 'ZSYTRS_ROOK', infot, nout, lerr, ok )
399*
400* ZSYCON_ROOK
401*
402 srnamt = 'ZSYCON_ROOK'
403 infot = 1
404 CALL zsycon_rook( '/', 0, a, 1, ip, anrm, rcond, w, info )
405 CALL chkxer( 'ZSYCON_ROOK', infot, nout, lerr, ok )
406 infot = 2
407 CALL zsycon_rook( 'U', -1, a, 1, ip, anrm, rcond, w, info )
408 CALL chkxer( 'ZSYCON_ROOK', infot, nout, lerr, ok )
409 infot = 4
410 CALL zsycon_rook( 'U', 2, a, 1, ip, anrm, rcond, w, info )
411 CALL chkxer( 'ZSYCON_ROOK', infot, nout, lerr, ok )
412 infot = 6
413 CALL zsycon_rook( 'U', 1, a, 1, ip, -anrm, rcond, w, info )
414 CALL chkxer( 'ZSYCON_ROOK', infot, nout, lerr, ok )
415*
416 ELSE IF( lsamen( 2, c2, 'SK' ) ) THEN
417*
418* Test error exits of the routines that use factorization
419* of a symmetric indefinite matrix with rook
420* (bounded Bunch-Kaufman) pivoting with the new storage
421* format for factors L ( or U) and D.
422*
423* L (or U) is stored in A, diagonal of D is stored on the
424* diagonal of A, subdiagonal of D is stored in a separate array E.
425*
426* ZSYTRF_RK
427*
428 srnamt = 'ZSYTRF_RK'
429 infot = 1
430 CALL zsytrf_rk( '/', 0, a, 1, e, ip, w, 1, info )
431 CALL chkxer( 'ZSYTRF_RK', infot, nout, lerr, ok )
432 infot = 2
433 CALL zsytrf_rk( 'U', -1, a, 1, e, ip, w, 1, info )
434 CALL chkxer( 'ZSYTRF_RK', infot, nout, lerr, ok )
435 infot = 4
436 CALL zsytrf_rk( 'U', 2, a, 1, e, ip, w, 4, info )
437 CALL chkxer( 'ZSYTRF_RK', infot, nout, lerr, ok )
438 infot = 8
439 CALL zsytrf_rk( 'U', 0, a, 1, e, ip, w, 0, info )
440 CALL chkxer( 'ZSYTRF_RK', infot, nout, lerr, ok )
441 infot = 8
442 CALL zsytrf_rk( 'U', 0, a, 1, e, ip, w, -2, info )
443 CALL chkxer( 'ZSYTRF_RK', infot, nout, lerr, ok )
444*
445* ZSYTF2_RK
446*
447 srnamt = 'ZSYTF2_RK'
448 infot = 1
449 CALL zsytf2_rk( '/', 0, a, 1, e, ip, info )
450 CALL chkxer( 'ZSYTF2_RK', infot, nout, lerr, ok )
451 infot = 2
452 CALL zsytf2_rk( 'U', -1, a, 1, e, ip, info )
453 CALL chkxer( 'ZSYTF2_RK', infot, nout, lerr, ok )
454 infot = 4
455 CALL zsytf2_rk( 'U', 2, a, 1, e, ip, info )
456 CALL chkxer( 'ZSYTF2_RK', infot, nout, lerr, ok )
457*
458* ZSYTRI_3
459*
460 srnamt = 'ZSYTRI_3'
461 infot = 1
462 CALL zsytri_3( '/', 0, a, 1, e, ip, w, 1, info )
463 CALL chkxer( 'ZSYTRI_3', infot, nout, lerr, ok )
464 infot = 2
465 CALL zsytri_3( 'U', -1, a, 1, e, ip, w, 1, info )
466 CALL chkxer( 'ZSYTRI_3', infot, nout, lerr, ok )
467 infot = 4
468 CALL zsytri_3( 'U', 2, a, 1, e, ip, w, 1, info )
469 CALL chkxer( 'ZSYTRI_3', infot, nout, lerr, ok )
470 infot = 8
471 CALL zsytri_3( 'U', 0, a, 1, e, ip, w, 0, info )
472 CALL chkxer( 'ZSYTRI_3', infot, nout, lerr, ok )
473 infot = 8
474 CALL zsytri_3( 'U', 0, a, 1, e, ip, w, -2, info )
475 CALL chkxer( 'ZSYTRI_3', infot, nout, lerr, ok )
476*
477* ZSYTRI_3X
478*
479 srnamt = 'ZSYTRI_3X'
480 infot = 1
481 CALL zsytri_3x( '/', 0, a, 1, e, ip, w, 1, info )
482 CALL chkxer( 'ZSYTRI_3X', infot, nout, lerr, ok )
483 infot = 2
484 CALL zsytri_3x( 'U', -1, a, 1, e, ip, w, 1, info )
485 CALL chkxer( 'ZSYTRI_3X', infot, nout, lerr, ok )
486 infot = 4
487 CALL zsytri_3x( 'U', 2, a, 1, e, ip, w, 1, info )
488 CALL chkxer( 'ZSYTRI_3X', infot, nout, lerr, ok )
489*
490* ZSYTRS_3
491*
492 srnamt = 'ZSYTRS_3'
493 infot = 1
494 CALL zsytrs_3( '/', 0, 0, a, 1, e, ip, b, 1, info )
495 CALL chkxer( 'ZSYTRS_3', infot, nout, lerr, ok )
496 infot = 2
497 CALL zsytrs_3( 'U', -1, 0, a, 1, e, ip, b, 1, info )
498 CALL chkxer( 'ZSYTRS_3', infot, nout, lerr, ok )
499 infot = 3
500 CALL zsytrs_3( 'U', 0, -1, a, 1, e, ip, b, 1, info )
501 CALL chkxer( 'ZSYTRS_3', infot, nout, lerr, ok )
502 infot = 5
503 CALL zsytrs_3( 'U', 2, 1, a, 1, e, ip, b, 2, info )
504 CALL chkxer( 'ZSYTRS_3', infot, nout, lerr, ok )
505 infot = 9
506 CALL zsytrs_3( 'U', 2, 1, a, 2, e, ip, b, 1, info )
507 CALL chkxer( 'ZSYTRS_3', infot, nout, lerr, ok )
508*
509* ZSYCON_3
510*
511 srnamt = 'ZSYCON_3'
512 infot = 1
513 CALL zsycon_3( '/', 0, a, 1, e, ip, anrm, rcond, w, info )
514 CALL chkxer( 'ZSYCON_3', infot, nout, lerr, ok )
515 infot = 2
516 CALL zsycon_3( 'U', -1, a, 1, e, ip, anrm, rcond, w, info )
517 CALL chkxer( 'ZSYCON_3', infot, nout, lerr, ok )
518 infot = 4
519 CALL zsycon_3( 'U', 2, a, 1, e, ip, anrm, rcond, w, info )
520 CALL chkxer( 'ZSYCON_3', infot, nout, lerr, ok )
521 infot = 7
522 CALL zsycon_3( 'U', 1, a, 1, e, ip, -1.0d0, rcond, w, info)
523 CALL chkxer( 'ZSYCON_3', infot, nout, lerr, ok )
524*
525 ELSE IF( lsamen( 2, c2, 'SP' ) ) THEN
526*
527* Test error exits of the routines that use factorization
528* of a symmetric indefinite packed matrix with partial
529* (Bunch-Kaufman) pivoting.
530*
531* ZSPTRF
532*
533 srnamt = 'ZSPTRF'
534 infot = 1
535 CALL zsptrf( '/', 0, a, ip, info )
536 CALL chkxer( 'ZSPTRF', infot, nout, lerr, ok )
537 infot = 2
538 CALL zsptrf( 'U', -1, a, ip, info )
539 CALL chkxer( 'ZSPTRF', infot, nout, lerr, ok )
540*
541* ZSPTRI
542*
543 srnamt = 'ZSPTRI'
544 infot = 1
545 CALL zsptri( '/', 0, a, ip, w, info )
546 CALL chkxer( 'ZSPTRI', infot, nout, lerr, ok )
547 infot = 2
548 CALL zsptri( 'U', -1, a, ip, w, info )
549 CALL chkxer( 'ZSPTRI', infot, nout, lerr, ok )
550*
551* ZSPTRS
552*
553 srnamt = 'ZSPTRS'
554 infot = 1
555 CALL zsptrs( '/', 0, 0, a, ip, b, 1, info )
556 CALL chkxer( 'ZSPTRS', infot, nout, lerr, ok )
557 infot = 2
558 CALL zsptrs( 'U', -1, 0, a, ip, b, 1, info )
559 CALL chkxer( 'ZSPTRS', infot, nout, lerr, ok )
560 infot = 3
561 CALL zsptrs( 'U', 0, -1, a, ip, b, 1, info )
562 CALL chkxer( 'ZSPTRS', infot, nout, lerr, ok )
563 infot = 7
564 CALL zsptrs( 'U', 2, 1, a, ip, b, 1, info )
565 CALL chkxer( 'ZSPTRS', infot, nout, lerr, ok )
566*
567* ZSPRFS
568*
569 srnamt = 'ZSPRFS'
570 infot = 1
571 CALL zsprfs( '/', 0, 0, a, af, ip, b, 1, x, 1, r1, r2, w, r,
572 $ info )
573 CALL chkxer( 'ZSPRFS', infot, nout, lerr, ok )
574 infot = 2
575 CALL zsprfs( 'U', -1, 0, a, af, ip, b, 1, x, 1, r1, r2, w, r,
576 $ info )
577 CALL chkxer( 'ZSPRFS', infot, nout, lerr, ok )
578 infot = 3
579 CALL zsprfs( 'U', 0, -1, a, af, ip, b, 1, x, 1, r1, r2, w, r,
580 $ info )
581 CALL chkxer( 'ZSPRFS', infot, nout, lerr, ok )
582 infot = 8
583 CALL zsprfs( 'U', 2, 1, a, af, ip, b, 1, x, 2, r1, r2, w, r,
584 $ info )
585 CALL chkxer( 'ZSPRFS', infot, nout, lerr, ok )
586 infot = 10
587 CALL zsprfs( 'U', 2, 1, a, af, ip, b, 2, x, 1, r1, r2, w, r,
588 $ info )
589 CALL chkxer( 'ZSPRFS', infot, nout, lerr, ok )
590*
591* ZSPCON
592*
593 srnamt = 'ZSPCON'
594 infot = 1
595 CALL zspcon( '/', 0, a, ip, anrm, rcond, w, info )
596 CALL chkxer( 'ZSPCON', infot, nout, lerr, ok )
597 infot = 2
598 CALL zspcon( 'U', -1, a, ip, anrm, rcond, w, info )
599 CALL chkxer( 'ZSPCON', infot, nout, lerr, ok )
600 infot = 5
601 CALL zspcon( 'U', 1, a, ip, -anrm, rcond, w, info )
602 CALL chkxer( 'ZSPCON', infot, nout, lerr, ok )
603 END IF
604*
605* Print a summary line.
606*
607 CALL alaesm( path, ok, nout )
608*
609 RETURN
610*
611* End of ZERRSYX
612*
613 END
subroutine alaesm(path, ok, nout)
ALAESM
Definition alaesm.f:63
subroutine chkxer(srnamt, infot, nout, lerr, ok)
Definition cblat2.f:3224
subroutine zsycon_3(uplo, n, a, lda, e, ipiv, anorm, rcond, work, info)
ZSYCON_3
Definition zsycon_3.f:166
subroutine zsycon_rook(uplo, n, a, lda, ipiv, anorm, rcond, work, info)
ZSYCON_ROOK
subroutine zsycon(uplo, n, a, lda, ipiv, anorm, rcond, work, info)
ZSYCON
Definition zsycon.f:125
subroutine zsyrfs(uplo, n, nrhs, a, lda, af, ldaf, ipiv, b, ldb, x, ldx, ferr, berr, work, rwork, info)
ZSYRFS
Definition zsyrfs.f:192
subroutine zsyrfsx(uplo, equed, n, nrhs, a, lda, af, ldaf, ipiv, s, b, ldb, x, ldx, rcond, berr, n_err_bnds, err_bnds_norm, err_bnds_comp, nparams, params, work, rwork, info)
ZSYRFSX
Definition zsyrfsx.f:402
subroutine zsytf2_rk(uplo, n, a, lda, e, ipiv, info)
ZSYTF2_RK computes the factorization of a complex symmetric indefinite matrix using the bounded Bunch...
Definition zsytf2_rk.f:241
subroutine zsytf2_rook(uplo, n, a, lda, ipiv, info)
ZSYTF2_ROOK computes the factorization of a complex symmetric indefinite matrix using the bounded Bun...
subroutine zsytf2(uplo, n, a, lda, ipiv, info)
ZSYTF2 computes the factorization of a real symmetric indefinite matrix, using the diagonal pivoting ...
Definition zsytf2.f:191
subroutine zsytrf_rk(uplo, n, a, lda, e, ipiv, work, lwork, info)
ZSYTRF_RK computes the factorization of a complex symmetric indefinite matrix using the bounded Bunch...
Definition zsytrf_rk.f:259
subroutine zsytrf_rook(uplo, n, a, lda, ipiv, work, lwork, info)
ZSYTRF_ROOK
subroutine zsytrf(uplo, n, a, lda, ipiv, work, lwork, info)
ZSYTRF
Definition zsytrf.f:182
subroutine zsytri2(uplo, n, a, lda, ipiv, work, lwork, info)
ZSYTRI2
Definition zsytri2.f:127
subroutine zsytri2x(uplo, n, a, lda, ipiv, work, nb, info)
ZSYTRI2X
Definition zsytri2x.f:120
subroutine zsytri_3(uplo, n, a, lda, e, ipiv, work, lwork, info)
ZSYTRI_3
Definition zsytri_3.f:170
subroutine zsytri_3x(uplo, n, a, lda, e, ipiv, work, nb, info)
ZSYTRI_3X
Definition zsytri_3x.f:159
subroutine zsytri_rook(uplo, n, a, lda, ipiv, work, info)
ZSYTRI_ROOK
subroutine zsytri(uplo, n, a, lda, ipiv, work, info)
ZSYTRI
Definition zsytri.f:114
subroutine zsytrs_3(uplo, n, nrhs, a, lda, e, ipiv, b, ldb, info)
ZSYTRS_3
Definition zsytrs_3.f:165
subroutine zsytrs_rook(uplo, n, nrhs, a, lda, ipiv, b, ldb, info)
ZSYTRS_ROOK
subroutine zsytrs(uplo, n, nrhs, a, lda, ipiv, b, ldb, info)
ZSYTRS
Definition zsytrs.f:120
subroutine zspcon(uplo, n, ap, ipiv, anorm, rcond, work, info)
ZSPCON
Definition zspcon.f:118
subroutine zsprfs(uplo, n, nrhs, ap, afp, ipiv, b, ldb, x, ldx, ferr, berr, work, rwork, info)
ZSPRFS
Definition zsprfs.f:180
subroutine zsptrf(uplo, n, ap, ipiv, info)
ZSPTRF
Definition zsptrf.f:158
subroutine zsptri(uplo, n, ap, ipiv, work, info)
ZSPTRI
Definition zsptri.f:109
subroutine zsptrs(uplo, n, nrhs, ap, ipiv, b, ldb, info)
ZSPTRS
Definition zsptrs.f:115
subroutine zerrsy(path, nunit)
ZERRSY
Definition zerrsy.f:55