LAPACK 3.12.0
LAPACK: Linear Algebra PACKage
Loading...
Searching...
No Matches

◆ zerrsy()

subroutine zerrsy ( character*3  path,
integer  nunit 
)

ZERRSY

Purpose:
 ZERRSY tests the error exits for the COMPLEX*16 routines
 for symmetric indefinite matrices.
Parameters
[in]PATH
          PATH is CHARACTER*3
          The LAPACK path name for the routines to be tested.
[in]NUNIT
          NUNIT is INTEGER
          The unit number for output.
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.

Definition at line 54 of file zerrsy.f.

55*
56* -- LAPACK test routine --
57* -- LAPACK is a software package provided by Univ. of Tennessee, --
58* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
59*
60* .. Scalar Arguments ..
61 CHARACTER*3 PATH
62 INTEGER NUNIT
63* ..
64*
65* =====================================================================
66*
67* .. Parameters ..
68 INTEGER NMAX
69 parameter( nmax = 4 )
70* ..
71* .. Local Scalars ..
72 CHARACTER*2 C2
73 INTEGER I, INFO, J
74 DOUBLE PRECISION ANRM, RCOND
75* ..
76* .. Local Arrays ..
77 INTEGER IP( NMAX )
78 DOUBLE PRECISION R( NMAX ), R1( NMAX ), R2( NMAX )
79 COMPLEX*16 A( NMAX, NMAX ), AF( NMAX, NMAX ), B( NMAX ),
80 $ E( NMAX ), W( 2*NMAX ), X( NMAX )
81* ..
82* .. External Functions ..
83 LOGICAL LSAMEN
84 EXTERNAL lsamen
85* ..
86* .. External Subroutines ..
87 EXTERNAL alaesm, chkxer, zspcon, zsprfs, zsptrf, zsptri,
93* ..
94* .. Scalars in Common ..
95 LOGICAL LERR, OK
96 CHARACTER*32 SRNAMT
97 INTEGER INFOT, NOUT
98* ..
99* .. Common blocks ..
100 COMMON / infoc / infot, nout, ok, lerr
101 COMMON / srnamc / srnamt
102* ..
103* .. Intrinsic Functions ..
104 INTRINSIC dble, dcmplx
105* ..
106* .. Executable Statements ..
107*
108 nout = nunit
109 WRITE( nout, fmt = * )
110 c2 = path( 2: 3 )
111*
112* Set the variables to innocuous values.
113*
114 DO 20 j = 1, nmax
115 DO 10 i = 1, nmax
116 a( i, j ) = dcmplx( 1.d0 / dble( i+j ),
117 $ -1.d0 / dble( i+j ) )
118 af( i, j ) = dcmplx( 1.d0 / dble( i+j ),
119 $ -1.d0 / dble( i+j ) )
120 10 CONTINUE
121 b( j ) = 0.d0
122 e( j ) = 0.d0
123 r1( j ) = 0.d0
124 r2( j ) = 0.d0
125 w( j ) = 0.d0
126 x( j ) = 0.d0
127 ip( j ) = j
128 20 CONTINUE
129 anrm = 1.0d0
130 ok = .true.
131*
132 IF( lsamen( 2, c2, 'SY' ) ) THEN
133*
134* Test error exits of the routines that use factorization
135* of a symmetric indefinite matrix with partial
136* (Bunch-Kaufman) diagonal pivoting method.
137*
138* ZSYTRF
139*
140 srnamt = 'ZSYTRF'
141 infot = 1
142 CALL zsytrf( '/', 0, a, 1, ip, w, 1, info )
143 CALL chkxer( 'ZSYTRF', infot, nout, lerr, ok )
144 infot = 2
145 CALL zsytrf( 'U', -1, a, 1, ip, w, 1, info )
146 CALL chkxer( 'ZSYTRF', infot, nout, lerr, ok )
147 infot = 4
148 CALL zsytrf( 'U', 2, a, 1, ip, w, 4, info )
149 CALL chkxer( 'ZSYTRF', infot, nout, lerr, ok )
150 infot = 7
151 CALL zsytrf( 'U', 0, a, 1, ip, w, 0, info )
152 CALL chkxer( 'ZSYTRF', infot, nout, lerr, ok )
153 infot = 7
154 CALL zsytrf( 'U', 0, a, 1, ip, w, -2, info )
155 CALL chkxer( 'ZSYTRF', infot, nout, lerr, ok )
156*
157* ZSYTF2
158*
159 srnamt = 'ZSYTF2'
160 infot = 1
161 CALL zsytf2( '/', 0, a, 1, ip, info )
162 CALL chkxer( 'ZSYTF2', infot, nout, lerr, ok )
163 infot = 2
164 CALL zsytf2( 'U', -1, a, 1, ip, info )
165 CALL chkxer( 'ZSYTF2', infot, nout, lerr, ok )
166 infot = 4
167 CALL zsytf2( 'U', 2, a, 1, ip, info )
168 CALL chkxer( 'ZSYTF2', infot, nout, lerr, ok )
169*
170* ZSYTRI
171*
172 srnamt = 'ZSYTRI'
173 infot = 1
174 CALL zsytri( '/', 0, a, 1, ip, w, info )
175 CALL chkxer( 'ZSYTRI', infot, nout, lerr, ok )
176 infot = 2
177 CALL zsytri( 'U', -1, a, 1, ip, w, info )
178 CALL chkxer( 'ZSYTRI', infot, nout, lerr, ok )
179 infot = 4
180 CALL zsytri( 'U', 2, a, 1, ip, w, info )
181 CALL chkxer( 'ZSYTRI', infot, nout, lerr, ok )
182*
183* ZSYTRI2
184*
185 srnamt = 'ZSYTRI2'
186 infot = 1
187 CALL zsytri2( '/', 0, a, 1, ip, w, 1, info )
188 CALL chkxer( 'ZSYTRI2', infot, nout, lerr, ok )
189 infot = 2
190 CALL zsytri2( 'U', -1, a, 1, ip, w, 1, info )
191 CALL chkxer( 'ZSYTRI2', infot, nout, lerr, ok )
192 infot = 4
193 CALL zsytri2( 'U', 2, a, 1, ip, w, 1, info )
194 CALL chkxer( 'ZSYTRI2', infot, nout, lerr, ok )
195*
196* ZSYTRI2X
197*
198 srnamt = 'ZSYTRI2X'
199 infot = 1
200 CALL zsytri2x( '/', 0, a, 1, ip, w, 1, info )
201 CALL chkxer( 'ZSYTRI2X', infot, nout, lerr, ok )
202 infot = 2
203 CALL zsytri2x( 'U', -1, a, 1, ip, w, 1, info )
204 CALL chkxer( 'ZSYTRI2X', infot, nout, lerr, ok )
205 infot = 4
206 CALL zsytri2x( 'U', 2, a, 1, ip, w, 1, info )
207 CALL chkxer( 'ZSYTRI2X', infot, nout, lerr, ok )
208*
209* ZSYTRS
210*
211 srnamt = 'ZSYTRS'
212 infot = 1
213 CALL zsytrs( '/', 0, 0, a, 1, ip, b, 1, info )
214 CALL chkxer( 'ZSYTRS', infot, nout, lerr, ok )
215 infot = 2
216 CALL zsytrs( 'U', -1, 0, a, 1, ip, b, 1, info )
217 CALL chkxer( 'ZSYTRS', infot, nout, lerr, ok )
218 infot = 3
219 CALL zsytrs( 'U', 0, -1, a, 1, ip, b, 1, info )
220 CALL chkxer( 'ZSYTRS', infot, nout, lerr, ok )
221 infot = 5
222 CALL zsytrs( 'U', 2, 1, a, 1, ip, b, 2, info )
223 CALL chkxer( 'ZSYTRS', infot, nout, lerr, ok )
224 infot = 8
225 CALL zsytrs( 'U', 2, 1, a, 2, ip, b, 1, info )
226 CALL chkxer( 'ZSYTRS', infot, nout, lerr, ok )
227*
228* ZSYRFS
229*
230 srnamt = 'ZSYRFS'
231 infot = 1
232 CALL zsyrfs( '/', 0, 0, a, 1, af, 1, ip, b, 1, x, 1, r1, r2, w,
233 $ r, info )
234 CALL chkxer( 'ZSYRFS', infot, nout, lerr, ok )
235 infot = 2
236 CALL zsyrfs( 'U', -1, 0, a, 1, af, 1, ip, b, 1, x, 1, r1, r2,
237 $ w, r, info )
238 CALL chkxer( 'ZSYRFS', infot, nout, lerr, ok )
239 infot = 3
240 CALL zsyrfs( 'U', 0, -1, a, 1, af, 1, ip, b, 1, x, 1, r1, r2,
241 $ w, r, info )
242 CALL chkxer( 'ZSYRFS', infot, nout, lerr, ok )
243 infot = 5
244 CALL zsyrfs( 'U', 2, 1, a, 1, af, 2, ip, b, 2, x, 2, r1, r2, w,
245 $ r, info )
246 CALL chkxer( 'ZSYRFS', infot, nout, lerr, ok )
247 infot = 7
248 CALL zsyrfs( 'U', 2, 1, a, 2, af, 1, ip, b, 2, x, 2, r1, r2, w,
249 $ r, info )
250 CALL chkxer( 'ZSYRFS', infot, nout, lerr, ok )
251 infot = 10
252 CALL zsyrfs( 'U', 2, 1, a, 2, af, 2, ip, b, 1, x, 2, r1, r2, w,
253 $ r, info )
254 CALL chkxer( 'ZSYRFS', infot, nout, lerr, ok )
255 infot = 12
256 CALL zsyrfs( 'U', 2, 1, a, 2, af, 2, ip, b, 2, x, 1, r1, r2, w,
257 $ r, info )
258 CALL chkxer( 'ZSYRFS', infot, nout, lerr, ok )
259*
260* ZSYCON
261*
262 srnamt = 'ZSYCON'
263 infot = 1
264 CALL zsycon( '/', 0, a, 1, ip, anrm, rcond, w, info )
265 CALL chkxer( 'ZSYCON', infot, nout, lerr, ok )
266 infot = 2
267 CALL zsycon( 'U', -1, a, 1, ip, anrm, rcond, w, info )
268 CALL chkxer( 'ZSYCON', infot, nout, lerr, ok )
269 infot = 4
270 CALL zsycon( 'U', 2, a, 1, ip, anrm, rcond, w, info )
271 CALL chkxer( 'ZSYCON', infot, nout, lerr, ok )
272 infot = 6
273 CALL zsycon( 'U', 1, a, 1, ip, -anrm, rcond, w, info )
274 CALL chkxer( 'ZSYCON', infot, nout, lerr, ok )
275*
276 ELSE IF( lsamen( 2, c2, 'SR' ) ) THEN
277*
278* Test error exits of the routines that use factorization
279* of a symmetric indefinite matrix with rook
280* (bounded Bunch-Kaufman) diagonal pivoting method.
281*
282* ZSYTRF_ROOK
283*
284 srnamt = 'ZSYTRF_ROOK'
285 infot = 1
286 CALL zsytrf_rook( '/', 0, a, 1, ip, w, 1, info )
287 CALL chkxer( 'ZSYTRF_ROOK', infot, nout, lerr, ok )
288 infot = 2
289 CALL zsytrf_rook( 'U', -1, a, 1, ip, w, 1, info )
290 CALL chkxer( 'ZSYTRF_ROOK', infot, nout, lerr, ok )
291 infot = 4
292 CALL zsytrf_rook( 'U', 2, a, 1, ip, w, 4, info )
293 CALL chkxer( 'ZSYTRF_ROOK', infot, nout, lerr, ok )
294 infot = 7
295 CALL zsytrf_rook( 'U', 0, a, 1, ip, w, 0, info )
296 CALL chkxer( 'ZSYTRF_ROOK', infot, nout, lerr, ok )
297 infot = 7
298 CALL zsytrf_rook( 'U', 0, a, 1, ip, w, -2, info )
299 CALL chkxer( 'ZSYTRF_ROOK', infot, nout, lerr, ok )
300*
301* ZSYTF2_ROOK
302*
303 srnamt = 'ZSYTF2_ROOK'
304 infot = 1
305 CALL zsytf2_rook( '/', 0, a, 1, ip, info )
306 CALL chkxer( 'ZSYTF2_ROOK', infot, nout, lerr, ok )
307 infot = 2
308 CALL zsytf2_rook( 'U', -1, a, 1, ip, info )
309 CALL chkxer( 'ZSYTF2_ROOK', infot, nout, lerr, ok )
310 infot = 4
311 CALL zsytf2_rook( 'U', 2, a, 1, ip, info )
312 CALL chkxer( 'ZSYTF2_ROOK', infot, nout, lerr, ok )
313*
314* ZSYTRI_ROOK
315*
316 srnamt = 'ZSYTRI_ROOK'
317 infot = 1
318 CALL zsytri_rook( '/', 0, a, 1, ip, w, info )
319 CALL chkxer( 'ZSYTRI_ROOK', infot, nout, lerr, ok )
320 infot = 2
321 CALL zsytri_rook( 'U', -1, a, 1, ip, w, info )
322 CALL chkxer( 'ZSYTRI_ROOK', infot, nout, lerr, ok )
323 infot = 4
324 CALL zsytri_rook( 'U', 2, a, 1, ip, w, info )
325 CALL chkxer( 'ZSYTRI_ROOK', infot, nout, lerr, ok )
326*
327* ZSYTRS_ROOK
328*
329 srnamt = 'ZSYTRS_ROOK'
330 infot = 1
331 CALL zsytrs_rook( '/', 0, 0, a, 1, ip, b, 1, info )
332 CALL chkxer( 'ZSYTRS_ROOK', infot, nout, lerr, ok )
333 infot = 2
334 CALL zsytrs_rook( 'U', -1, 0, a, 1, ip, b, 1, info )
335 CALL chkxer( 'ZSYTRS_ROOK', infot, nout, lerr, ok )
336 infot = 3
337 CALL zsytrs_rook( 'U', 0, -1, a, 1, ip, b, 1, info )
338 CALL chkxer( 'ZSYTRS_ROOK', infot, nout, lerr, ok )
339 infot = 5
340 CALL zsytrs_rook( 'U', 2, 1, a, 1, ip, b, 2, info )
341 CALL chkxer( 'ZSYTRS_ROOK', infot, nout, lerr, ok )
342 infot = 8
343 CALL zsytrs_rook( 'U', 2, 1, a, 2, ip, b, 1, info )
344 CALL chkxer( 'ZSYTRS_ROOK', infot, nout, lerr, ok )
345*
346* ZSYCON_ROOK
347*
348 srnamt = 'ZSYCON_ROOK'
349 infot = 1
350 CALL zsycon_rook( '/', 0, a, 1, ip, anrm, rcond, w, info )
351 CALL chkxer( 'ZSYCON_ROOK', infot, nout, lerr, ok )
352 infot = 2
353 CALL zsycon_rook( 'U', -1, a, 1, ip, anrm, rcond, w, info )
354 CALL chkxer( 'ZSYCON_ROOK', infot, nout, lerr, ok )
355 infot = 4
356 CALL zsycon_rook( 'U', 2, a, 1, ip, anrm, rcond, w, info )
357 CALL chkxer( 'ZSYCON_ROOK', infot, nout, lerr, ok )
358 infot = 6
359 CALL zsycon_rook( 'U', 1, a, 1, ip, -anrm, rcond, w, info )
360 CALL chkxer( 'ZSYCON_ROOK', infot, nout, lerr, ok )
361*
362 ELSE IF( lsamen( 2, c2, 'SK' ) ) THEN
363*
364* Test error exits of the routines that use factorization
365* of a symmetric indefinite matrix with rook
366* (bounded Bunch-Kaufman) pivoting with the new storage
367* format for factors L ( or U) and D.
368*
369* L (or U) is stored in A, diagonal of D is stored on the
370* diagonal of A, subdiagonal of D is stored in a separate array E.
371*
372* ZSYTRF_RK
373*
374 srnamt = 'ZSYTRF_RK'
375 infot = 1
376 CALL zsytrf_rk( '/', 0, a, 1, e, ip, w, 1, info )
377 CALL chkxer( 'ZSYTRF_RK', infot, nout, lerr, ok )
378 infot = 2
379 CALL zsytrf_rk( 'U', -1, a, 1, e, ip, w, 1, info )
380 CALL chkxer( 'ZSYTRF_RK', infot, nout, lerr, ok )
381 infot = 4
382 CALL zsytrf_rk( 'U', 2, a, 1, e, ip, w, 4, info )
383 CALL chkxer( 'ZSYTRF_RK', infot, nout, lerr, ok )
384 infot = 8
385 CALL zsytrf_rk( 'U', 0, a, 1, e, ip, w, 0, info )
386 CALL chkxer( 'ZSYTRF_RK', infot, nout, lerr, ok )
387 infot = 8
388 CALL zsytrf_rk( 'U', 0, a, 1, e, ip, w, -2, info )
389 CALL chkxer( 'ZSYTRF_RK', infot, nout, lerr, ok )
390*
391* ZSYTF2_RK
392*
393 srnamt = 'ZSYTF2_RK'
394 infot = 1
395 CALL zsytf2_rk( '/', 0, a, 1, e, ip, info )
396 CALL chkxer( 'ZSYTF2_RK', infot, nout, lerr, ok )
397 infot = 2
398 CALL zsytf2_rk( 'U', -1, a, 1, e, ip, info )
399 CALL chkxer( 'ZSYTF2_RK', infot, nout, lerr, ok )
400 infot = 4
401 CALL zsytf2_rk( 'U', 2, a, 1, e, ip, info )
402 CALL chkxer( 'ZSYTF2_RK', infot, nout, lerr, ok )
403*
404* ZSYTRI_3
405*
406 srnamt = 'ZSYTRI_3'
407 infot = 1
408 CALL zsytri_3( '/', 0, a, 1, e, ip, w, 1, info )
409 CALL chkxer( 'ZSYTRI_3', infot, nout, lerr, ok )
410 infot = 2
411 CALL zsytri_3( 'U', -1, a, 1, e, ip, w, 1, info )
412 CALL chkxer( 'ZSYTRI_3', infot, nout, lerr, ok )
413 infot = 4
414 CALL zsytri_3( 'U', 2, a, 1, e, ip, w, 1, info )
415 CALL chkxer( 'ZSYTRI_3', infot, nout, lerr, ok )
416 infot = 8
417 CALL zsytri_3( 'U', 0, a, 1, e, ip, w, 0, info )
418 CALL chkxer( 'ZSYTRI_3', infot, nout, lerr, ok )
419 infot = 8
420 CALL zsytri_3( 'U', 0, a, 1, e, ip, w, -2, info )
421 CALL chkxer( 'ZSYTRI_3', infot, nout, lerr, ok )
422*
423* ZSYTRI_3X
424*
425 srnamt = 'ZSYTRI_3X'
426 infot = 1
427 CALL zsytri_3x( '/', 0, a, 1, e, ip, w, 1, info )
428 CALL chkxer( 'ZSYTRI_3X', infot, nout, lerr, ok )
429 infot = 2
430 CALL zsytri_3x( 'U', -1, a, 1, e, ip, w, 1, info )
431 CALL chkxer( 'ZSYTRI_3X', infot, nout, lerr, ok )
432 infot = 4
433 CALL zsytri_3x( 'U', 2, a, 1, e, ip, w, 1, info )
434 CALL chkxer( 'ZSYTRI_3X', infot, nout, lerr, ok )
435*
436* ZSYTRS_3
437*
438 srnamt = 'ZSYTRS_3'
439 infot = 1
440 CALL zsytrs_3( '/', 0, 0, a, 1, e, ip, b, 1, info )
441 CALL chkxer( 'ZSYTRS_3', infot, nout, lerr, ok )
442 infot = 2
443 CALL zsytrs_3( 'U', -1, 0, a, 1, e, ip, b, 1, info )
444 CALL chkxer( 'ZSYTRS_3', infot, nout, lerr, ok )
445 infot = 3
446 CALL zsytrs_3( 'U', 0, -1, a, 1, e, ip, b, 1, info )
447 CALL chkxer( 'ZSYTRS_3', infot, nout, lerr, ok )
448 infot = 5
449 CALL zsytrs_3( 'U', 2, 1, a, 1, e, ip, b, 2, info )
450 CALL chkxer( 'ZSYTRS_3', infot, nout, lerr, ok )
451 infot = 9
452 CALL zsytrs_3( 'U', 2, 1, a, 2, e, ip, b, 1, info )
453 CALL chkxer( 'ZSYTRS_3', infot, nout, lerr, ok )
454*
455* ZSYCON_3
456*
457 srnamt = 'ZSYCON_3'
458 infot = 1
459 CALL zsycon_3( '/', 0, a, 1, e, ip, anrm, rcond, w, info )
460 CALL chkxer( 'ZSYCON_3', infot, nout, lerr, ok )
461 infot = 2
462 CALL zsycon_3( 'U', -1, a, 1, e, ip, anrm, rcond, w, info )
463 CALL chkxer( 'ZSYCON_3', infot, nout, lerr, ok )
464 infot = 4
465 CALL zsycon_3( 'U', 2, a, 1, e, ip, anrm, rcond, w, info )
466 CALL chkxer( 'ZSYCON_3', infot, nout, lerr, ok )
467 infot = 7
468 CALL zsycon_3( 'U', 1, a, 1, e, ip, -1.0d0, rcond, w, info)
469 CALL chkxer( 'ZSYCON_3', infot, nout, lerr, ok )
470*
471 ELSE IF( lsamen( 2, c2, 'SP' ) ) THEN
472*
473* Test error exits of the routines that use factorization
474* of a symmetric indefinite packed matrix with partial
475* (Bunch-Kaufman) pivoting.
476*
477* ZSPTRF
478*
479 srnamt = 'ZSPTRF'
480 infot = 1
481 CALL zsptrf( '/', 0, a, ip, info )
482 CALL chkxer( 'ZSPTRF', infot, nout, lerr, ok )
483 infot = 2
484 CALL zsptrf( 'U', -1, a, ip, info )
485 CALL chkxer( 'ZSPTRF', infot, nout, lerr, ok )
486*
487* ZSPTRI
488*
489 srnamt = 'ZSPTRI'
490 infot = 1
491 CALL zsptri( '/', 0, a, ip, w, info )
492 CALL chkxer( 'ZSPTRI', infot, nout, lerr, ok )
493 infot = 2
494 CALL zsptri( 'U', -1, a, ip, w, info )
495 CALL chkxer( 'ZSPTRI', infot, nout, lerr, ok )
496*
497* ZSPTRS
498*
499 srnamt = 'ZSPTRS'
500 infot = 1
501 CALL zsptrs( '/', 0, 0, a, ip, b, 1, info )
502 CALL chkxer( 'ZSPTRS', infot, nout, lerr, ok )
503 infot = 2
504 CALL zsptrs( 'U', -1, 0, a, ip, b, 1, info )
505 CALL chkxer( 'ZSPTRS', infot, nout, lerr, ok )
506 infot = 3
507 CALL zsptrs( 'U', 0, -1, a, ip, b, 1, info )
508 CALL chkxer( 'ZSPTRS', infot, nout, lerr, ok )
509 infot = 7
510 CALL zsptrs( 'U', 2, 1, a, ip, b, 1, info )
511 CALL chkxer( 'ZSPTRS', infot, nout, lerr, ok )
512*
513* ZSPRFS
514*
515 srnamt = 'ZSPRFS'
516 infot = 1
517 CALL zsprfs( '/', 0, 0, a, af, ip, b, 1, x, 1, r1, r2, w, r,
518 $ info )
519 CALL chkxer( 'ZSPRFS', infot, nout, lerr, ok )
520 infot = 2
521 CALL zsprfs( 'U', -1, 0, a, af, ip, b, 1, x, 1, r1, r2, w, r,
522 $ info )
523 CALL chkxer( 'ZSPRFS', infot, nout, lerr, ok )
524 infot = 3
525 CALL zsprfs( 'U', 0, -1, a, af, ip, b, 1, x, 1, r1, r2, w, r,
526 $ info )
527 CALL chkxer( 'ZSPRFS', infot, nout, lerr, ok )
528 infot = 8
529 CALL zsprfs( 'U', 2, 1, a, af, ip, b, 1, x, 2, r1, r2, w, r,
530 $ info )
531 CALL chkxer( 'ZSPRFS', infot, nout, lerr, ok )
532 infot = 10
533 CALL zsprfs( 'U', 2, 1, a, af, ip, b, 2, x, 1, r1, r2, w, r,
534 $ info )
535 CALL chkxer( 'ZSPRFS', infot, nout, lerr, ok )
536*
537* ZSPCON
538*
539 srnamt = 'ZSPCON'
540 infot = 1
541 CALL zspcon( '/', 0, a, ip, anrm, rcond, w, info )
542 CALL chkxer( 'ZSPCON', infot, nout, lerr, ok )
543 infot = 2
544 CALL zspcon( 'U', -1, a, ip, anrm, rcond, w, info )
545 CALL chkxer( 'ZSPCON', infot, nout, lerr, ok )
546 infot = 5
547 CALL zspcon( 'U', 1, a, ip, -anrm, rcond, w, info )
548 CALL chkxer( 'ZSPCON', infot, nout, lerr, ok )
549*
550 ELSE IF( lsamen( 2, c2, 'SA' ) ) THEN
551*
552* Test error exits of the routines that use factorization
553* of a symmetric indefinite matrix with Aasen's algorithm.
554*
555* ZSYTRF_AA
556*
557 srnamt = 'ZSYTRF_AA'
558 infot = 1
559 CALL zsytrf_aa( '/', 0, a, 1, ip, w, 1, info )
560 CALL chkxer( 'ZSYTRF_AA', infot, nout, lerr, ok )
561 infot = 2
562 CALL zsytrf_aa( 'U', -1, a, 1, ip, w, 1, info )
563 CALL chkxer( 'ZSYTRF_AA', infot, nout, lerr, ok )
564 infot = 4
565 CALL zsytrf_aa( 'U', 2, a, 1, ip, w, 4, info )
566 CALL chkxer( 'ZSYTRF_AA', infot, nout, lerr, ok )
567 infot = 7
568 CALL zsytrf_aa( 'U', 0, a, 1, ip, w, 0, info )
569 CALL chkxer( 'ZSYTRF_AA', infot, nout, lerr, ok )
570 infot = 7
571 CALL zsytrf_aa( 'U', 0, a, 1, ip, w, -2, info )
572 CALL chkxer( 'ZSYTRF_AA', infot, nout, lerr, ok )
573*
574* ZSYTRS_AA
575*
576 srnamt = 'ZSYTRS_AA'
577 infot = 1
578 CALL zsytrs_aa( '/', 0, 0, a, 1, ip, b, 1, w, 1, info )
579 CALL chkxer( 'ZSYTRS_AA', infot, nout, lerr, ok )
580 infot = 2
581 CALL zsytrs_aa( 'U', -1, 0, a, 1, ip, b, 1, w, 1, info )
582 CALL chkxer( 'ZSYTRS_AA', infot, nout, lerr, ok )
583 infot = 3
584 CALL zsytrs_aa( 'U', 0, -1, a, 1, ip, b, 1, w, 1, info )
585 CALL chkxer( 'ZSYTRS_AA', infot, nout, lerr, ok )
586 infot = 5
587 CALL zsytrs_aa( 'U', 2, 1, a, 1, ip, b, 2, w, 1, info )
588 CALL chkxer( 'ZSYTRS_AA', infot, nout, lerr, ok )
589 infot = 8
590 CALL zsytrs_aa( 'U', 2, 1, a, 2, ip, b, 1, w, 1, info )
591 CALL chkxer( 'ZSYTRS_AA', infot, nout, lerr, ok )
592*
593 ELSE IF( lsamen( 2, c2, 'S2' ) ) THEN
594*
595* Test error exits of the routines that use factorization
596* of a symmetric indefinite matrix with Aasen's algorithm.
597*
598* ZSYTRF_AA_2STAGE
599*
600 srnamt = 'ZSYTRF_AA_2STAGE'
601 infot = 1
602 CALL zsytrf_aa_2stage( '/', 0, a, 1, a, 1, ip, ip, w, 1,
603 $ info )
604 CALL chkxer( 'ZSYTRF_AA_2STAGE', infot, nout, lerr, ok )
605 infot = 2
606 CALL zsytrf_aa_2stage( 'U', -1, a, 1, a, 1, ip, ip, w, 1,
607 $ info )
608 CALL chkxer( 'ZSYTRF_AA_2STAGE', infot, nout, lerr, ok )
609 infot = 4
610 CALL zsytrf_aa_2stage( 'U', 2, a, 1, a, 2, ip, ip, w, 1,
611 $ info )
612 CALL chkxer( 'ZSYTRF_AA_2STAGE', infot, nout, lerr, ok )
613 infot = 6
614 CALL zsytrf_aa_2stage( 'U', 2, a, 2, a, 1, ip, ip, w, 1,
615 $ info )
616 CALL chkxer( 'ZSYTRF_AA_2STAGE', infot, nout, lerr, ok )
617 infot = 10
618 CALL zsytrf_aa_2stage( 'U', 2, a, 2, a, 8, ip, ip, w, 0,
619 $ info )
620 CALL chkxer( 'ZSYTRF_AA_2STAGE', infot, nout, lerr, ok )
621*
622* CHETRS_AA_2STAGE
623*
624 srnamt = 'ZSYTRS_AA_2STAGE'
625 infot = 1
626 CALL zsytrs_aa_2stage( '/', 0, 0, a, 1, a, 1, ip, ip,
627 $ b, 1, info )
628 CALL chkxer( 'ZSYTRS_AA_2STAGE', infot, nout, lerr, ok )
629 infot = 2
630 CALL zsytrs_aa_2stage( 'U', -1, 0, a, 1, a, 1, ip, ip,
631 $ b, 1, info )
632 CALL chkxer( 'ZSYTRS_AA_2STAGE', infot, nout, lerr, ok )
633 infot = 3
634 CALL zsytrs_aa_2stage( 'U', 0, -1, a, 1, a, 1, ip, ip,
635 $ b, 1, info )
636 CALL chkxer( 'ZSYTRS_AA_2STAGE', infot, nout, lerr, ok )
637 infot = 5
638 CALL zsytrs_aa_2stage( 'U', 2, 1, a, 1, a, 1, ip, ip,
639 $ b, 1, info )
640 CALL chkxer( 'ZSYTRS_AA_2STAGE', infot, nout, lerr, ok )
641 infot = 7
642 CALL zsytrs_aa_2stage( 'U', 2, 1, a, 2, a, 1, ip, ip,
643 $ b, 1, info )
644 CALL chkxer( 'ZSYTRS_AA_2STAGE', infot, nout, lerr, ok )
645 infot = 11
646 CALL zsytrs_aa_2stage( 'U', 2, 1, a, 2, a, 8, ip, ip,
647 $ b, 1, info )
648 CALL chkxer( 'ZSYTRS_AA_STAGE', infot, nout, lerr, ok )
649*
650 END IF
651*
652* Print a summary line.
653*
654 CALL alaesm( path, ok, nout )
655*
656 RETURN
657*
658* End of ZERRSY
659*
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 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_aa_2stage(uplo, n, a, lda, tb, ltb, ipiv, ipiv2, work, lwork, info)
ZSYTRF_AA_2STAGE
subroutine zsytrf_aa(uplo, n, a, lda, ipiv, work, lwork, info)
ZSYTRF_AA
Definition zsytrf_aa.f:132
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_aa_2stage(uplo, n, nrhs, a, lda, tb, ltb, ipiv, ipiv2, b, ldb, info)
ZSYTRS_AA_2STAGE
subroutine zsytrs_aa(uplo, n, nrhs, a, lda, ipiv, b, ldb, work, lwork, info)
ZSYTRS_AA
Definition zsytrs_aa.f:131
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
logical function lsamen(n, ca, cb)
LSAMEN
Definition lsamen.f:74
Here is the call graph for this function:
Here is the caller graph for this function: