55
56
57
58
59
60
61 CHARACTER*3 PATH
62 INTEGER NUNIT
63
64
65
66
67
68
69 INTEGER NMAX
70 parameter( nmax = 4 )
71
72
73 CHARACTER*2 C2
74 INTEGER I, INFO, J
75 REAL ANRM, RCOND
76
77
78 INTEGER IP( NMAX )
79 REAL R( NMAX ), R1( NMAX ), R2( NMAX )
80 COMPLEX A( NMAX, NMAX ), AF( NMAX, NMAX ), B( NMAX ),
81 $ E( NMAX ), W( 2*NMAX ), X( NMAX )
82
83
84 LOGICAL LSAMEN
86
87
96
97
98 LOGICAL LERR, OK
99 CHARACTER*32 SRNAMT
100 INTEGER INFOT, NOUT
101
102
103 COMMON / infoc / infot, nout, ok, lerr
104 COMMON / srnamc / srnamt
105
106
107 INTRINSIC cmplx, real
108
109
110
111 nout = nunit
112 WRITE( nout, fmt = * )
113 c2 = path( 2: 3 )
114
115
116
117 DO 20 j = 1, nmax
118 DO 10 i = 1, nmax
119 a( i, j ) = cmplx( 1. / real( i+j ), -1. / real( i+j ) )
120 af( i, j ) = cmplx( 1. / real( i+j ), -1. / real( i+j ) )
121 10 CONTINUE
122 b( j ) = 0.e+0
123 e( j ) = 0.e+0
124 r1( j ) = 0.e+0
125 r2( j ) = 0.e+0
126 w( j ) = 0.e+0
127 x( j ) = 0.e+0
128 ip( j ) = j
129 20 CONTINUE
130 anrm = 1.0
131 ok = .true.
132
133 IF(
lsamen( 2, c2,
'HE' ) )
THEN
134
135
136
137
138
139
140
141 srnamt = 'CHETRF'
142 infot = 1
143 CALL chetrf(
'/', 0, a, 1, ip, w, 1, info )
144 CALL chkxer(
'CHETRF', infot, nout, lerr, ok )
145 infot = 2
146 CALL chetrf(
'U', -1, a, 1, ip, w, 1, info )
147 CALL chkxer(
'CHETRF', infot, nout, lerr, ok )
148 infot = 4
149 CALL chetrf(
'U', 2, a, 1, ip, w, 4, info )
150 CALL chkxer(
'CHETRF', infot, nout, lerr, ok )
151 infot = 7
152 CALL chetrf(
'U', 0, a, 1, ip, w, 0, info )
153 CALL chkxer(
'CHETRF', infot, nout, lerr, ok )
154 infot = 7
155 CALL chetrf(
'U', 0, a, 1, ip, w, -2, info )
156 CALL chkxer(
'CHETRF', infot, nout, lerr, ok )
157
158
159
160 srnamt = 'CHETF2'
161 infot = 1
162 CALL chetf2(
'/', 0, a, 1, ip, info )
163 CALL chkxer(
'CHETF2', infot, nout, lerr, ok )
164 infot = 2
165 CALL chetf2(
'U', -1, a, 1, ip, info )
166 CALL chkxer(
'CHETF2', infot, nout, lerr, ok )
167 infot = 4
168 CALL chetf2(
'U', 2, a, 1, ip, info )
169 CALL chkxer(
'CHETF2', infot, nout, lerr, ok )
170
171
172
173 srnamt = 'CHETRI'
174 infot = 1
175 CALL chetri(
'/', 0, a, 1, ip, w, info )
176 CALL chkxer(
'CHETRI', infot, nout, lerr, ok )
177 infot = 2
178 CALL chetri(
'U', -1, a, 1, ip, w, info )
179 CALL chkxer(
'CHETRI', infot, nout, lerr, ok )
180 infot = 4
181 CALL chetri(
'U', 2, a, 1, ip, w, info )
182 CALL chkxer(
'CHETRI', infot, nout, lerr, ok )
183
184
185
186 srnamt = 'CHETRI2'
187 infot = 1
188 CALL chetri2(
'/', 0, a, 1, ip, w, 1, info )
189 CALL chkxer(
'CHETRI2', infot, nout, lerr, ok )
190 infot = 2
191 CALL chetri2(
'U', -1, a, 1, ip, w, 1, info )
192 CALL chkxer(
'CHETRI2', infot, nout, lerr, ok )
193 infot = 4
194 CALL chetri2(
'U', 2, a, 1, ip, w, 1, info )
195 CALL chkxer(
'CHETRI2', infot, nout, lerr, ok )
196
197
198
199 srnamt = 'CHETRI2X'
200 infot = 1
201 CALL chetri2x(
'/', 0, a, 1, ip, w, 1, info )
202 CALL chkxer(
'CHETRI2X', infot, nout, lerr, ok )
203 infot = 2
204 CALL chetri2x(
'U', -1, a, 1, ip, w, 1, info )
205 CALL chkxer(
'CHETRI2X', infot, nout, lerr, ok )
206 infot = 4
207 CALL chetri2x(
'U', 2, a, 1, ip, w, 1, info )
208 CALL chkxer(
'CHETRI2X', infot, nout, lerr, ok )
209
210
211
212 srnamt = 'CHETRS'
213 infot = 1
214 CALL chetrs(
'/', 0, 0, a, 1, ip, b, 1, info )
215 CALL chkxer(
'CHETRS', infot, nout, lerr, ok )
216 infot = 2
217 CALL chetrs(
'U', -1, 0, a, 1, ip, b, 1, info )
218 CALL chkxer(
'CHETRS', infot, nout, lerr, ok )
219 infot = 3
220 CALL chetrs(
'U', 0, -1, a, 1, ip, b, 1, info )
221 CALL chkxer(
'CHETRS', infot, nout, lerr, ok )
222 infot = 5
223 CALL chetrs(
'U', 2, 1, a, 1, ip, b, 2, info )
224 CALL chkxer(
'CHETRS', infot, nout, lerr, ok )
225 infot = 8
226 CALL chetrs(
'U', 2, 1, a, 2, ip, b, 1, info )
227 CALL chkxer(
'CHETRS', infot, nout, lerr, ok )
228
229
230
231 srnamt = 'CHERFS'
232 infot = 1
233 CALL cherfs(
'/', 0, 0, a, 1, af, 1, ip, b, 1, x, 1, r1, r2, w,
234 $ r, info )
235 CALL chkxer(
'CHERFS', infot, nout, lerr, ok )
236 infot = 2
237 CALL cherfs(
'U', -1, 0, a, 1, af, 1, ip, b, 1, x, 1, r1, r2,
238 $ w, r, info )
239 CALL chkxer(
'CHERFS', infot, nout, lerr, ok )
240 infot = 3
241 CALL cherfs(
'U', 0, -1, a, 1, af, 1, ip, b, 1, x, 1, r1, r2,
242 $ w, r, info )
243 CALL chkxer(
'CHERFS', infot, nout, lerr, ok )
244 infot = 5
245 CALL cherfs(
'U', 2, 1, a, 1, af, 2, ip, b, 2, x, 2, r1, r2, w,
246 $ r, info )
247 CALL chkxer(
'CHERFS', infot, nout, lerr, ok )
248 infot = 7
249 CALL cherfs(
'U', 2, 1, a, 2, af, 1, ip, b, 2, x, 2, r1, r2, w,
250 $ r, info )
251 CALL chkxer(
'CHERFS', infot, nout, lerr, ok )
252 infot = 10
253 CALL cherfs(
'U', 2, 1, a, 2, af, 2, ip, b, 1, x, 2, r1, r2, w,
254 $ r, info )
255 CALL chkxer(
'CHERFS', infot, nout, lerr, ok )
256 infot = 12
257 CALL cherfs(
'U', 2, 1, a, 2, af, 2, ip, b, 2, x, 1, r1, r2, w,
258 $ r, info )
259 CALL chkxer(
'CHERFS', infot, nout, lerr, ok )
260
261
262
263 srnamt = 'CHECON'
264 infot = 1
265 CALL checon(
'/', 0, a, 1, ip, anrm, rcond, w, info )
266 CALL chkxer(
'CHECON', infot, nout, lerr, ok )
267 infot = 2
268 CALL checon(
'U', -1, a, 1, ip, anrm, rcond, w, info )
269 CALL chkxer(
'CHECON', infot, nout, lerr, ok )
270 infot = 4
271 CALL checon(
'U', 2, a, 1, ip, anrm, rcond, w, info )
272 CALL chkxer(
'CHECON', infot, nout, lerr, ok )
273 infot = 6
274 CALL checon(
'U', 1, a, 1, ip, -anrm, rcond, w, info )
275 CALL chkxer(
'CHECON', infot, nout, lerr, ok )
276
277 ELSE IF(
lsamen( 2, c2,
'HR' ) )
THEN
278
279
280
281
282
283
284
285 srnamt = 'CHETRF_ROOK'
286 infot = 1
288 CALL chkxer(
'CHETRF_ROOK', infot, nout, lerr, ok )
289 infot = 2
291 CALL chkxer(
'CHETRF_ROOK', infot, nout, lerr, ok )
292 infot = 4
294 CALL chkxer(
'CHETRF_ROOK', infot, nout, lerr, ok )
295 infot = 7
297 CALL chkxer(
'CHETRF_ROOK', infot, nout, lerr, ok )
298 infot = 7
300 CALL chkxer(
'CHETRF_ROOK', infot, nout, lerr, ok )
301
302
303
304 srnamt = 'CHETF2_ROOK'
305 infot = 1
307 CALL chkxer(
'CHETF2_ROOK', infot, nout, lerr, ok )
308 infot = 2
310 CALL chkxer(
'CHETF2_ROOK', infot, nout, lerr, ok )
311 infot = 4
313 CALL chkxer(
'CHETF2_ROOK', infot, nout, lerr, ok )
314
315
316
317 srnamt = 'CHETRI_ROOK'
318 infot = 1
320 CALL chkxer(
'CHETRI_ROOK', infot, nout, lerr, ok )
321 infot = 2
323 CALL chkxer(
'CHETRI_ROOK', infot, nout, lerr, ok )
324 infot = 4
326 CALL chkxer(
'CHETRI_ROOK', infot, nout, lerr, ok )
327
328
329
330 srnamt = 'CHETRS_ROOK'
331 infot = 1
332 CALL chetrs_rook(
'/', 0, 0, a, 1, ip, b, 1, info )
333 CALL chkxer(
'CHETRS_ROOK', infot, nout, lerr, ok )
334 infot = 2
335 CALL chetrs_rook(
'U', -1, 0, a, 1, ip, b, 1, info )
336 CALL chkxer(
'CHETRS_ROOK', infot, nout, lerr, ok )
337 infot = 3
338 CALL chetrs_rook(
'U', 0, -1, a, 1, ip, b, 1, info )
339 CALL chkxer(
'CHETRS_ROOK', infot, nout, lerr, ok )
340 infot = 5
341 CALL chetrs_rook(
'U', 2, 1, a, 1, ip, b, 2, info )
342 CALL chkxer(
'CHETRS_ROOK', infot, nout, lerr, ok )
343 infot = 8
344 CALL chetrs_rook(
'U', 2, 1, a, 2, ip, b, 1, info )
345 CALL chkxer(
'CHETRS_ROOK', infot, nout, lerr, ok )
346
347
348
349 srnamt = 'CHECON_ROOK'
350 infot = 1
351 CALL checon_rook(
'/', 0, a, 1, ip, anrm, rcond, w, info )
352 CALL chkxer(
'CHECON_ROOK', infot, nout, lerr, ok )
353 infot = 2
354 CALL checon_rook(
'U', -1, a, 1, ip, anrm, rcond, w, info )
355 CALL chkxer(
'CHECON_ROOK', infot, nout, lerr, ok )
356 infot = 4
357 CALL checon_rook(
'U', 2, a, 1, ip, anrm, rcond, w, info )
358 CALL chkxer(
'CHECON_ROOK', infot, nout, lerr, ok )
359 infot = 6
360 CALL checon_rook(
'U', 1, a, 1, ip, -anrm, rcond, w, info )
361 CALL chkxer(
'CHECON_ROOK', infot, nout, lerr, ok )
362
363 ELSE IF(
lsamen( 2, c2,
'HK' ) )
THEN
364
365
366
367
368
369
370
371
372
373
374
375 srnamt = 'CHETRF_RK'
376 infot = 1
377 CALL chetrf_rk(
'/', 0, a, 1, e, ip, w, 1, info )
378 CALL chkxer(
'CHETRF_RK', infot, nout, lerr, ok )
379 infot = 2
380 CALL chetrf_rk(
'U', -1, a, 1, e, ip, w, 1, info )
381 CALL chkxer(
'CHETRF_RK', infot, nout, lerr, ok )
382 infot = 4
383 CALL chetrf_rk(
'U', 2, a, 1, e, ip, w, 4, info )
384 CALL chkxer(
'CHETRF_RK', infot, nout, lerr, ok )
385 infot = 8
386 CALL chetrf_rk(
'U', 0, a, 1, e, ip, w, 0, info )
387 CALL chkxer(
'CHETRF_RK', infot, nout, lerr, ok )
388 infot = 8
389 CALL chetrf_rk(
'U', 0, a, 1, e, ip, w, -2, info )
390 CALL chkxer(
'CHETRF_RK', infot, nout, lerr, ok )
391
392
393
394 srnamt = 'CHETF2_RK'
395 infot = 1
396 CALL chetf2_rk(
'/', 0, a, 1, e, ip, info )
397 CALL chkxer(
'CHETF2_RK', infot, nout, lerr, ok )
398 infot = 2
399 CALL chetf2_rk(
'U', -1, a, 1, e, ip, info )
400 CALL chkxer(
'CHETF2_RK', infot, nout, lerr, ok )
401 infot = 4
402 CALL chetf2_rk(
'U', 2, a, 1, e, ip, info )
403 CALL chkxer(
'CHETF2_RK', infot, nout, lerr, ok )
404
405
406
407 srnamt = 'CHETRI_3'
408 infot = 1
409 CALL chetri_3(
'/', 0, a, 1, e, ip, w, 1, info )
410 CALL chkxer(
'CHETRI_3', infot, nout, lerr, ok )
411 infot = 2
412 CALL chetri_3(
'U', -1, a, 1, e, ip, w, 1, info )
413 CALL chkxer(
'CHETRI_3', infot, nout, lerr, ok )
414 infot = 4
415 CALL chetri_3(
'U', 2, a, 1, e, ip, w, 1, info )
416 CALL chkxer(
'CHETRI_3', infot, nout, lerr, ok )
417 infot = 8
418 CALL chetri_3(
'U', 0, a, 1, e, ip, w, 0, info )
419 CALL chkxer(
'CHETRI_3', infot, nout, lerr, ok )
420 infot = 8
421 CALL chetri_3(
'U', 0, a, 1, e, ip, w, -2, info )
422 CALL chkxer(
'CHETRI_3', infot, nout, lerr, ok )
423
424
425
426 srnamt = 'CHETRI_3X'
427 infot = 1
428 CALL chetri_3x(
'/', 0, a, 1, e, ip, w, 1, info )
429 CALL chkxer(
'CHETRI_3X', infot, nout, lerr, ok )
430 infot = 2
431 CALL chetri_3x(
'U', -1, a, 1, e, ip, w, 1, info )
432 CALL chkxer(
'CHETRI_3X', infot, nout, lerr, ok )
433 infot = 4
434 CALL chetri_3x(
'U', 2, a, 1, e, ip, w, 1, info )
435 CALL chkxer(
'CHETRI_3X', infot, nout, lerr, ok )
436
437
438
439 srnamt = 'CHETRS_3'
440 infot = 1
441 CALL chetrs_3(
'/', 0, 0, a, 1, e, ip, b, 1, info )
442 CALL chkxer(
'CHETRS_3', infot, nout, lerr, ok )
443 infot = 2
444 CALL chetrs_3(
'U', -1, 0, a, 1, e, ip, b, 1, info )
445 CALL chkxer(
'CHETRS_3', infot, nout, lerr, ok )
446 infot = 3
447 CALL chetrs_3(
'U', 0, -1, a, 1, e, ip, b, 1, info )
448 CALL chkxer(
'CHETRS_3', infot, nout, lerr, ok )
449 infot = 5
450 CALL chetrs_3(
'U', 2, 1, a, 1, e, ip, b, 2, info )
451 CALL chkxer(
'CHETRS_3', infot, nout, lerr, ok )
452 infot = 9
453 CALL chetrs_3(
'U', 2, 1, a, 2, e, ip, b, 1, info )
454 CALL chkxer(
'CHETRS_3', infot, nout, lerr, ok )
455
456
457
458 srnamt = 'CHECON_3'
459 infot = 1
460 CALL checon_3(
'/', 0, a, 1, e, ip, anrm, rcond, w, info )
461 CALL chkxer(
'CHECON_3', infot, nout, lerr, ok )
462 infot = 2
463 CALL checon_3(
'U', -1, a, 1, e, ip, anrm, rcond, w, info )
464 CALL chkxer(
'CHECON_3', infot, nout, lerr, ok )
465 infot = 4
466 CALL checon_3(
'U', 2, a, 1, e, ip, anrm, rcond, w, info )
467 CALL chkxer(
'CHECON_3', infot, nout, lerr, ok )
468 infot = 7
469 CALL checon_3(
'U', 1, a, 1, e, ip, -1.0e0, rcond, w, info)
470 CALL chkxer(
'CHECON_3', infot, nout, lerr, ok )
471
472 ELSE IF(
lsamen( 2, c2,
'HA' ) )
THEN
473
474
475
476
477
478
479 srnamt = 'CHETRF_AA'
480 infot = 1
481 CALL chetrf_aa(
'/', 0, a, 1, ip, w, 1, info )
482 CALL chkxer(
'CHETRF_AA', infot, nout, lerr, ok )
483 infot = 2
484 CALL chetrf_aa(
'U', -1, a, 1, ip, w, 1, info )
485 CALL chkxer(
'CHETRF_AA', infot, nout, lerr, ok )
486 infot = 4
487 CALL chetrf_aa(
'U', 2, a, 1, ip, w, 4, info )
488 CALL chkxer(
'CHETRF_AA', infot, nout, lerr, ok )
489 infot = 7
490 CALL chetrf_aa(
'U', 2, a, 2, ip, w, 0, info )
491 CALL chkxer(
'CHETRF_AA', infot, nout, lerr, ok )
492 infot = 7
493 CALL chetrf_aa(
'U', 2, a, 2, ip, w, -2, info )
494 CALL chkxer(
'CHETRF_AA', infot, nout, lerr, ok )
495
496
497
498 srnamt = 'CHETRS_AA'
499 infot = 1
500 CALL chetrs_aa(
'/', 0, 0, a, 1, ip, b, 1, w, 1, info )
501 CALL chkxer(
'CHETRS_AA', infot, nout, lerr, ok )
502 infot = 2
503 CALL chetrs_aa(
'U', -1, 0, a, 1, ip, b, 1, w, 1, info )
504 CALL chkxer(
'CHETRS_AA', infot, nout, lerr, ok )
505 infot = 3
506 CALL chetrs_aa(
'U', 0, -1, a, 1, ip, b, 1, w, 1, info )
507 CALL chkxer(
'CHETRS_AA', infot, nout, lerr, ok )
508 infot = 5
509 CALL chetrs_aa(
'U', 2, 1, a, 1, ip, b, 2, w, 1, info )
510 CALL chkxer(
'CHETRS_AA', infot, nout, lerr, ok )
511 infot = 8
512 CALL chetrs_aa(
'U', 2, 1, a, 2, ip, b, 1, w, 1, info )
513 CALL chkxer(
'CHETRS_AA', infot, nout, lerr, ok )
514 infot = 10
515 CALL chetrs_aa(
'U', 2, 1, a, 2, ip, b, 2, w, 0, info )
516 CALL chkxer(
'CHETRS_AA', infot, nout, lerr, ok )
517 infot = 10
518 CALL chetrs_aa(
'U', 2, 1, a, 2, ip, b, 2, w, -2, info )
519 CALL chkxer(
'CHETRS_AA', infot, nout, lerr, ok )
520
521 ELSE IF(
lsamen( 2, c2,
'H2' ) )
THEN
522
523
524
525
526
527
528 srnamt = 'CHETRF_AA_2STAGE'
529 infot = 1
530 CALL chetrf_aa_2stage(
'/', 0, a, 1, a, 1, ip, ip, w, 1,
531 $ info )
532 CALL chkxer(
'CHETRF_AA_2STAGE', infot, nout, lerr, ok )
533 infot = 2
534 CALL chetrf_aa_2stage(
'U', -1, a, 1, a, 1, ip, ip, w, 1,
535 $ info )
536 CALL chkxer(
'CHETRF_AA_2STAGE', infot, nout, lerr, ok )
537 infot = 4
538 CALL chetrf_aa_2stage(
'U', 2, a, 1, a, 2, ip, ip, w, 1,
539 $ info )
540 CALL chkxer(
'CHETRF_AA_2STAGE', infot, nout, lerr, ok )
541 infot = 6
542 CALL chetrf_aa_2stage(
'U', 2, a, 2, a, 1, ip, ip, w, 1,
543 $ info )
544 CALL chkxer(
'CHETRF_AA_2STAGE', infot, nout, lerr, ok )
545 infot = 10
546 CALL chetrf_aa_2stage(
'U', 2, a, 2, a, 8, ip, ip, w, 0,
547 $ info )
548 CALL chkxer(
'CHETRF_AA_2STAGE', infot, nout, lerr, ok )
549
550
551
552 srnamt = 'CHETRS_AA_2STAGE'
553 infot = 1
555 $ b, 1, info )
556 CALL chkxer(
'CHETRS_AA_2STAGE', infot, nout, lerr, ok )
557 infot = 2
559 $ b, 1, info )
560 CALL chkxer(
'CHETRS_AA_2STAGE', infot, nout, lerr, ok )
561 infot = 3
563 $ b, 1, info )
564 CALL chkxer(
'CHETRS_AA_2STAGE', infot, nout, lerr, ok )
565 infot = 5
567 $ b, 1, info )
568 CALL chkxer(
'CHETRS_AA_2STAGE', infot, nout, lerr, ok )
569 infot = 7
571 $ b, 1, info )
572 CALL chkxer(
'CHETRS_AA_2STAGE', infot, nout, lerr, ok )
573 infot = 11
575 $ b, 1, info )
576 CALL chkxer(
'CHETRS_AA_STAGE', infot, nout, lerr, ok )
577
578
579
580
581
582 ELSE IF(
lsamen( 2, c2,
'HP' ) )
THEN
583
584
585
586 srnamt = 'CHPTRF'
587 infot = 1
588 CALL chptrf(
'/', 0, a, ip, info )
589 CALL chkxer(
'CHPTRF', infot, nout, lerr, ok )
590 infot = 2
591 CALL chptrf(
'U', -1, a, ip, info )
592 CALL chkxer(
'CHPTRF', infot, nout, lerr, ok )
593
594
595
596 srnamt = 'CHPTRI'
597 infot = 1
598 CALL chptri(
'/', 0, a, ip, w, info )
599 CALL chkxer(
'CHPTRI', infot, nout, lerr, ok )
600 infot = 2
601 CALL chptri(
'U', -1, a, ip, w, info )
602 CALL chkxer(
'CHPTRI', infot, nout, lerr, ok )
603
604
605
606 srnamt = 'CHPTRS'
607 infot = 1
608 CALL chptrs(
'/', 0, 0, a, ip, b, 1, info )
609 CALL chkxer(
'CHPTRS', infot, nout, lerr, ok )
610 infot = 2
611 CALL chptrs(
'U', -1, 0, a, ip, b, 1, info )
612 CALL chkxer(
'CHPTRS', infot, nout, lerr, ok )
613 infot = 3
614 CALL chptrs(
'U', 0, -1, a, ip, b, 1, info )
615 CALL chkxer(
'CHPTRS', infot, nout, lerr, ok )
616 infot = 7
617 CALL chptrs(
'U', 2, 1, a, ip, b, 1, info )
618 CALL chkxer(
'CHPTRS', infot, nout, lerr, ok )
619
620
621
622 srnamt = 'CHPRFS'
623 infot = 1
624 CALL chprfs(
'/', 0, 0, a, af, ip, b, 1, x, 1, r1, r2, w, r,
625 $ info )
626 CALL chkxer(
'CHPRFS', infot, nout, lerr, ok )
627 infot = 2
628 CALL chprfs(
'U', -1, 0, a, af, ip, b, 1, x, 1, r1, r2, w, r,
629 $ info )
630 CALL chkxer(
'CHPRFS', infot, nout, lerr, ok )
631 infot = 3
632 CALL chprfs(
'U', 0, -1, a, af, ip, b, 1, x, 1, r1, r2, w, r,
633 $ info )
634 CALL chkxer(
'CHPRFS', infot, nout, lerr, ok )
635 infot = 8
636 CALL chprfs(
'U', 2, 1, a, af, ip, b, 1, x, 2, r1, r2, w, r,
637 $ info )
638 CALL chkxer(
'CHPRFS', infot, nout, lerr, ok )
639 infot = 10
640 CALL chprfs(
'U', 2, 1, a, af, ip, b, 2, x, 1, r1, r2, w, r,
641 $ info )
642 CALL chkxer(
'CHPRFS', infot, nout, lerr, ok )
643
644
645
646 srnamt = 'CHPCON'
647 infot = 1
648 CALL chpcon(
'/', 0, a, ip, anrm, rcond, w, info )
649 CALL chkxer(
'CHPCON', infot, nout, lerr, ok )
650 infot = 2
651 CALL chpcon(
'U', -1, a, ip, anrm, rcond, w, info )
652 CALL chkxer(
'CHPCON', infot, nout, lerr, ok )
653 infot = 5
654 CALL chpcon(
'U', 1, a, ip, -anrm, rcond, w, info )
655 CALL chkxer(
'CHPCON', infot, nout, lerr, ok )
656 END IF
657
658
659
660 CALL alaesm( path, ok, nout )
661
662 RETURN
663
664
665
subroutine alaesm(path, ok, nout)
ALAESM
subroutine chkxer(srnamt, infot, nout, lerr, ok)
subroutine checon_3(uplo, n, a, lda, e, ipiv, anorm, rcond, work, info)
CHECON_3
subroutine csycon_3(uplo, n, a, lda, e, ipiv, anorm, rcond, work, info)
CSYCON_3
subroutine checon_rook(uplo, n, a, lda, ipiv, anorm, rcond, work, info)
CHECON_ROOK estimates the reciprocal of the condition number fort HE matrices using factorization obt...
subroutine checon(uplo, n, a, lda, ipiv, anorm, rcond, work, info)
CHECON
subroutine cherfs(uplo, n, nrhs, a, lda, af, ldaf, ipiv, b, ldb, x, ldx, ferr, berr, work, rwork, info)
CHERFS
subroutine chetf2_rk(uplo, n, a, lda, e, ipiv, info)
CHETF2_RK computes the factorization of a complex Hermitian indefinite matrix using the bounded Bunch...
subroutine chetf2_rook(uplo, n, a, lda, ipiv, info)
CHETF2_ROOK computes the factorization of a complex Hermitian indefinite matrix using the bounded Bun...
subroutine chetf2(uplo, n, a, lda, ipiv, info)
CHETF2 computes the factorization of a complex Hermitian matrix, using the diagonal pivoting method (...
subroutine chetrf_aa_2stage(uplo, n, a, lda, tb, ltb, ipiv, ipiv2, work, lwork, info)
CHETRF_AA_2STAGE
subroutine chetrf_aa(uplo, n, a, lda, ipiv, work, lwork, info)
CHETRF_AA
subroutine chetrf_rk(uplo, n, a, lda, e, ipiv, work, lwork, info)
CHETRF_RK computes the factorization of a complex Hermitian indefinite matrix using the bounded Bunch...
subroutine chetrf_rook(uplo, n, a, lda, ipiv, work, lwork, info)
CHETRF_ROOK computes the factorization of a complex Hermitian indefinite matrix using the bounded Bun...
subroutine chetrf(uplo, n, a, lda, ipiv, work, lwork, info)
CHETRF
subroutine chetri2(uplo, n, a, lda, ipiv, work, lwork, info)
CHETRI2
subroutine chetri2x(uplo, n, a, lda, ipiv, work, nb, info)
CHETRI2X
subroutine chetri_3(uplo, n, a, lda, e, ipiv, work, lwork, info)
CHETRI_3
subroutine chetri_3x(uplo, n, a, lda, e, ipiv, work, nb, info)
CHETRI_3X
subroutine chetri_rook(uplo, n, a, lda, ipiv, work, info)
CHETRI_ROOK computes the inverse of HE matrix using the factorization obtained with the bounded Bunch...
subroutine chetri(uplo, n, a, lda, ipiv, work, info)
CHETRI
subroutine chetrs_3(uplo, n, nrhs, a, lda, e, ipiv, b, ldb, info)
CHETRS_3
subroutine chetrs_aa_2stage(uplo, n, nrhs, a, lda, tb, ltb, ipiv, ipiv2, b, ldb, info)
CHETRS_AA_2STAGE
subroutine chetrs_aa(uplo, n, nrhs, a, lda, ipiv, b, ldb, work, lwork, info)
CHETRS_AA
subroutine chetrs_rook(uplo, n, nrhs, a, lda, ipiv, b, ldb, info)
CHETRS_ROOK computes the solution to a system of linear equations A * X = B for HE matrices using fac...
subroutine chetrs(uplo, n, nrhs, a, lda, ipiv, b, ldb, info)
CHETRS
subroutine chpcon(uplo, n, ap, ipiv, anorm, rcond, work, info)
CHPCON
subroutine chprfs(uplo, n, nrhs, ap, afp, ipiv, b, ldb, x, ldx, ferr, berr, work, rwork, info)
CHPRFS
subroutine chptrf(uplo, n, ap, ipiv, info)
CHPTRF
subroutine chptri(uplo, n, ap, ipiv, work, info)
CHPTRI
subroutine chptrs(uplo, n, nrhs, ap, ipiv, b, ldb, info)
CHPTRS
logical function lsamen(n, ca, cb)
LSAMEN