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

◆ alaerh()

subroutine alaerh ( character*3  path,
character*( * )  subnam,
integer  info,
integer  infoe,
character*( * )  opts,
integer  m,
integer  n,
integer  kl,
integer  ku,
integer  n5,
integer  imat,
integer  nfail,
integer  nerrs,
integer  nout 
)

ALAERH

Purpose:
 ALAERH is an error handler for the LAPACK routines.  It prints the
 header if this is the first error message and prints the error code
 and form of recovery, if any.  The character evaluations in this
 routine may make it slow, but it should not be called once the LAPACK
 routines are fully debugged.
Parameters
[in]PATH
          PATH is CHARACTER*3
          The LAPACK path name of subroutine SUBNAM.
[in]SUBNAM
          SUBNAM is CHARACTER*(*)
          The name of the subroutine that returned an error code.
[in]INFO
          INFO is INTEGER
          The error code returned from routine SUBNAM.
[in]INFOE
          INFOE is INTEGER
          The expected error code from routine SUBNAM, if SUBNAM were
          error-free.  If INFOE = 0, an error message is printed, but
          if INFOE.NE.0, we assume only the return code INFO is wrong.
[in]OPTS
          OPTS is CHARACTER*(*)
          The character options to the subroutine SUBNAM, concatenated
          into a single character string.  For example, UPLO = 'U',
          TRANS = 'T', and DIAG = 'N' for a triangular routine would
          be specified as OPTS = 'UTN'.
[in]M
          M is INTEGER
          The matrix row dimension.
[in]N
          N is INTEGER
          The matrix column dimension.  Accessed only if PATH = xGE or
          xGB.
[in]KL
          KL is INTEGER
          The number of sub-diagonals of the matrix.  Accessed only if
          PATH = xGB, xPB, or xTB.  Also used for NRHS for PATH = xLS.
[in]KU
          KU is INTEGER
          The number of super-diagonals of the matrix.  Accessed only
          if PATH = xGB.
[in]N5
          N5 is INTEGER
          A fifth integer parameter, may be the blocksize NB or the
          number of right hand sides NRHS.
[in]IMAT
          IMAT is INTEGER
          The matrix type.
[in]NFAIL
          NFAIL is INTEGER
          The number of prior tests that did not pass the threshold;
          used to determine if the header should be printed.
[in,out]NERRS
          NERRS is INTEGER
          On entry, the number of errors already detected; used to
          determine if the header should be printed.
          On exit, NERRS is increased by 1.
[in]NOUT
          NOUT is INTEGER
          The unit number on which results are to be printed.
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.

Definition at line 145 of file alaerh.f.

147*
148* -- LAPACK test routine --
149* -- LAPACK is a software package provided by Univ. of Tennessee, --
150* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
151*
152* .. Scalar Arguments ..
153 CHARACTER*3 PATH
154 CHARACTER*( * ) SUBNAM
155 CHARACTER*( * ) OPTS
156 INTEGER IMAT, INFO, INFOE, KL, KU, M, N, N5, NERRS,
157 $ NFAIL, NOUT
158* ..
159*
160* =====================================================================
161*
162* .. Local Scalars ..
163 CHARACTER UPLO
164 CHARACTER*2 P2
165 CHARACTER*3 C3
166* ..
167* .. External Functions ..
168 LOGICAL LSAME, LSAMEN
169 EXTERNAL lsame, lsamen
170* ..
171* .. Intrinsic Functions ..
172 INTRINSIC len_trim
173* ..
174* .. External Subroutines ..
175 EXTERNAL aladhd, alahd
176* ..
177* .. Executable Statements ..
178*
179 IF( info.EQ.0 )
180 $ RETURN
181 p2 = path( 2: 3 )
182 c3 = subnam( 4: 6 )
183*
184* Print the header if this is the first error message.
185*
186 IF( nfail.EQ.0 .AND. nerrs.EQ.0 ) THEN
187 IF( lsamen( 3, c3, 'SV ' ) .OR. lsamen( 3, c3, 'SVX' ) ) THEN
188 CALL aladhd( nout, path )
189 ELSE
190 CALL alahd( nout, path )
191 END IF
192 END IF
193 nerrs = nerrs + 1
194*
195* Print the message detailing the error and form of recovery,
196* if any.
197*
198 IF( lsamen( 2, p2, 'GE' ) ) THEN
199*
200* xGE: General matrices
201*
202 IF( lsamen( 3, c3, 'TRF' ) ) THEN
203 IF( info.NE.infoe .AND. infoe.NE.0 ) THEN
204 WRITE( nout, fmt = 9988 )
205 $ subnam(1:len_trim( subnam )), info, infoe, m, n, n5,
206 $ imat
207 ELSE
208 WRITE( nout, fmt = 9975 )
209 $ subnam(1:len_trim( subnam )), info, m, n, n5, imat
210 END IF
211 IF( info.NE.0 )
212 $ WRITE( nout, fmt = 9949 )
213*
214 ELSE IF( lsamen( 3, c3, 'SV ' ) ) THEN
215*
216 IF( info.NE.infoe .AND. infoe.NE.0 ) THEN
217 WRITE( nout, fmt = 9984 )
218 $ subnam(1:len_trim( subnam )), info, infoe, n, n5,
219 $ imat
220 ELSE
221 WRITE( nout, fmt = 9970 )
222 $ subnam(1:len_trim( subnam )), info, n, n5, imat
223 END IF
224*
225 ELSE IF( lsamen( 3, c3, 'SVX' ) ) THEN
226*
227 IF( info.NE.infoe .AND. infoe.NE.0 ) THEN
228 WRITE( nout, fmt = 9992 )
229 $ subnam(1:len_trim( subnam )), info, infoe,
230 $ opts( 1: 1 ), opts( 2: 2 ), n, n5, imat
231 ELSE
232 WRITE( nout, fmt = 9997 )
233 $ subnam(1:len_trim( subnam )), info, opts( 1: 1 ),
234 $ opts( 2: 2 ), n, n5, imat
235 END IF
236*
237 ELSE IF( lsamen( 3, c3, 'TRI' ) ) THEN
238*
239 WRITE( nout, fmt = 9971 )
240 $ subnam(1:len_trim( subnam )), info, n, n5, imat
241*
242 ELSE IF( lsamen( 5, subnam( 2: 6 ), 'LATMS' ) ) THEN
243*
244 WRITE( nout, fmt = 9978 )
245 $ subnam(1:len_trim( subnam )), info, m, n, imat
246*
247 ELSE IF( lsamen( 3, c3, 'CON' ) ) THEN
248*
249 WRITE( nout, fmt = 9969 )
250 $ subnam(1:len_trim( subnam )), info, opts( 1: 1 ), m,
251 $ imat
252*
253 ELSE IF( lsamen( 3, c3, 'LS ' ) ) THEN
254*
255 WRITE( nout, fmt = 9965 )
256 $ subnam(1:len_trim( subnam )), info, opts( 1: 1 ), m, n,
257 $ kl, n5, imat
258*
259 ELSE IF( lsamen( 3, c3, 'LSX' ) .OR. lsamen( 3, c3, 'LSS' ) )
260 $ THEN
261*
262 WRITE( nout, fmt = 9974 )
263 $ subnam(1:len_trim( subnam )), info, m, n, kl, n5, imat
264*
265 ELSE
266*
267 WRITE( nout, fmt = 9963 )
268 $ subnam(1:len_trim( subnam )), info, opts( 1: 1 ), m, n5,
269 $ imat
270 END IF
271*
272 ELSE IF( lsamen( 2, p2, 'GB' ) ) THEN
273*
274* xGB: General band matrices
275*
276 IF( lsamen( 3, c3, 'TRF' ) ) THEN
277 IF( info.NE.infoe .AND. infoe.NE.0 ) THEN
278 WRITE( nout, fmt = 9989 )
279 $ subnam(1:len_trim( subnam )), info, infoe, m, n, kl,
280 $ ku, n5, imat
281 ELSE
282 WRITE( nout, fmt = 9976 )
283 $ subnam(1:len_trim( subnam )), info, m, n, kl, ku, n5,
284 $ imat
285 END IF
286 IF( info.NE.0 )
287 $ WRITE( nout, fmt = 9949 )
288*
289 ELSE IF( lsamen( 3, c3, 'SV ' ) ) THEN
290*
291 IF( info.NE.infoe .AND. infoe.NE.0 ) THEN
292 WRITE( nout, fmt = 9986 )
293 $ subnam(1:len_trim( subnam )), info, infoe, n, kl, ku,
294 $ n5, imat
295 ELSE
296 WRITE( nout, fmt = 9972 )
297 $ subnam(1:len_trim( subnam )), info, n, kl, ku, n5,
298 $ imat
299 END IF
300*
301 ELSE IF( lsamen( 3, c3, 'SVX' ) ) THEN
302*
303 IF( info.NE.infoe .AND. infoe.NE.0 ) THEN
304 WRITE( nout, fmt = 9993 )
305 $ subnam(1:len_trim( subnam )), info, infoe,
306 $ opts( 1: 1 ), opts( 2: 2 ), n, kl, ku, n5, imat
307 ELSE
308 WRITE( nout, fmt = 9998 )
309 $ subnam(1:len_trim( subnam )), info, opts( 1: 1 ),
310 $ opts( 2: 2 ), n, kl, ku, n5, imat
311 END IF
312*
313 ELSE IF( lsamen( 5, subnam( 2: 6 ), 'LATMS' ) ) THEN
314*
315 WRITE( nout, fmt = 9977 )
316 $ subnam(1:len_trim( subnam )), info, m, n, kl, ku, imat
317*
318 ELSE IF( lsamen( 3, c3, 'CON' ) ) THEN
319*
320 WRITE( nout, fmt = 9968 )
321 $ subnam(1:len_trim( subnam )), info, opts( 1: 1 ), m, kl,
322 $ ku, imat
323*
324 ELSE
325*
326 WRITE( nout, fmt = 9964 )
327 $ subnam(1:len_trim( subnam )), info, opts( 1: 1 ), m, kl,
328 $ ku, n5, imat
329 END IF
330*
331 ELSE IF( lsamen( 2, p2, 'GT' ) ) THEN
332*
333* xGT: General tridiagonal matrices
334*
335 IF( lsamen( 3, c3, 'TRF' ) ) THEN
336 IF( info.NE.infoe .AND. infoe.NE.0 ) THEN
337 WRITE( nout, fmt = 9987 )
338 $ subnam(1:len_trim( subnam )), info, infoe, n, imat
339 ELSE
340 WRITE( nout, fmt = 9973 )
341 $ subnam(1:len_trim( subnam )), info, n, imat
342 END IF
343 IF( info.NE.0 )
344 $ WRITE( nout, fmt = 9949 )
345*
346 ELSE IF( lsamen( 3, c3, 'SV ' ) ) THEN
347*
348 IF( info.NE.infoe .AND. infoe.NE.0 ) THEN
349 WRITE( nout, fmt = 9984 )
350 $ subnam(1:len_trim( subnam )), info, infoe, n, n5,
351 $ imat
352 ELSE
353 WRITE( nout, fmt = 9970 )
354 $ subnam(1:len_trim( subnam )), info, n, n5, imat
355 END IF
356*
357 ELSE IF( lsamen( 3, c3, 'SVX' ) ) THEN
358*
359 IF( info.NE.infoe .AND. infoe.NE.0 ) THEN
360 WRITE( nout, fmt = 9992 )
361 $ subnam(1:len_trim( subnam )), info, infoe,
362 $ opts( 1: 1 ), opts( 2: 2 ), n, n5, imat
363 ELSE
364 WRITE( nout, fmt = 9997 )
365 $ subnam(1:len_trim( subnam )), info, opts( 1: 1 ),
366 $ opts( 2: 2 ), n, n5, imat
367 END IF
368*
369 ELSE IF( lsamen( 3, c3, 'CON' ) ) THEN
370*
371 WRITE( nout, fmt = 9969 )
372 $ subnam(1:len_trim( subnam )), info, opts( 1: 1 ), m,
373 $ imat
374*
375 ELSE
376*
377 WRITE( nout, fmt = 9963 )
378 $ subnam(1:len_trim( subnam )), info, opts( 1: 1 ), m, n5,
379 $ imat
380 END IF
381*
382 ELSE IF( lsamen( 2, p2, 'PO' ) ) THEN
383*
384* xPO: Symmetric or Hermitian positive definite matrices
385*
386 uplo = opts( 1: 1 )
387 IF( lsamen( 3, c3, 'TRF' ) ) THEN
388 IF( info.NE.infoe .AND. infoe.NE.0 ) THEN
389 WRITE( nout, fmt = 9980 )
390 $ subnam(1:len_trim( subnam )), info, infoe, uplo, m,
391 $ n5, imat
392 ELSE
393 WRITE( nout, fmt = 9956 )
394 $ subnam(1:len_trim( subnam )), info, uplo, m, n5, imat
395 END IF
396 IF( info.NE.0 )
397 $ WRITE( nout, fmt = 9949 )
398*
399 ELSE IF( lsamen( 3, c3, 'SV ' ) ) THEN
400*
401 IF( info.NE.infoe .AND. infoe.NE.0 ) THEN
402 WRITE( nout, fmt = 9979 )
403 $ subnam(1:len_trim( subnam )), info, infoe, uplo, n,
404 $ n5, imat
405 ELSE
406 WRITE( nout, fmt = 9955 )
407 $ subnam(1:len_trim( subnam )), info, uplo, n, n5, imat
408 END IF
409*
410 ELSE IF( lsamen( 3, c3, 'SVX' ) ) THEN
411*
412 IF( info.NE.infoe .AND. infoe.NE.0 ) THEN
413 WRITE( nout, fmt = 9990 )
414 $ subnam(1:len_trim( subnam )), info, infoe,
415 $ opts( 1: 1 ), opts( 2: 2 ), n, n5, imat
416 ELSE
417 WRITE( nout, fmt = 9995 )
418 $ subnam(1:len_trim( subnam )), info, opts( 1: 1 ),
419 $ opts( 2: 2 ), n, n5, imat
420 END IF
421*
422 ELSE IF( lsamen( 3, c3, 'TRI' ) ) THEN
423*
424 WRITE( nout, fmt = 9956 )
425 $ subnam(1:len_trim( subnam )), info, uplo, m, n5, imat
426*
427 ELSE IF( lsamen( 5, subnam( 2: 6 ), 'LATMS' ) .OR.
428 $ lsamen( 3, c3, 'CON' ) ) THEN
429*
430 WRITE( nout, fmt = 9960 )
431 $ subnam(1:len_trim( subnam )), info, uplo, m, imat
432*
433 ELSE
434*
435 WRITE( nout, fmt = 9955 )
436 $ subnam(1:len_trim( subnam )), info, uplo, m, n5, imat
437 END IF
438*
439 ELSE IF( lsamen( 2, p2, 'PS' ) ) THEN
440*
441* xPS: Symmetric or Hermitian positive semi-definite matrices
442*
443 uplo = opts( 1: 1 )
444 IF( lsamen( 3, c3, 'TRF' ) ) THEN
445 IF( info.NE.infoe .AND. infoe.NE.0 ) THEN
446 WRITE( nout, fmt = 9980 )subnam, info, infoe, uplo, m,
447 $ n5, imat
448 ELSE
449 WRITE( nout, fmt = 9956 )subnam, info, uplo, m, n5, imat
450 END IF
451 IF( info.NE.0 )
452 $ WRITE( nout, fmt = 9949 )
453*
454 ELSE IF( lsamen( 3, c3, 'SV ' ) ) THEN
455*
456 IF( info.NE.infoe .AND. infoe.NE.0 ) THEN
457 WRITE( nout, fmt = 9979 )subnam, info, infoe, uplo, n,
458 $ n5, imat
459 ELSE
460 WRITE( nout, fmt = 9955 )subnam, info, uplo, n, n5, imat
461 END IF
462*
463 ELSE IF( lsamen( 3, c3, 'SVX' ) ) THEN
464*
465 IF( info.NE.infoe .AND. infoe.NE.0 ) THEN
466 WRITE( nout, fmt = 9990 )subnam, info, infoe,
467 $ opts( 1: 1 ), opts( 2: 2 ), n, n5, imat
468 ELSE
469 WRITE( nout, fmt = 9995 )subnam, info, opts( 1: 1 ),
470 $ opts( 2: 2 ), n, n5, imat
471 END IF
472*
473 ELSE IF( lsamen( 3, c3, 'TRI' ) ) THEN
474*
475 WRITE( nout, fmt = 9956 )subnam, info, uplo, m, n5, imat
476*
477 ELSE IF( lsamen( 5, subnam( 2: 6 ), 'LATMT' ) .OR.
478 $ lsamen( 3, c3, 'CON' ) ) THEN
479*
480 WRITE( nout, fmt = 9960 )subnam, info, uplo, m, imat
481*
482 ELSE
483*
484 WRITE( nout, fmt = 9955 )subnam, info, uplo, m, n5, imat
485 END IF
486*
487 ELSE IF( lsamen( 2, p2, 'SY' )
488 $ .OR. lsamen( 2, p2, 'SR' )
489 $ .OR. lsamen( 2, p2, 'SK' )
490 $ .OR. lsamen( 2, p2, 'HE' )
491 $ .OR. lsamen( 2, p2, 'HR' )
492 $ .OR. lsamen( 2, p2, 'HK' )
493 $ .OR. lsamen( 2, p2, 'HA' ) ) THEN
494*
495* xSY: symmetric indefinite matrices
496* with partial (Bunch-Kaufman) pivoting;
497* xSR: symmetric indefinite matrices
498* with rook (bounded Bunch-Kaufman) pivoting;
499* xSK: symmetric indefinite matrices
500* with rook (bounded Bunch-Kaufman) pivoting,
501* new storage format;
502* xHE: Hermitian indefinite matrices
503* with partial (Bunch-Kaufman) pivoting.
504* xHR: Hermitian indefinite matrices
505* with rook (bounded Bunch-Kaufman) pivoting;
506* xHK: Hermitian indefinite matrices
507* with rook (bounded Bunch-Kaufman) pivoting,
508* new storage format;
509* xHA: Hermitian matrices
510* Aasen Algorithm
511*
512 uplo = opts( 1: 1 )
513 IF( lsamen( 3, c3, 'TRF' ) ) THEN
514 IF( info.NE.infoe .AND. infoe.NE.0 ) THEN
515 WRITE( nout, fmt = 9980 )
516 $ subnam(1:len_trim( subnam )), info, infoe, uplo, m,
517 $ n5, imat
518 ELSE
519 WRITE( nout, fmt = 9956 )
520 $ subnam(1:len_trim( subnam )), info, uplo, m, n5, imat
521 END IF
522 IF( info.NE.0 )
523 $ WRITE( nout, fmt = 9949 )
524*
525 ELSE IF( lsamen( 2, c3, 'SV' ) ) THEN
526*
527 IF( info.NE.infoe .AND. infoe.NE.0 ) THEN
528 WRITE( nout, fmt = 9979 )
529 $ subnam(1:len_trim( subnam )), info, infoe, uplo, n,
530 $ n5, imat
531 ELSE
532 WRITE( nout, fmt = 9955 )
533 $ subnam(1:len_trim( subnam )), info, uplo, n, n5, imat
534 END IF
535*
536 ELSE IF( lsamen( 3, c3, 'SVX' ) ) THEN
537*
538 IF( info.NE.infoe .AND. infoe.NE.0 ) THEN
539 WRITE( nout, fmt = 9990 )
540 $ subnam(1:len_trim( subnam )), info, infoe,
541 $ opts( 1: 1 ), opts( 2: 2 ), n, n5, imat
542 ELSE
543 WRITE( nout, fmt = 9995 )
544 $ subnam(1:len_trim( subnam )), info, opts( 1: 1 ),
545 $ opts( 2: 2 ), n, n5, imat
546 END IF
547*
548 ELSE IF( lsamen( 5, subnam( 2: 6 ), 'LATMS' ) .OR.
549 $ lsamen( 3, c3, 'TRI' ) .OR. lsamen( 3, c3, 'CON' ) )
550 $ THEN
551*
552 WRITE( nout, fmt = 9960 )
553 $ subnam(1:len_trim( subnam )), info, uplo, m, imat
554*
555 ELSE
556*
557 WRITE( nout, fmt = 9955 )
558 $ subnam(1:len_trim( subnam )), info, uplo, m, n5, imat
559 END IF
560*
561 ELSE IF( lsamen( 2, p2, 'PP' ) .OR. lsamen( 2, p2, 'SP' ) .OR.
562 $ lsamen( 2, p2, 'HP' ) ) THEN
563*
564* xPP, xHP, or xSP: Symmetric or Hermitian packed matrices
565*
566 uplo = opts( 1: 1 )
567 IF( lsamen( 3, c3, 'TRF' ) ) THEN
568 IF( info.NE.infoe .AND. infoe.NE.0 ) THEN
569 WRITE( nout, fmt = 9983 )
570 $ subnam(1:len_trim( subnam )), info, infoe, uplo, m,
571 $ imat
572 ELSE
573 WRITE( nout, fmt = 9960 )
574 $ subnam(1:len_trim( subnam )), info, uplo, m, imat
575 END IF
576 IF( info.NE.0 )
577 $ WRITE( nout, fmt = 9949 )
578*
579 ELSE IF( lsamen( 3, c3, 'SV ' ) ) THEN
580*
581 IF( info.NE.infoe .AND. infoe.NE.0 ) THEN
582 WRITE( nout, fmt = 9979 )
583 $ subnam(1:len_trim( subnam )), info, infoe, uplo, n,
584 $ n5, imat
585 ELSE
586 WRITE( nout, fmt = 9955 )
587 $ subnam(1:len_trim( subnam )), info, uplo, n, n5, imat
588 END IF
589*
590 ELSE IF( lsamen( 3, c3, 'SVX' ) ) THEN
591*
592 IF( info.NE.infoe .AND. infoe.NE.0 ) THEN
593 WRITE( nout, fmt = 9990 )
594 $ subnam(1:len_trim( subnam )), info, infoe,
595 $ opts( 1: 1 ), opts( 2: 2 ), n, n5, imat
596 ELSE
597 WRITE( nout, fmt = 9995 )
598 $ subnam(1:len_trim( subnam )), info, opts( 1: 1 ),
599 $ opts( 2: 2 ), n, n5, imat
600 END IF
601*
602 ELSE IF( lsamen( 5, subnam( 2: 6 ), 'LATMS' ) .OR.
603 $ lsamen( 3, c3, 'TRI' ) .OR. lsamen( 3, c3, 'CON' ) )
604 $ THEN
605*
606 WRITE( nout, fmt = 9960 )
607 $ subnam(1:len_trim( subnam )), info, uplo, m, imat
608*
609 ELSE
610*
611 WRITE( nout, fmt = 9955 )
612 $ subnam(1:len_trim( subnam )), info, uplo, m, n5, imat
613 END IF
614*
615 ELSE IF( lsamen( 2, p2, 'PB' ) ) THEN
616*
617* xPB: Symmetric (Hermitian) positive definite band matrix
618*
619 uplo = opts( 1: 1 )
620 IF( lsamen( 3, c3, 'TRF' ) ) THEN
621 IF( info.NE.infoe .AND. infoe.NE.0 ) THEN
622 WRITE( nout, fmt = 9982 )
623 $ subnam(1:len_trim( subnam )), info, infoe, uplo, m,
624 $ kl, n5, imat
625 ELSE
626 WRITE( nout, fmt = 9958 )
627 $ subnam(1:len_trim( subnam )), info, uplo, m, kl, n5,
628 $ imat
629 END IF
630 IF( info.NE.0 )
631 $ WRITE( nout, fmt = 9949 )
632*
633 ELSE IF( lsamen( 3, c3, 'SV ' ) ) THEN
634*
635 IF( info.NE.infoe .AND. infoe.NE.0 ) THEN
636 WRITE( nout, fmt = 9981 )
637 $ subnam(1:len_trim( subnam )), info, infoe, uplo, n,
638 $ kl, n5, imat
639 ELSE
640 WRITE( nout, fmt = 9957 )
641 $ subnam(1:len_trim( subnam )), info, uplo, n, kl, n5,
642 $ imat
643 END IF
644*
645 ELSE IF( lsamen( 3, c3, 'SVX' ) ) THEN
646*
647 IF( info.NE.infoe .AND. infoe.NE.0 ) THEN
648 WRITE( nout, fmt = 9991 )
649 $ subnam(1:len_trim( subnam )), info, infoe,
650 $ opts( 1: 1 ), opts( 2: 2 ), n, kl, n5, imat
651 ELSE
652 WRITE( nout, fmt = 9996 )
653 $ subnam(1:len_trim( subnam )), info, opts( 1: 1 ),
654 $ opts( 2: 2 ), n, kl, n5, imat
655 END IF
656*
657 ELSE IF( lsamen( 5, subnam( 2: 6 ), 'LATMS' ) .OR.
658 $ lsamen( 3, c3, 'CON' ) ) THEN
659*
660 WRITE( nout, fmt = 9959 )
661 $ subnam(1:len_trim( subnam )), info, uplo, m, kl, imat
662*
663 ELSE
664*
665 WRITE( nout, fmt = 9957 )
666 $ subnam(1:len_trim( subnam )), info, uplo, m, kl, n5,
667 $ imat
668 END IF
669*
670 ELSE IF( lsamen( 2, p2, 'PT' ) ) THEN
671*
672* xPT: Positive definite tridiagonal matrices
673*
674 IF( lsamen( 3, c3, 'TRF' ) ) THEN
675 IF( info.NE.infoe .AND. infoe.NE.0 ) THEN
676 WRITE( nout, fmt = 9987 )
677 $ subnam(1:len_trim( subnam )), info, infoe, n, imat
678 ELSE
679 WRITE( nout, fmt = 9973 )
680 $ subnam(1:len_trim( subnam )), info, n, imat
681 END IF
682 IF( info.NE.0 )
683 $ WRITE( nout, fmt = 9949 )
684*
685 ELSE IF( lsamen( 3, c3, 'SV ' ) ) THEN
686*
687 IF( info.NE.infoe .AND. infoe.NE.0 ) THEN
688 WRITE( nout, fmt = 9984 )
689 $ subnam(1:len_trim( subnam )), info, infoe, n, n5,
690 $ imat
691 ELSE
692 WRITE( nout, fmt = 9970 )
693 $ subnam(1:len_trim( subnam )), info, n, n5, imat
694 END IF
695*
696 ELSE IF( lsamen( 3, c3, 'SVX' ) ) THEN
697*
698 IF( info.NE.infoe .AND. infoe.NE.0 ) THEN
699 WRITE( nout, fmt = 9994 )
700 $ subnam(1:len_trim( subnam )), info, infoe,
701 $ opts( 1: 1 ), n, n5, imat
702 ELSE
703 WRITE( nout, fmt = 9999 )
704 $ subnam(1:len_trim( subnam )), info, opts( 1: 1 ), n,
705 $ n5, imat
706 END IF
707*
708 ELSE IF( lsamen( 3, c3, 'CON' ) ) THEN
709*
710 IF( lsame( subnam( 1: 1 ), 'S' ) .OR.
711 $ lsame( subnam( 1: 1 ), 'D' ) ) THEN
712 WRITE( nout, fmt = 9973 )
713 $ subnam(1:len_trim( subnam )), info, m, imat
714 ELSE
715 WRITE( nout, fmt = 9969 )
716 $ subnam(1:len_trim( subnam )), info, opts( 1: 1 ), m,
717 $ imat
718 END IF
719*
720 ELSE
721*
722 WRITE( nout, fmt = 9963 )
723 $ subnam(1:len_trim( subnam )), info, opts( 1: 1 ), m, n5,
724 $ imat
725 END IF
726*
727 ELSE IF( lsamen( 2, p2, 'TR' ) ) THEN
728*
729* xTR: Triangular matrix
730*
731 IF( lsamen( 3, c3, 'TRI' ) ) THEN
732 WRITE( nout, fmt = 9961 )
733 $ subnam(1:len_trim( subnam )), info, opts( 1: 1 ),
734 $ opts( 2: 2 ), m, n5, imat
735 ELSE IF( lsamen( 3, c3, 'CON' ) ) THEN
736 WRITE( nout, fmt = 9967 )
737 $ subnam(1:len_trim( subnam )), info, opts( 1: 1 ),
738 $ opts( 2: 2 ), opts( 3: 3 ), m, imat
739 ELSE IF( lsamen( 5, subnam( 2: 6 ), 'LATRS' ) ) THEN
740 WRITE( nout, fmt = 9952 )
741 $ subnam(1:len_trim( subnam )), info, opts( 1: 1 ),
742 $ opts( 2: 2 ), opts( 3: 3 ), opts( 4: 4 ), m, imat
743 ELSE
744 WRITE( nout, fmt = 9953 )
745 $ subnam(1:len_trim( subnam )), info, opts( 1: 1 ),
746 $ opts( 2: 2 ), opts( 3: 3 ), m, n5, imat
747 END IF
748*
749 ELSE IF( lsamen( 2, p2, 'TP' ) ) THEN
750*
751* xTP: Triangular packed matrix
752*
753 IF( lsamen( 3, c3, 'TRI' ) ) THEN
754 WRITE( nout, fmt = 9962 )
755 $ subnam(1:len_trim( subnam )), info, opts( 1: 1 ),
756 $ opts( 2: 2 ), m, imat
757 ELSE IF( lsamen( 3, c3, 'CON' ) ) THEN
758 WRITE( nout, fmt = 9967 )
759 $ subnam(1:len_trim( subnam )), info, opts( 1: 1 ),
760 $ opts( 2: 2 ), opts( 3: 3 ), m, imat
761 ELSE IF( lsamen( 5, subnam( 2: 6 ), 'LATPS' ) ) THEN
762 WRITE( nout, fmt = 9952 )
763 $ subnam(1:len_trim( subnam )), info, opts( 1: 1 ),
764 $ opts( 2: 2 ), opts( 3: 3 ), opts( 4: 4 ), m, imat
765 ELSE
766 WRITE( nout, fmt = 9953 )
767 $ subnam(1:len_trim( subnam )), info, opts( 1: 1 ),
768 $ opts( 2: 2 ), opts( 3: 3 ), m, n5, imat
769 END IF
770*
771 ELSE IF( lsamen( 2, p2, 'TB' ) ) THEN
772*
773* xTB: Triangular band matrix
774*
775 IF( lsamen( 3, c3, 'CON' ) ) THEN
776 WRITE( nout, fmt = 9966 )
777 $ subnam(1:len_trim( subnam )), info, opts( 1: 1 ),
778 $ opts( 2: 2 ), opts( 3: 3 ), m, kl, imat
779 ELSE IF( lsamen( 5, subnam( 2: 6 ), 'LATBS' ) ) THEN
780 WRITE( nout, fmt = 9951 )
781 $ subnam(1:len_trim( subnam )), info, opts( 1: 1 ),
782 $ opts( 2: 2 ), opts( 3: 3 ), opts( 4: 4 ), m, kl, imat
783 ELSE
784 WRITE( nout, fmt = 9954 )
785 $ subnam(1:len_trim( subnam )), info, opts( 1: 1 ),
786 $ opts( 2: 2 ), opts( 3: 3 ), m, kl, n5, imat
787 END IF
788*
789 ELSE IF( lsamen( 2, p2, 'QR' ) ) THEN
790*
791* xQR: QR factorization
792*
793 IF( lsamen( 3, c3, 'QRS' ) ) THEN
794 WRITE( nout, fmt = 9974 )
795 $ subnam(1:len_trim( subnam )), info, m, n, kl, n5, imat
796 ELSE IF( lsamen( 5, subnam( 2: 6 ), 'LATMS' ) ) THEN
797 WRITE( nout, fmt = 9978 )
798 $ subnam(1:len_trim( subnam )), info, m, n, imat
799 END IF
800*
801 ELSE IF( lsamen( 2, p2, 'QK' ) ) THEN
802*
803* xQK: truncated QR factorization with pivoting
804*
805 IF( lsamen( 7, subnam( 2: 8 ), 'GEQP3RK' ) ) THEN
806 WRITE( nout, fmt = 9930 )
807 $ subnam(1:len_trim( subnam )), info, m, n, kl, n5, imat
808 ELSE IF( lsamen( 5, subnam( 2: 6 ), 'LATMS' ) ) THEN
809 WRITE( nout, fmt = 9978 )
810 $ subnam(1:len_trim( subnam )), info, m, n, imat
811 END IF
812*
813 ELSE IF( lsamen( 2, p2, 'LQ' ) ) THEN
814*
815* xLQ: LQ factorization
816*
817 IF( lsamen( 3, c3, 'LQS' ) ) THEN
818 WRITE( nout, fmt = 9974 )
819 $ subnam(1:len_trim( subnam )), info, m, n, kl, n5, imat
820 ELSE IF( lsamen( 5, subnam( 2: 6 ), 'LATMS' ) ) THEN
821 WRITE( nout, fmt = 9978 )
822 $ subnam(1:len_trim( subnam )), info, m, n, imat
823 END IF
824*
825 ELSE IF( lsamen( 2, p2, 'QL' ) ) THEN
826*
827* xQL: QL factorization
828*
829 IF( lsamen( 3, c3, 'QLS' ) ) THEN
830 WRITE( nout, fmt = 9974 )
831 $ subnam(1:len_trim( subnam )), info, m, n, kl, n5, imat
832 ELSE IF( lsamen( 5, subnam( 2: 6 ), 'LATMS' ) ) THEN
833 WRITE( nout, fmt = 9978 )
834 $ subnam(1:len_trim( subnam )), info, m, n, imat
835 END IF
836*
837 ELSE IF( lsamen( 2, p2, 'RQ' ) ) THEN
838*
839* xRQ: RQ factorization
840*
841 IF( lsamen( 3, c3, 'RQS' ) ) THEN
842 WRITE( nout, fmt = 9974 )
843 $ subnam(1:len_trim( subnam )), info, m, n, kl, n5, imat
844 ELSE IF( lsamen( 5, subnam( 2: 6 ), 'LATMS' ) ) THEN
845 WRITE( nout, fmt = 9978 )
846 $ subnam(1:len_trim( subnam )), info, m, n, imat
847 END IF
848*
849 ELSE IF( lsamen( 2, p2, 'LU' ) ) THEN
850*
851 IF( info.NE.infoe .AND. infoe.NE.0 ) THEN
852 WRITE( nout, fmt = 9988 )
853 $ subnam(1:len_trim( subnam )), info, infoe, m, n, n5,
854 $ imat
855 ELSE
856 WRITE( nout, fmt = 9975 )
857 $ subnam(1:len_trim( subnam )), info, m, n, n5, imat
858 END IF
859*
860 ELSE IF( lsamen( 2, p2, 'CH' ) ) THEN
861*
862 IF( info.NE.infoe .AND. infoe.NE.0 ) THEN
863 WRITE( nout, fmt = 9985 )
864 $ subnam(1:len_trim( subnam )), info, infoe, m, n5, imat
865 ELSE
866 WRITE( nout, fmt = 9971 )
867 $ subnam(1:len_trim( subnam )), info, m, n5, imat
868 END IF
869*
870 ELSE
871*
872* Print a generic message if the path is unknown.
873*
874 WRITE( nout, fmt = 9950 )
875 $ subnam(1:len_trim( subnam )), info
876 END IF
877*
878* Description of error message (alphabetical, left to right)
879*
880* SUBNAM, INFO, FACT, N, NRHS, IMAT
881*
882 9999 FORMAT( ' *** Error code from ', a, '=', i5, ', FACT=''', a1,
883 $ ''', N=', i5, ', NRHS=', i4, ', type ', i2 )
884*
885* SUBNAM, INFO, FACT, TRANS, N, KL, KU, NRHS, IMAT
886*
887 9998 FORMAT( ' *** Error code from ', a, ' =', i5, / ' ==> FACT=''',
888 $ a1, ''', TRANS=''', a1, ''', N=', i5, ', KL=', i5, ', KU=',
889 $ i5, ', NRHS=', i4, ', type ', i1 )
890*
891* SUBNAM, INFO, FACT, TRANS, N, NRHS, IMAT
892*
893 9997 FORMAT( ' *** Error code from ', a, ' =', i5, / ' ==> FACT=''',
894 $ a1, ''', TRANS=''', a1, ''', N =', i5, ', NRHS =', i4,
895 $ ', type ', i2 )
896*
897* SUBNAM, INFO, FACT, UPLO, N, KD, NRHS, IMAT
898*
899 9996 FORMAT( ' *** Error code from ', a, ' =', i5, / ' ==> FACT=''',
900 $ a1, ''', UPLO=''', a1, ''', N=', i5, ', KD=', i5, ', NRHS=',
901 $ i4, ', type ', i2 )
902*
903* SUBNAM, INFO, FACT, UPLO, N, NRHS, IMAT
904*
905 9995 FORMAT( ' *** Error code from ', a, ' =', i5, / ' ==> FACT=''',
906 $ a1, ''', UPLO=''', a1, ''', N =', i5, ', NRHS =', i4,
907 $ ', type ', i2 )
908*
909* SUBNAM, INFO, INFOE, FACT, N, NRHS, IMAT
910*
911 9994 FORMAT( ' *** ', a, ' returned with INFO =', i5, ' instead of ',
912 $ i2, / ' ==> FACT=''', a1, ''', N =', i5, ', NRHS =', i4,
913 $ ', type ', i2 )
914*
915* SUBNAM, INFO, INFOE, FACT, TRANS, N, KL, KU, NRHS, IMAT
916*
917 9993 FORMAT( ' *** ', a, ' returned with INFO =', i5, ' instead of ',
918 $ i2, / ' ==> FACT=''', a1, ''', TRANS=''', a1, ''', N=', i5,
919 $ ', KL=', i5, ', KU=', i5, ', NRHS=', i4, ', type ', i1 )
920*
921* SUBNAM, INFO, INFOE, FACT, TRANS, N, NRHS, IMAT
922*
923 9992 FORMAT( ' *** ', a, ' returned with INFO =', i5, ' instead of ',
924 $ i2, / ' ==> FACT=''', a1, ''', TRANS=''', a1, ''', N =', i5,
925 $ ', NRHS =', i4, ', type ', i2 )
926*
927* SUBNAM, INFO, INFOE, FACT, UPLO, N, KD, NRHS, IMAT
928*
929 9991 FORMAT( ' *** ', a, ' returned with INFO =', i5, ' instead of ',
930 $ i2, / ' ==> FACT=''', a1, ''', UPLO=''', a1, ''', N=', i5,
931 $ ', KD=', i5, ', NRHS=', i4, ', type ', i2 )
932*
933* SUBNAM, INFO, INFOE, FACT, UPLO, N, NRHS, IMAT
934*
935 9990 FORMAT( ' *** ', a, ' returned with INFO =', i5, ' instead of ',
936 $ i2, / ' ==> FACT=''', a1, ''', UPLO=''', a1, ''', N =', i5,
937 $ ', NRHS =', i4, ', type ', i2 )
938*
939* SUBNAM, INFO, INFOE, M, N, KL, KU, NB, IMAT
940*
941 9989 FORMAT( ' *** ', a, ' returned with INFO =', i5, ' instead of ',
942 $ i2, / ' ==> M = ', i5, ', N =', i5, ', KL =', i5, ', KU =',
943 $ i5, ', NB =', i4, ', type ', i2 )
944*
945* SUBNAM, INFO, INFOE, M, N, NB, IMAT
946*
947 9988 FORMAT( ' *** ', a, ' returned with INFO =', i5, ' instead of ',
948 $ i2, / ' ==> M =', i5, ', N =', i5, ', NB =', i4, ', type ',
949 $ i2 )
950*
951* SUBNAM, INFO, INFOE, N, IMAT
952*
953 9987 FORMAT( ' *** ', a, ' returned with INFO =', i5, ' instead of ',
954 $ i2, ' for N=', i5, ', type ', i2 )
955*
956* SUBNAM, INFO, INFOE, N, KL, KU, NRHS, IMAT
957*
958 9986 FORMAT( ' *** ', a, ' returned with INFO =', i5, ' instead of ',
959 $ i2, / ' ==> N =', i5, ', KL =', i5, ', KU =', i5,
960 $ ', NRHS =', i4, ', type ', i2 )
961*
962* SUBNAM, INFO, INFOE, N, NB, IMAT
963*
964 9985 FORMAT( ' *** ', a, ' returned with INFO =', i5, ' instead of ',
965 $ i2, / ' ==> N =', i5, ', NB =', i4, ', type ', i2 )
966*
967* SUBNAM, INFO, INFOE, N, NRHS, IMAT
968*
969 9984 FORMAT( ' *** ', a, ' returned with INFO =', i5, ' instead of ',
970 $ i2, / ' ==> N =', i5, ', NRHS =', i4, ', type ', i2 )
971*
972* SUBNAM, INFO, INFOE, UPLO, N, IMAT
973*
974 9983 FORMAT( ' *** ', a, ' returned with INFO =', i5, ' instead of ',
975 $ i2, / ' ==> UPLO = ''', a1, ''', N =', i5, ', type ', i2 )
976*
977* SUBNAM, INFO, INFOE, UPLO, N, KD, NB, IMAT
978*
979 9982 FORMAT( ' *** ', a, ' returned with INFO =', i5, ' instead of ',
980 $ i2, / ' ==> UPLO = ''', a1, ''', N =', i5, ', KD =', i5,
981 $ ', NB =', i4, ', type ', i2 )
982*
983* SUBNAM, INFO, INFOE, UPLO, N, KD, NRHS, IMAT
984*
985 9981 FORMAT( ' *** ', a, ' returned with INFO =', i5, ' instead of ',
986 $ i2, / ' ==> UPLO=''', a1, ''', N =', i5, ', KD =', i5,
987 $ ', NRHS =', i4, ', type ', i2 )
988*
989* SUBNAM, INFO, INFOE, UPLO, N, NB, IMAT
990*
991 9980 FORMAT( ' *** ', a, ' returned with INFO =', i5, ' instead of ',
992 $ i2, / ' ==> UPLO = ''', a1, ''', N =', i5, ', NB =', i4,
993 $ ', type ', i2 )
994*
995* SUBNAM, INFO, INFOE, UPLO, N, NRHS, IMAT
996*
997 9979 FORMAT( ' *** ', a, ' returned with INFO =', i5, ' instead of ',
998 $ i2, / ' ==> UPLO = ''', a1, ''', N =', i5, ', NRHS =', i4,
999 $ ', type ', i2 )
1000*
1001* SUBNAM, INFO, M, N, IMAT
1002*
1003 9978 FORMAT( ' *** Error code from ', a, ' =', i5, ' for M =', i5,
1004 $ ', N =', i5, ', type ', i2 )
1005*
1006* SUBNAM, INFO, M, N, KL, KU, IMAT
1007*
1008 9977 FORMAT( ' *** Error code from ', a, ' =', i5, / ' ==> M = ', i5,
1009 $ ', N =', i5, ', KL =', i5, ', KU =', i5, ', type ', i2 )
1010*
1011* SUBNAM, INFO, M, N, KL, KU, NB, IMAT
1012*
1013 9976 FORMAT( ' *** Error code from ', a, ' =', i5, / ' ==> M = ', i5,
1014 $ ', N =', i5, ', KL =', i5, ', KU =', i5, ', NB =', i4,
1015 $ ', type ', i2 )
1016*
1017* SUBNAM, INFO, M, N, NB, IMAT
1018*
1019 9975 FORMAT( ' *** Error code from ', a, '=', i5, ' for M=', i5,
1020 $ ', N=', i5, ', NB=', i4, ', type ', i2 )
1021*
1022* SUBNAM, INFO, M, N, NRHS, NB, IMAT
1023*
1024 9974 FORMAT( ' *** Error code from ', a, '=', i5, / ' ==> M =', i5,
1025 $ ', N =', i5, ', NRHS =', i4, ', NB =', i4, ', type ', i2 )
1026*
1027* SUBNAM, INFO, N, IMAT
1028*
1029 9973 FORMAT( ' *** Error code from ', a, ' =', i5, ' for N =', i5,
1030 $ ', type ', i2 )
1031*
1032* SUBNAM, INFO, N, KL, KU, NRHS, IMAT
1033*
1034 9972 FORMAT( ' *** Error code from ', a, ' =', i5, / ' ==> N =', i5,
1035 $ ', KL =', i5, ', KU =', i5, ', NRHS =', i4, ', type ', i2 )
1036*
1037* SUBNAM, INFO, N, NB, IMAT
1038*
1039 9971 FORMAT( ' *** Error code from ', a, '=', i5, ' for N=', i5,
1040 $ ', NB=', i4, ', type ', i2 )
1041*
1042* SUBNAM, INFO, N, NRHS, IMAT
1043*
1044 9970 FORMAT( ' *** Error code from ', a, ' =', i5, ' for N =', i5,
1045 $ ', NRHS =', i4, ', type ', i2 )
1046*
1047* SUBNAM, INFO, NORM, N, IMAT
1048*
1049 9969 FORMAT( ' *** Error code from ', a, ' =', i5, ' for NORM = ''',
1050 $ a1, ''', N =', i5, ', type ', i2 )
1051*
1052* SUBNAM, INFO, NORM, N, KL, KU, IMAT
1053*
1054 9968 FORMAT( ' *** Error code from ', a, ' =', i5, / ' ==> NORM =''',
1055 $ a1, ''', N =', i5, ', KL =', i5, ', KU =', i5, ', type ',
1056 $ i2 )
1057*
1058* SUBNAM, INFO, NORM, UPLO, DIAG, N, IMAT
1059*
1060 9967 FORMAT( ' *** Error code from ', a, ' =', i5, / ' ==> NORM=''',
1061 $ a1, ''', UPLO =''', a1, ''', DIAG=''', a1, ''', N =', i5,
1062 $ ', type ', i2 )
1063*
1064* SUBNAM, INFO, NORM, UPLO, DIAG, N, KD, IMAT
1065*
1066 9966 FORMAT( ' *** Error code from ', a, ' =', i5, / ' ==> NORM=''',
1067 $ a1, ''', UPLO =''', a1, ''', DIAG=''', a1, ''', N=', i5,
1068 $ ', KD=', i5, ', type ', i2 )
1069*
1070* SUBNAM, INFO, TRANS, M, N, NRHS, NB, IMAT
1071*
1072 9965 FORMAT( ' *** Error code from ', a, ' =', i5,
1073 $ / ' ==> TRANS = ''', a1, ''', M =', i5, ', N =', i5,
1074 $ ', NRHS =', i4, ', NB =', i4, ', type ', i2 )
1075*
1076* SUBNAM, INFO, TRANS, N, KL, KU, NRHS, IMAT
1077*
1078 9964 FORMAT( ' *** Error code from ', a, '=', i5, / ' ==> TRANS=''',
1079 $ a1, ''', N =', i5, ', KL =', i5, ', KU =', i5, ', NRHS =',
1080 $ i4, ', type ', i2 )
1081*
1082* SUBNAM, INFO, TRANS, N, NRHS, IMAT
1083*
1084 9963 FORMAT( ' *** Error code from ', a, ' =', i5,
1085 $ / ' ==> TRANS = ''', a1, ''', N =', i5, ', NRHS =', i4,
1086 $ ', type ', i2 )
1087*
1088* SUBNAM, INFO, UPLO, DIAG, N, IMAT
1089*
1090 9962 FORMAT( ' *** Error code from ', a, ' =', i5, / ' ==> UPLO=''',
1091 $ a1, ''', DIAG =''', a1, ''', N =', i5, ', type ', i2 )
1092*
1093* SUBNAM, INFO, UPLO, DIAG, N, NB, IMAT
1094*
1095 9961 FORMAT( ' *** Error code from ', a, ' =', i5, / ' ==> UPLO=''',
1096 $ a1, ''', DIAG =''', a1, ''', N =', i5, ', NB =', i4,
1097 $ ', type ', i2 )
1098*
1099* SUBNAM, INFO, UPLO, N, IMAT
1100*
1101 9960 FORMAT( ' *** Error code from ', a, ' =', i5, ' for UPLO = ''',
1102 $ a1, ''', N =', i5, ', type ', i2 )
1103*
1104* SUBNAM, INFO, UPLO, N, KD, IMAT
1105*
1106 9959 FORMAT( ' *** Error code from ', a, ' =', i5, / ' ==> UPLO = ''',
1107 $ a1, ''', N =', i5, ', KD =', i5, ', type ', i2 )
1108*
1109* SUBNAM, INFO, UPLO, N, KD, NB, IMAT
1110*
1111 9958 FORMAT( ' *** Error code from ', a, ' =', i5, / ' ==> UPLO = ''',
1112 $ a1, ''', N =', i5, ', KD =', i5, ', NB =', i4, ', type ',
1113 $ i2 )
1114*
1115* SUBNAM, INFO, UPLO, N, KD, NRHS, IMAT
1116*
1117 9957 FORMAT( ' *** Error code from ', a, '=', i5, / ' ==> UPLO = ''',
1118 $ a1, ''', N =', i5, ', KD =', i5, ', NRHS =', i4, ', type ',
1119 $ i2 )
1120*
1121* SUBNAM, INFO, UPLO, N, NB, IMAT
1122*
1123 9956 FORMAT( ' *** Error code from ', a, ' =', i5, / ' ==> UPLO = ''',
1124 $ a1, ''', N =', i5, ', NB =', i4, ', type ', i2 )
1125*
1126* SUBNAM, INFO, UPLO, N, NRHS, IMAT
1127*
1128 9955 FORMAT( ' *** Error code from ', a, ' =', i5, / ' ==> UPLO = ''',
1129 $ a1, ''', N =', i5, ', NRHS =', i4, ', type ', i2 )
1130*
1131* SUBNAM, INFO, UPLO, TRANS, DIAG, N, KD, NRHS, IMAT
1132*
1133 9954 FORMAT( ' *** Error code from ', a, ' =', i5, / ' ==> UPLO=''',
1134 $ a1, ''', TRANS=''', a1, ''', DIAG=''', a1, ''', N=', i5,
1135 $ ', KD=', i5, ', NRHS=', i4, ', type ', i2 )
1136*
1137* SUBNAM, INFO, UPLO, TRANS, DIAG, N, NRHS, IMAT
1138*
1139 9953 FORMAT( ' *** Error code from ', a, ' =', i5, / ' ==> UPLO=''',
1140 $ a1, ''', TRANS=''', a1, ''', DIAG=''', a1, ''', N =', i5,
1141 $ ', NRHS =', i4, ', type ', i2 )
1142*
1143* SUBNAM, INFO, UPLO, TRANS, DIAG, NORMIN, N, IMAT
1144*
1145 9952 FORMAT( ' *** Error code from ', a, ' =', i5, / ' ==> UPLO=''',
1146 $ a1, ''', TRANS=''', a1, ''', DIAG=''', a1, ''', NORMIN=''',
1147 $ a1, ''', N =', i5, ', type ', i2 )
1148*
1149* SUBNAM, INFO, UPLO, TRANS, DIAG, NORMIN, N, KD, IMAT
1150*
1151 9951 FORMAT( ' *** Error code from ', a, ' =', i5, / ' ==> UPLO=''',
1152 $ a1, ''', TRANS=''', a1, ''', DIAG=''', a1, ''', NORMIN=''',
1153 $ a1, ''', N=', i5, ', KD=', i5, ', type ', i2 )
1154*
1155* Unknown type
1156*
1157 9950 FORMAT( ' *** Error code from ', a, ' =', i5 )
1158*
1159* What we do next
1160*
1161 9949 FORMAT( ' ==> Doing only the condition estimate for this case' )
1162*
1163* SUBNAM, INFO, M, N, NB, IMAT
1164*
1165 9930 FORMAT( ' *** Error code from ', a, '=', i5, / ' ==> M =', i5,
1166 $ ', N =', i5, ', NX =', i5, ', NB =', i4, ', type ', i2 )
1167*
1168 RETURN
1169*
1170* End of ALAERH
1171*
subroutine aladhd(iounit, path)
ALADHD
Definition aladhd.f:90
subroutine alahd(iounit, path)
ALAHD
Definition alahd.f:107
logical function lsame(ca, cb)
LSAME
Definition lsame.f:48
logical function lsamen(n, ca, cb)
LSAMEN
Definition lsamen.f:74
Here is the call graph for this function: