434 SUBROUTINE cchk1( SNAME, EPS, THRESH, NOUT, NTRA, TRACE, REWI,
435 $ FATAL, NIDIM, IDIM, NKB, KB, NALF, ALF, NBET,
436 $ BET, NINC, INC, NMAX, INCMAX, A, AA, AS, X, XX,
437 $ XS, Y, YY, YS, YT, G )
449 PARAMETER ( ZERO = ( 0.0, 0.0 ), half = ( 0.5, 0.0 ) )
451 parameter( rzero = 0.0 )
454 INTEGER INCMAX, NALF, NBET, NIDIM, NINC, NKB, NMAX,
456 LOGICAL FATAL, REWI, TRACE
459 COMPLEX A( NMAX, NMAX ), AA( NMAX*NMAX ), ALF( NALF ),
460 $ as( nmax*nmax ), bet( nbet ), x( nmax ),
461 $ xs( nmax*incmax ), xx( nmax*incmax ),
462 $ y( nmax ), ys( nmax*incmax ), yt( nmax ),
465 INTEGER IDIM( NIDIM ), INC( NINC ), KB( NKB )
467 COMPLEX ALPHA, ALS, BETA, BLS, TRANSL
469 INTEGER I, IA, IB, IC, IKU, IM, IN, INCX, INCXS, INCY,
470 $ incys, ix, iy, kl, kls, ku, kus, laa, lda,
471 $ ldas, lx, ly, m, ml, ms, n, nargs, nc, nd, nk,
473 LOGICAL BANDED, FULL, NULL, RESET, SAME, TRAN
474 CHARACTER*1 TRANS, TRANSS
484 INTRINSIC abs, max, min
489 COMMON /infoc/infot, noutc, ok, lerr
493 full = sname( 3: 3 ).EQ.
'E'
494 banded = sname( 3: 3 ).EQ.
'B'
498 ELSE IF( banded )
THEN
512 $ m = max( n - nd, 0 )
514 $ m = min( n + nd, nmax )
524 kl = max( ku - 1, 0 )
541 null = n.LE.0.OR.m.LE.0
546 CALL cmake( sname( 2: 3 ),
' ',
' ', m, n, a, nmax, aa,
547 $ lda, kl, ku, reset, transl )
550 trans = ich( ic: ic )
551 tran = trans.EQ.
'T'.OR.trans.EQ.
'C'
568 CALL cmake(
'GE',
' ',
' ', 1, nl, x, 1, xx,
569 $ abs( incx ), 0, nl - 1, reset, transl )
572 xx( 1 + abs( incx )*( nl/2 - 1 ) ) = zero
588 CALL cmake(
'GE',
' ',
' ', 1, ml, y, 1,
589 $ yy, abs( incy ), 0, ml - 1,
621 $
WRITE( ntra, fmt = 9994 )nc, sname,
622 $ trans, m, n, alpha, lda, incx, beta,
626 CALL cgemv( trans, m, n, alpha, aa,
627 $ lda, xx, incx, beta, yy,
629 ELSE IF( banded )
THEN
631 $
WRITE( ntra, fmt = 9995 )nc, sname,
632 $ trans, m, n, kl, ku, alpha, lda,
636 CALL cgbmv( trans, m, n, kl, ku, alpha,
637 $ aa, lda, xx, incx, beta,
644 WRITE( nout, fmt = 9993 )
651 isame( 1 ) = trans.EQ.transs
655 isame( 4 ) = als.EQ.alpha
656 isame( 5 ) = lce( as, aa, laa )
657 isame( 6 ) = ldas.EQ.lda
658 isame( 7 ) = lce( xs, xx, lx )
659 isame( 8 ) = incxs.EQ.incx
660 isame( 9 ) = bls.EQ.beta
662 isame( 10 ) = lce( ys, yy, ly )
664 isame( 10 ) = lceres(
'GE',
' ', 1,
668 isame( 11 ) = incys.EQ.incy
669 ELSE IF( banded )
THEN
670 isame( 4 ) = kls.EQ.kl
671 isame( 5 ) = kus.EQ.ku
672 isame( 6 ) = als.EQ.alpha
673 isame( 7 ) = lce( as, aa, laa )
674 isame( 8 ) = ldas.EQ.lda
675 isame( 9 ) = lce( xs, xx, lx )
676 isame( 10 ) = incxs.EQ.incx
677 isame( 11 ) = bls.EQ.beta
679 isame( 12 ) = lce( ys, yy, ly )
681 isame( 12 ) = lceres(
'GE',
' ', 1,
685 isame( 13 ) = incys.EQ.incy
693 same = same.AND.isame( i )
694 IF( .NOT.isame( i ) )
695 $
WRITE( nout, fmt = 9998 )i
706 CALL cmvch( trans, m, n, alpha, a,
707 $ nmax, x, incx, beta, y,
708 $ incy, yt, g, yy, eps, err,
709 $ fatal, nout, .true. )
710 errmax = max( errmax, err )
739 CALL cregr1( trans, m, n, ly, kl, ku, alpha, aa, lda, xx, incx,
740 $ beta, yy, incy, ys )
743 $
WRITE( ntra, fmt = 9994 )nc, sname, trans, m, n, alpha, lda,
747 CALL cgemv( trans, m, n, alpha, aa, lda, xx, incx, beta, yy,
749 ELSE IF( banded )
THEN
751 $
WRITE( ntra, fmt = 9995 )nc, sname, trans, m, n, kl, ku,
752 $ alpha, lda, incx, beta, incy
755 CALL cgbmv( trans, m, n, kl, ku, alpha, aa, lda, xx, incx,
759 IF( .NOT.lce( ys, yy, ly ) )
THEN
760 WRITE( nout, fmt = 9998 )nargs - 1
767 IF( errmax.LT.thresh )
THEN
768 WRITE( nout, fmt = 9999 )sname, nc
770 WRITE( nout, fmt = 9997 )sname, nc, errmax
775 WRITE( nout, fmt = 9996 )sname
777 WRITE( nout, fmt = 9994 )nc, sname, trans, m, n, alpha, lda,
779 ELSE IF( banded )
THEN
780 WRITE( nout, fmt = 9995 )nc, sname, trans, m, n, kl, ku,
781 $ alpha, lda, incx, beta, incy
787 9999
FORMAT(
' ', a6,
' PASSED THE COMPUTATIONAL TESTS (', i6,
' CALL',
789 9998
FORMAT(
' ******* FATAL ERROR - PARAMETER NUMBER ', i2,
' WAS CH',
790 $
'ANGED INCORRECTLY *******' )
791 9997
FORMAT(
' ', a6,
' COMPLETED THE COMPUTATIONAL TESTS (', i6,
' C',
792 $
'ALLS)', /
' ******* BUT WITH MAXIMUM TEST RATIO', f8.2,
793 $
' - SUSPECT *******' )
794 9996
FORMAT(
' ******* ', a6,
' FAILED ON CALL NUMBER:' )
795 9995
FORMAT( 1x, i6,
': ', a6,
'(''', a1,
''',', 4( i3,
',' ),
'(',
796 $ f4.1,
',', f4.1,
'), A,', i3,
', X,', i2,
',(', f4.1,
',',
797 $ f4.1,
'), Y,', i2,
') .' )
798 9994
FORMAT( 1x, i6,
': ', a6,
'(''', a1,
''',', 2( i3,
',' ),
'(',
799 $ f4.1,
',', f4.1,
'), A,', i3,
', X,', i2,
',(', f4.1,
',',
800 $ f4.1,
'), Y,', i2,
') .' )
801 9993
FORMAT(
' ******* FATAL ERROR - ERROR-EXIT TAKEN ON VALID CALL *',
807 SUBROUTINE cchk2( SNAME, EPS, THRESH, NOUT, NTRA, TRACE, REWI,
808 $ FATAL, NIDIM, IDIM, NKB, KB, NALF, ALF, NBET,
809 $ BET, NINC, INC, NMAX, INCMAX, A, AA, AS, X, XX,
810 $ XS, Y, YY, YS, YT, G )
822 PARAMETER ( ZERO = ( 0.0, 0.0 ), half = ( 0.5, 0.0 ) )
824 PARAMETER ( RZERO = 0.0 )
827 INTEGER INCMAX, NALF, NBET, NIDIM, NINC, NKB, NMAX,
829 LOGICAL FATAL, REWI, TRACE
832 COMPLEX A( NMAX, NMAX ), AA( NMAX*NMAX ), ALF( NALF ),
833 $ as( nmax*nmax ), bet( nbet ), x( nmax ),
834 $ xs( nmax*incmax ), xx( nmax*incmax ),
835 $ y( nmax ), ys( nmax*incmax ), yt( nmax ),
838 INTEGER IDIM( NIDIM ), INC( NINC ), KB( NKB )
840 COMPLEX ALPHA, ALS, BETA, BLS, TRANSL
842 INTEGER I, IA, IB, IC, IK, IN, INCX, INCXS, INCY,
843 $ incys, ix, iy, k, ks, laa, lda, ldas, lx, ly,
844 $ n, nargs, nc, nk, ns
845 LOGICAL BANDED, FULL, NULL, PACKED, RESET, SAME
846 CHARACTER*1 UPLO, UPLOS
861 COMMON /infoc/infot, noutc, ok, lerr
865 full = sname( 3: 3 ).EQ.
'E'
866 banded = sname( 3: 3 ).EQ.
'B'
867 packed = sname( 3: 3 ).EQ.
'P'
871 ELSE IF( banded )
THEN
873 ELSE IF( packed )
THEN
907 laa = ( n*( n + 1 ) )/2
919 CALL cmake( sname( 2: 3 ), uplo,
' ', n, n, a, nmax, aa,
920 $ lda, k, k, reset, transl )
929 CALL cmake(
'GE',
' ',
' ', 1, n, x, 1, xx,
930 $ abs( incx ), 0, n - 1, reset, transl )
933 xx( 1 + abs( incx )*( n/2 - 1 ) ) = zero
949 CALL cmake(
'GE',
' ',
' ', 1, n, y, 1, yy,
950 $ abs( incy ), 0, n - 1, reset,
980 $
WRITE( ntra, fmt = 9993 )nc, sname,
981 $ uplo, n, alpha, lda, incx, beta, incy
984 CALL chemv( uplo, n, alpha, aa, lda, xx,
985 $ incx, beta, yy, incy )
986 ELSE IF( banded )
THEN
988 $
WRITE( ntra, fmt = 9994 )nc, sname,
989 $ uplo, n, k, alpha, lda, incx, beta,
993 CALL chbmv( uplo, n, k, alpha, aa, lda,
994 $ xx, incx, beta, yy, incy )
995 ELSE IF( packed )
THEN
997 $
WRITE( ntra, fmt = 9995 )nc, sname,
998 $ uplo, n, alpha, incx, beta, incy
1001 CALL chpmv( uplo, n, alpha, aa, xx, incx,
1008 WRITE( nout, fmt = 9992 )
1015 isame( 1 ) = uplo.EQ.uplos
1016 isame( 2 ) = ns.EQ.n
1018 isame( 3 ) = als.EQ.alpha
1019 isame( 4 ) = lce( as, aa, laa )
1020 isame( 5 ) = ldas.EQ.lda
1021 isame( 6 ) = lce( xs, xx, lx )
1022 isame( 7 ) = incxs.EQ.incx
1023 isame( 8 ) = bls.EQ.beta
1025 isame( 9 ) = lce( ys, yy, ly )
1027 isame( 9 ) = lceres(
'GE',
' ', 1, n,
1028 $ ys, yy, abs( incy ) )
1030 isame( 10 ) = incys.EQ.incy
1031 ELSE IF( banded )
THEN
1032 isame( 3 ) = ks.EQ.k
1033 isame( 4 ) = als.EQ.alpha
1034 isame( 5 ) = lce( as, aa, laa )
1035 isame( 6 ) = ldas.EQ.lda
1036 isame( 7 ) = lce( xs, xx, lx )
1037 isame( 8 ) = incxs.EQ.incx
1038 isame( 9 ) = bls.EQ.beta
1040 isame( 10 ) = lce( ys, yy, ly )
1042 isame( 10 ) = lceres(
'GE',
' ', 1, n,
1043 $ ys, yy, abs( incy ) )
1045 isame( 11 ) = incys.EQ.incy
1046 ELSE IF( packed )
THEN
1047 isame( 3 ) = als.EQ.alpha
1048 isame( 4 ) = lce( as, aa, laa )
1049 isame( 5 ) = lce( xs, xx, lx )
1050 isame( 6 ) = incxs.EQ.incx
1051 isame( 7 ) = bls.EQ.beta
1053 isame( 8 ) = lce( ys, yy, ly )
1055 isame( 8 ) = lceres(
'GE',
' ', 1, n,
1056 $ ys, yy, abs( incy ) )
1058 isame( 9 ) = incys.EQ.incy
1066 same = same.AND.isame( i )
1067 IF( .NOT.isame( i ) )
1068 $
WRITE( nout, fmt = 9998 )i
1079 CALL cmvch(
'N', n, n, alpha, a, nmax, x,
1080 $ incx, beta, y, incy, yt, g,
1081 $ yy, eps, err, fatal, nout,
1083 errmax = max( errmax, err )
1109 IF( errmax.LT.thresh )
THEN
1110 WRITE( nout, fmt = 9999 )sname, nc
1112 WRITE( nout, fmt = 9997 )sname, nc, errmax
1117 WRITE( nout, fmt = 9996 )sname
1119 WRITE( nout, fmt = 9993 )nc, sname, uplo, n, alpha, lda, incx,
1121 ELSE IF( banded )
THEN
1122 WRITE( nout, fmt = 9994 )nc, sname, uplo, n, k, alpha, lda,
1124 ELSE IF( packed )
THEN
1125 WRITE( nout, fmt = 9995 )nc, sname, uplo, n, alpha, incx,
1132 9999
FORMAT(
' ', a6,
' PASSED THE COMPUTATIONAL TESTS (', i6,
' CALL',
1134 9998
FORMAT(
' ******* FATAL ERROR - PARAMETER NUMBER ', i2,
' WAS CH',
1135 $
'ANGED INCORRECTLY *******' )
1136 9997
FORMAT(
' ', a6,
' COMPLETED THE COMPUTATIONAL TESTS (', i6,
' C',
1137 $
'ALLS)', /
' ******* BUT WITH MAXIMUM TEST RATIO', f8.2,
1138 $
' - SUSPECT *******' )
1139 9996
FORMAT(
' ******* ', a6,
' FAILED ON CALL NUMBER:' )
1140 9995
FORMAT( 1x, i6,
': ', a6,
'(''', a1,
''',', i3,
',(', f4.1,
',',
1141 $ f4.1,
'), AP, X,', i2,
',(', f4.1,
',', f4.1,
'), Y,', i2,
1143 9994
FORMAT( 1x, i6,
': ', a6,
'(''', a1,
''',', 2( i3,
',' ),
'(',
1144 $ f4.1,
',', f4.1,
'), A,', i3,
', X,', i2,
',(', f4.1,
',',
1145 $ f4.1,
'), Y,', i2,
') .' )
1146 9993
FORMAT( 1x, i6,
': ', a6,
'(''', a1,
''',', i3,
',(', f4.1,
',',
1147 $ f4.1,
'), A,', i3,
', X,', i2,
',(', f4.1,
',', f4.1,
'), ',
1149 9992
FORMAT(
' ******* FATAL ERROR - ERROR-EXIT TAKEN ON VALID CALL *',
1155 SUBROUTINE cchk3( SNAME, EPS, THRESH, NOUT, NTRA, TRACE, REWI,
1156 $ FATAL, NIDIM, IDIM, NKB, KB, NINC, INC, NMAX,
1157 $ INCMAX, A, AA, AS, X, XX, XS, XT, G, Z )
1168 COMPLEX ZERO, HALF, ONE
1169 PARAMETER ( ZERO = ( 0.0, 0.0 ), half = ( 0.5, 0.0 ),
1170 $ one = ( 1.0, 0.0 ) )
1172 PARAMETER ( RZERO = 0.0 )
1175 INTEGER INCMAX, NIDIM, NINC, NKB, NMAX, NOUT, NTRA
1176 LOGICAL FATAL, REWI, TRACE
1179 COMPLEX A( NMAX, NMAX ), AA( NMAX*NMAX ),
1180 $ as( nmax*nmax ), x( nmax ), xs( nmax*incmax ),
1181 $ xt( nmax ), xx( nmax*incmax ), z( nmax )
1183 INTEGER IDIM( NIDIM ), INC( NINC ), KB( NKB )
1187 INTEGER I, ICD, ICT, ICU, IK, IN, INCX, INCXS, IX, K,
1188 $ KS, LAA, LDA, LDAS, LX, N, NARGS, NC, NK, NS
1189 LOGICAL BANDED, FULL, NULL, PACKED, RESET, SAME
1190 CHARACTER*1 DIAG, DIAGS, TRANS, TRANSS, UPLO, UPLOS
1191 CHARACTER*2 ICHD, ICHU
1197 EXTERNAL lce, lceres
1204 INTEGER INFOT, NOUTC
1207 COMMON /infoc/infot, noutc, ok, lerr
1209 DATA ichu/
'UL'/, icht/
'NTC'/, ichd/
'UN'/
1211 full = sname( 3: 3 ).EQ.
'R'
1212 banded = sname( 3: 3 ).EQ.
'B'
1213 packed = sname( 3: 3 ).EQ.
'P'
1217 ELSE IF( banded )
THEN
1219 ELSE IF( packed )
THEN
1231 DO 110 in = 1, nidim
1257 laa = ( n*( n + 1 ) )/2
1264 uplo = ichu( icu: icu )
1267 trans = icht( ict: ict )
1270 diag = ichd( icd: icd )
1275 CALL cmake( sname( 2: 3 ), uplo, diag, n, n, a,
1276 $ nmax, aa, lda, k, k, reset, transl )
1285 CALL cmake(
'GE',
' ',
' ', 1, n, x, 1, xx,
1286 $ abs( incx ), 0, n - 1, reset,
1290 xx( 1 + abs( incx )*( n/2 - 1 ) ) = zero
1313 IF( sname( 4: 5 ).EQ.
'MV' )
THEN
1316 $
WRITE( ntra, fmt = 9993 )nc, sname,
1317 $ uplo, trans, diag, n, lda, incx
1320 CALL ctrmv( uplo, trans, diag, n, aa, lda,
1322 ELSE IF( banded )
THEN
1324 $
WRITE( ntra, fmt = 9994 )nc, sname,
1325 $ uplo, trans, diag, n, k, lda, incx
1328 CALL ctbmv( uplo, trans, diag, n, k, aa,
1330 ELSE IF( packed )
THEN
1332 $
WRITE( ntra, fmt = 9995 )nc, sname,
1333 $ uplo, trans, diag, n, incx
1336 CALL ctpmv( uplo, trans, diag, n, aa, xx,
1339 ELSE IF( sname( 4: 5 ).EQ.
'SV' )
THEN
1342 $
WRITE( ntra, fmt = 9993 )nc, sname,
1343 $ uplo, trans, diag, n, lda, incx
1346 CALL ctrsv( uplo, trans, diag, n, aa, lda,
1348 ELSE IF( banded )
THEN
1350 $
WRITE( ntra, fmt = 9994 )nc, sname,
1351 $ uplo, trans, diag, n, k, lda, incx
1354 CALL ctbsv( uplo, trans, diag, n, k, aa,
1356 ELSE IF( packed )
THEN
1358 $
WRITE( ntra, fmt = 9995 )nc, sname,
1359 $ uplo, trans, diag, n, incx
1362 CALL ctpsv( uplo, trans, diag, n, aa, xx,
1370 WRITE( nout, fmt = 9992 )
1377 isame( 1 ) = uplo.EQ.uplos
1378 isame( 2 ) = trans.EQ.transs
1379 isame( 3 ) = diag.EQ.diags
1380 isame( 4 ) = ns.EQ.n
1382 isame( 5 ) = lce( as, aa, laa )
1383 isame( 6 ) = ldas.EQ.lda
1385 isame( 7 ) = lce( xs, xx, lx )
1387 isame( 7 ) = lceres(
'GE',
' ', 1, n, xs,
1390 isame( 8 ) = incxs.EQ.incx
1391 ELSE IF( banded )
THEN
1392 isame( 5 ) = ks.EQ.k
1393 isame( 6 ) = lce( as, aa, laa )
1394 isame( 7 ) = ldas.EQ.lda
1396 isame( 8 ) = lce( xs, xx, lx )
1398 isame( 8 ) = lceres(
'GE',
' ', 1, n, xs,
1401 isame( 9 ) = incxs.EQ.incx
1402 ELSE IF( packed )
THEN
1403 isame( 5 ) = lce( as, aa, laa )
1405 isame( 6 ) = lce( xs, xx, lx )
1407 isame( 6 ) = lceres(
'GE',
' ', 1, n, xs,
1410 isame( 7 ) = incxs.EQ.incx
1418 same = same.AND.isame( i )
1419 IF( .NOT.isame( i ) )
1420 $
WRITE( nout, fmt = 9998 )i
1428 IF( sname( 4: 5 ).EQ.
'MV' )
THEN
1432 CALL cmvch( trans, n, n, one, a, nmax, x,
1433 $ incx, zero, z, incx, xt, g,
1434 $ xx, eps, err, fatal, nout,
1436 ELSE IF( sname( 4: 5 ).EQ.
'SV' )
THEN
1441 z( i ) = xx( 1 + ( i - 1 )*
1443 xx( 1 + ( i - 1 )*abs( incx ) )
1446 CALL cmvch( trans, n, n, one, a, nmax, z,
1447 $ incx, zero, x, incx, xt, g,
1448 $ xx, eps, err, fatal, nout,
1451 errmax = max( errmax, err )
1474 IF( errmax.LT.thresh )
THEN
1475 WRITE( nout, fmt = 9999 )sname, nc
1477 WRITE( nout, fmt = 9997 )sname, nc, errmax
1482 WRITE( nout, fmt = 9996 )sname
1484 WRITE( nout, fmt = 9993 )nc, sname, uplo, trans, diag, n, lda,
1486 ELSE IF( banded )
THEN
1487 WRITE( nout, fmt = 9994 )nc, sname, uplo, trans, diag, n, k,
1489 ELSE IF( packed )
THEN
1490 WRITE( nout, fmt = 9995 )nc, sname, uplo, trans, diag, n, incx
1496 9999
FORMAT(
' ', a6,
' PASSED THE COMPUTATIONAL TESTS (', i6,
' CALL',
1498 9998
FORMAT(
' ******* FATAL ERROR - PARAMETER NUMBER ', i2,
' WAS CH',
1499 $
'ANGED INCORRECTLY *******' )
1500 9997
FORMAT(
' ', a6,
' COMPLETED THE COMPUTATIONAL TESTS (', i6,
' C',
1501 $
'ALLS)', /
' ******* BUT WITH MAXIMUM TEST RATIO', f8.2,
1502 $
' - SUSPECT *******' )
1503 9996
FORMAT(
' ******* ', a6,
' FAILED ON CALL NUMBER:' )
1504 9995
FORMAT( 1x, i6,
': ', a6,
'(', 3(
'''', a1,
''',' ), i3,
', AP, ',
1506 9994
FORMAT( 1x, i6,
': ', a6,
'(', 3(
'''', a1,
''',' ), 2( i3,
',' ),
1507 $
' A,', i3,
', X,', i2,
') .' )
1508 9993
FORMAT( 1x, i6,
': ', a6,
'(', 3(
'''', a1,
''',' ), i3,
', A,',
1509 $ i3,
', X,', i2,
') .' )
1510 9992
FORMAT(
' ******* FATAL ERROR - ERROR-EXIT TAKEN ON VALID CALL *',
1516 SUBROUTINE cchk4( SNAME, EPS, THRESH, NOUT, NTRA, TRACE, REWI,
1517 $ FATAL, NIDIM, IDIM, NALF, ALF, NINC, INC, NMAX,
1518 $ INCMAX, A, AA, AS, X, XX, XS, Y, YY, YS, YT, G,
1530 COMPLEX ZERO, HALF, ONE
1531 PARAMETER ( ZERO = ( 0.0, 0.0 ), half = ( 0.5, 0.0 ),
1532 $ one = ( 1.0, 0.0 ) )
1534 PARAMETER ( RZERO = 0.0 )
1537 INTEGER INCMAX, NALF, NIDIM, NINC, NMAX, NOUT, NTRA
1538 LOGICAL FATAL, REWI, TRACE
1541 COMPLEX A( NMAX, NMAX ), AA( NMAX*NMAX ), ALF( NALF ),
1542 $ as( nmax*nmax ), x( nmax ), xs( nmax*incmax ),
1543 $ xx( nmax*incmax ), y( nmax ),
1544 $ ys( nmax*incmax ), yt( nmax ),
1545 $ yy( nmax*incmax ), z( nmax )
1547 INTEGER IDIM( NIDIM ), INC( NINC )
1549 COMPLEX ALPHA, ALS, TRANSL
1551 INTEGER I, IA, IM, IN, INCX, INCXS, INCY, INCYS, IX,
1552 $ iy, j, laa, lda, ldas, lx, ly, m, ms, n, nargs,
1554 LOGICAL CONJ, NULL, RESET, SAME
1560 EXTERNAL lce, lceres
1564 INTRINSIC abs, conjg, max, min
1566 INTEGER INFOT, NOUTC
1569 COMMON /infoc/infot, noutc, ok, lerr
1571 conj = sname( 5: 5 ).EQ.
'C'
1579 DO 120 in = 1, nidim
1585 $ m = max( n - nd, 0 )
1587 $ m = min( n + nd, nmax )
1597 null = n.LE.0.OR.m.LE.0
1606 CALL cmake(
'GE',
' ',
' ', 1, m, x, 1, xx, abs( incx ),
1607 $ 0, m - 1, reset, transl )
1610 xx( 1 + abs( incx )*( m/2 - 1 ) ) = zero
1620 CALL cmake(
'GE',
' ',
' ', 1, n, y, 1, yy,
1621 $ abs( incy ), 0, n - 1, reset, transl )
1624 yy( 1 + abs( incy )*( n/2 - 1 ) ) = zero
1633 CALL cmake( sname( 2: 3 ),
' ',
' ', m, n, a, nmax,
1634 $ aa, lda, m - 1, n - 1, reset, transl )
1659 $
WRITE( ntra, fmt = 9994 )nc, sname, m, n,
1660 $ alpha, incx, incy, lda
1664 CALL cgerc( m, n, alpha, xx, incx, yy, incy, aa,
1669 CALL cgeru( m, n, alpha, xx, incx, yy, incy, aa,
1676 WRITE( nout, fmt = 9993 )
1683 isame( 1 ) = ms.EQ.m
1684 isame( 2 ) = ns.EQ.n
1685 isame( 3 ) = als.EQ.alpha
1686 isame( 4 ) = lce( xs, xx, lx )
1687 isame( 5 ) = incxs.EQ.incx
1688 isame( 6 ) = lce( ys, yy, ly )
1689 isame( 7 ) = incys.EQ.incy
1691 isame( 8 ) = lce( as, aa, laa )
1693 isame( 8 ) = lceres(
'GE',
' ', m, n, as, aa,
1696 isame( 9 ) = ldas.EQ.lda
1702 same = same.AND.isame( i )
1703 IF( .NOT.isame( i ) )
1704 $
WRITE( nout, fmt = 9998 )i
1721 z( i ) = x( m - i + 1 )
1728 w( 1 ) = y( n - j + 1 )
1731 $ w( 1 ) = conjg( w( 1 ) )
1732 CALL cmvch(
'N', m, 1, alpha, z, nmax, w, 1,
1733 $ one, a( 1, j ), 1, yt, g,
1734 $ aa( 1 + ( j - 1 )*lda ), eps,
1735 $ err, fatal, nout, .true. )
1736 errmax = max( errmax, err )
1758 IF( errmax.LT.thresh )
THEN
1759 WRITE( nout, fmt = 9999 )sname, nc
1761 WRITE( nout, fmt = 9997 )sname, nc, errmax
1766 WRITE( nout, fmt = 9995 )j
1769 WRITE( nout, fmt = 9996 )sname
1770 WRITE( nout, fmt = 9994 )nc, sname, m, n, alpha, incx, incy, lda
1775 9999
FORMAT(
' ', a6,
' PASSED THE COMPUTATIONAL TESTS (', i6,
' CALL',
1777 9998
FORMAT(
' ******* FATAL ERROR - PARAMETER NUMBER ', i2,
' WAS CH',
1778 $
'ANGED INCORRECTLY *******' )
1779 9997
FORMAT(
' ', a6,
' COMPLETED THE COMPUTATIONAL TESTS (', i6,
' C',
1780 $
'ALLS)', /
' ******* BUT WITH MAXIMUM TEST RATIO', f8.2,
1781 $
' - SUSPECT *******' )
1782 9996
FORMAT(
' ******* ', a6,
' FAILED ON CALL NUMBER:' )
1783 9995
FORMAT(
' THESE ARE THE RESULTS FOR COLUMN ', i3 )
1784 9994
FORMAT( 1x, i6,
': ', a6,
'(', 2( i3,
',' ),
'(', f4.1,
',', f4.1,
1785 $
'), X,', i2,
', Y,', i2,
', A,', i3,
') ',
1787 9993
FORMAT(
' ******* FATAL ERROR - ERROR-EXIT TAKEN ON VALID CALL *',
1793 SUBROUTINE cchk5( SNAME, EPS, THRESH, NOUT, NTRA, TRACE, REWI,
1794 $ FATAL, NIDIM, IDIM, NALF, ALF, NINC, INC, NMAX,
1795 $ INCMAX, A, AA, AS, X, XX, XS, Y, YY, YS, YT, G,
1807 COMPLEX ZERO, HALF, ONE
1808 PARAMETER ( ZERO = ( 0.0, 0.0 ), half = ( 0.5, 0.0 ),
1809 $ one = ( 1.0, 0.0 ) )
1811 PARAMETER ( RZERO = 0.0 )
1814 INTEGER INCMAX, NALF, NIDIM, NINC, NMAX, NOUT, NTRA
1815 LOGICAL FATAL, REWI, TRACE
1818 COMPLEX A( NMAX, NMAX ), AA( NMAX*NMAX ), ALF( NALF ),
1819 $ AS( NMAX*NMAX ), X( NMAX ), XS( NMAX*INCMAX ),
1820 $ XX( NMAX*INCMAX ), Y( NMAX ),
1821 $ ys( nmax*incmax ), yt( nmax ),
1822 $ yy( nmax*incmax ), z( nmax )
1824 INTEGER IDIM( NIDIM ), INC( NINC )
1826 COMPLEX ALPHA, TRANSL
1827 REAL ERR, ERRMAX, RALPHA, RALS
1828 INTEGER I, IA, IC, IN, INCX, INCXS, IX, J, JA, JJ, LAA,
1829 $ lda, ldas, lj, lx, n, nargs, nc, ns
1830 LOGICAL FULL, NULL, PACKED, RESET, SAME, UPPER
1831 CHARACTER*1 UPLO, UPLOS
1838 EXTERNAL lce, lceres
1842 INTRINSIC abs, cmplx, conjg, max, real
1844 INTEGER INFOT, NOUTC
1847 COMMON /infoc/infot, noutc, ok, lerr
1851 full = sname( 3: 3 ).EQ.
'E'
1852 packed = sname( 3: 3 ).EQ.
'P'
1856 ELSE IF( packed )
THEN
1864 DO 100 in = 1, nidim
1874 laa = ( n*( n + 1 ) )/2
1880 uplo = ich( ic: ic )
1890 CALL cmake(
'GE',
' ',
' ', 1, n, x, 1, xx, abs( incx ),
1891 $ 0, n - 1, reset, transl )
1894 xx( 1 + abs( incx )*( n/2 - 1 ) ) = zero
1898 ralpha = real( alf( ia ) )
1899 alpha = cmplx( ralpha, rzero )
1900 null = n.LE.0.OR.ralpha.EQ.rzero
1905 CALL cmake( sname( 2: 3 ), uplo,
' ', n, n, a, nmax,
1906 $ aa, lda, n - 1, n - 1, reset, transl )
1928 $
WRITE( ntra, fmt = 9993 )nc, sname, uplo, n,
1932 CALL cher( uplo, n, ralpha, xx, incx, aa, lda )
1933 ELSE IF( packed )
THEN
1935 $
WRITE( ntra, fmt = 9994 )nc, sname, uplo, n,
1939 CALL chpr( uplo, n, ralpha, xx, incx, aa )
1945 WRITE( nout, fmt = 9992 )
1952 isame( 1 ) = uplo.EQ.uplos
1953 isame( 2 ) = ns.EQ.n
1954 isame( 3 ) = rals.EQ.ralpha
1955 isame( 4 ) = lce( xs, xx, lx )
1956 isame( 5 ) = incxs.EQ.incx
1958 isame( 6 ) = lce( as, aa, laa )
1960 isame( 6 ) = lceres( sname( 2: 3 ), uplo, n, n, as,
1963 IF( .NOT.packed )
THEN
1964 isame( 7 ) = ldas.EQ.lda
1971 same = same.AND.isame( i )
1972 IF( .NOT.isame( i ) )
1973 $
WRITE( nout, fmt = 9998 )i
1990 z( i ) = x( n - i + 1 )
1995 w( 1 ) = conjg( z( j ) )
2003 CALL cmvch(
'N', lj, 1, alpha, z( jj ), lj, w,
2004 $ 1, one, a( jj, j ), 1, yt, g,
2005 $ aa( ja ), eps, err, fatal, nout,
2016 errmax = max( errmax, err )
2037 IF( errmax.LT.thresh )
THEN
2038 WRITE( nout, fmt = 9999 )sname, nc
2040 WRITE( nout, fmt = 9997 )sname, nc, errmax
2045 WRITE( nout, fmt = 9995 )j
2048 WRITE( nout, fmt = 9996 )sname
2050 WRITE( nout, fmt = 9993 )nc, sname, uplo, n, ralpha, incx, lda
2051 ELSE IF( packed )
THEN
2052 WRITE( nout, fmt = 9994 )nc, sname, uplo, n, ralpha, incx
2058 9999
FORMAT(
' ', a6,
' PASSED THE COMPUTATIONAL TESTS (', i6,
' CALL',
2060 9998
FORMAT(
' ******* FATAL ERROR - PARAMETER NUMBER ', i2,
' WAS CH',
2061 $
'ANGED INCORRECTLY *******' )
2062 9997
FORMAT(
' ', a6,
' COMPLETED THE COMPUTATIONAL TESTS (', i6,
' C',
2063 $
'ALLS)', /
' ******* BUT WITH MAXIMUM TEST RATIO', f8.2,
2064 $
' - SUSPECT *******' )
2065 9996
FORMAT(
' ******* ', a6,
' FAILED ON CALL NUMBER:' )
2066 9995
FORMAT(
' THESE ARE THE RESULTS FOR COLUMN ', i3 )
2067 9994
FORMAT( 1x, i6,
': ', a6,
'(''', a1,
''',', i3,
',', f4.1,
', X,',
2069 9993
FORMAT( 1x, i6,
': ', a6,
'(''', a1,
''',', i3,
',', f4.1,
', X,',
2070 $ i2,
', A,', i3,
') .' )
2071 9992
FORMAT(
' ******* FATAL ERROR - ERROR-EXIT TAKEN ON VALID CALL *',
2077 SUBROUTINE cchk6( SNAME, EPS, THRESH, NOUT, NTRA, TRACE, REWI,
2078 $ FATAL, NIDIM, IDIM, NALF, ALF, NINC, INC, NMAX,
2079 $ INCMAX, A, AA, AS, X, XX, XS, Y, YY, YS, YT, G,
2091 COMPLEX ZERO, HALF, ONE
2092 PARAMETER ( ZERO = ( 0.0, 0.0 ), half = ( 0.5, 0.0 ),
2093 $ one = ( 1.0, 0.0 ) )
2095 PARAMETER ( RZERO = 0.0 )
2098 INTEGER INCMAX, NALF, NIDIM, NINC, NMAX, NOUT, NTRA
2099 LOGICAL FATAL, REWI, TRACE
2102 COMPLEX A( NMAX, NMAX ), AA( NMAX*NMAX ), ALF( NALF ),
2103 $ AS( NMAX*NMAX ), X( NMAX ), XS( NMAX*INCMAX ),
2104 $ XX( NMAX*INCMAX ), Y( NMAX ),
2105 $ YS( NMAX*INCMAX ), YT( NMAX ),
2106 $ YY( NMAX*INCMAX ), Z( NMAX, 2 )
2108 INTEGER IDIM( NIDIM ), INC( NINC )
2110 COMPLEX ALPHA, ALS, TRANSL
2112 INTEGER I, IA, IC, IN, INCX, INCXS, INCY, INCYS, IX,
2113 $ IY, J, JA, JJ, LAA, LDA, LDAS, LJ, LX, LY, N,
2115 LOGICAL FULL, NULL, PACKED, RESET, SAME, UPPER
2116 CHARACTER*1 UPLO, UPLOS
2123 EXTERNAL LCE, LCERES
2127 INTRINSIC abs, conjg, max
2129 INTEGER INFOT, NOUTC
2132 COMMON /infoc/infot, noutc, ok, lerr
2136 full = sname( 3: 3 ).EQ.
'E'
2137 packed = sname( 3: 3 ).EQ.
'P'
2141 ELSE IF( packed )
THEN
2149 DO 140 in = 1, nidim
2159 laa = ( n*( n + 1 ) )/2
2165 uplo = ich( ic: ic )
2175 CALL cmake(
'GE',
' ',
' ', 1, n, x, 1, xx, abs( incx ),
2176 $ 0, n - 1, reset, transl )
2179 xx( 1 + abs( incx )*( n/2 - 1 ) ) = zero
2189 CALL cmake(
'GE',
' ',
' ', 1, n, y, 1, yy,
2190 $ abs( incy ), 0, n - 1, reset, transl )
2193 yy( 1 + abs( incy )*( n/2 - 1 ) ) = zero
2198 null = n.LE.0.OR.alpha.EQ.zero
2203 CALL cmake( sname( 2: 3 ), uplo,
' ', n, n, a,
2204 $ nmax, aa, lda, n - 1, n - 1, reset,
2231 $
WRITE( ntra, fmt = 9993 )nc, sname, uplo, n,
2232 $ alpha, incx, incy, lda
2235 CALL cher2( uplo, n, alpha, xx, incx, yy, incy,
2237 ELSE IF( packed )
THEN
2239 $
WRITE( ntra, fmt = 9994 )nc, sname, uplo, n,
2243 CALL chpr2( uplo, n, alpha, xx, incx, yy, incy,
2250 WRITE( nout, fmt = 9992 )
2257 isame( 1 ) = uplo.EQ.uplos
2258 isame( 2 ) = ns.EQ.n
2259 isame( 3 ) = als.EQ.alpha
2260 isame( 4 ) = lce( xs, xx, lx )
2261 isame( 5 ) = incxs.EQ.incx
2262 isame( 6 ) = lce( ys, yy, ly )
2263 isame( 7 ) = incys.EQ.incy
2265 isame( 8 ) = lce( as, aa, laa )
2267 isame( 8 ) = lceres( sname( 2: 3 ), uplo, n, n,
2270 IF( .NOT.packed )
THEN
2271 isame( 9 ) = ldas.EQ.lda
2278 same = same.AND.isame( i )
2279 IF( .NOT.isame( i ) )
2280 $
WRITE( nout, fmt = 9998 )i
2297 z( i, 1 ) = x( n - i + 1 )
2306 z( i, 2 ) = y( n - i + 1 )
2311 w( 1 ) = alpha*conjg( z( j, 2 ) )
2312 w( 2 ) = conjg( alpha )*conjg( z( j, 1 ) )
2320 CALL cmvch(
'N', lj, 2, one, z( jj, 1 ),
2321 $ nmax, w, 1, one, a( jj, j ), 1,
2322 $ yt, g, aa( ja ), eps, err, fatal,
2333 errmax = max( errmax, err )
2356 IF( errmax.LT.thresh )
THEN
2357 WRITE( nout, fmt = 9999 )sname, nc
2359 WRITE( nout, fmt = 9997 )sname, nc, errmax
2364 WRITE( nout, fmt = 9995 )j
2367 WRITE( nout, fmt = 9996 )sname
2369 WRITE( nout, fmt = 9993 )nc, sname, uplo, n, alpha, incx,
2371 ELSE IF( packed )
THEN
2372 WRITE( nout, fmt = 9994 )nc, sname, uplo, n, alpha, incx, incy
2378 9999
FORMAT(
' ', a6,
' PASSED THE COMPUTATIONAL TESTS (', i6,
' CALL',
2380 9998
FORMAT(
' ******* FATAL ERROR - PARAMETER NUMBER ', i2,
' WAS CH',
2381 $
'ANGED INCORRECTLY *******' )
2382 9997
FORMAT(
' ', a6,
' COMPLETED THE COMPUTATIONAL TESTS (', i6,
' C',
2383 $
'ALLS)', /
' ******* BUT WITH MAXIMUM TEST RATIO', f8.2,
2384 $
' - SUSPECT *******' )
2385 9996
FORMAT(
' ******* ', a6,
' FAILED ON CALL NUMBER:' )
2386 9995
FORMAT(
' THESE ARE THE RESULTS FOR COLUMN ', i3 )
2387 9994
FORMAT( 1x, i6,
': ', a6,
'(''', a1,
''',', i3,
',(', f4.1,
',',
2388 $ f4.1,
'), X,', i2,
', Y,', i2,
', AP) ',
2390 9993
FORMAT( 1x, i6,
': ', a6,
'(''', a1,
''',', i3,
',(', f4.1,
',',
2391 $ f4.1,
'), X,', i2,
', Y,', i2,
', A,', i3,
') ',
2393 9992
FORMAT(
' ******* FATAL ERROR - ERROR-EXIT TAKEN ON VALID CALL *',
2415 INTEGER INFOT, NOUTC
2421 COMPLEX A( 1, 1 ), X( 1 ), Y( 1 )
2423 EXTERNAL CGBMV, CGEMV, CGERC, CGERU, CHBMV, CHEMV, CHER,
2424 $ CHER2, CHKXER, CHPMV, CHPR, CHPR2, CTBMV,
2425 $ CTBSV, CTPMV, CTPSV, CTRMV, CTRSV
2427 COMMON /INFOC/INFOT, NOUTC, OK, LERR
2435 GO TO ( 10, 20, 30, 40, 50, 60, 70, 80,
2436 $ 90, 100, 110, 120, 130, 140, 150, 160,
2439 CALL cgemv(
'/', 0, 0, alpha, a, 1, x, 1, beta, y, 1 )
2440 CALL chkxer( srnamt, infot, nout, lerr, ok )
2442 CALL cgemv(
'N', -1, 0, alpha, a, 1, x, 1, beta, y, 1 )
2443 CALL chkxer( srnamt, infot, nout, lerr, ok )
2445 CALL cgemv(
'N', 0, -1, alpha, a, 1, x, 1, beta, y, 1 )
2446 CALL chkxer( srnamt, infot, nout, lerr, ok )
2448 CALL cgemv(
'N', 2, 0, alpha, a, 1, x, 1, beta, y, 1 )
2449 CALL chkxer( srnamt, infot, nout, lerr, ok )
2451 CALL cgemv(
'N', 0, 0, alpha, a, 1, x, 0, beta, y, 1 )
2452 CALL chkxer( srnamt, infot, nout, lerr, ok )
2454 CALL cgemv(
'N', 0, 0, alpha, a, 1, x, 1, beta, y, 0 )
2455 CALL chkxer( srnamt, infot, nout, lerr, ok )
2458 CALL cgbmv(
'/', 0, 0, 0, 0, alpha, a, 1, x, 1, beta, y, 1 )
2459 CALL chkxer( srnamt, infot, nout, lerr, ok )
2461 CALL cgbmv(
'N', -1, 0, 0, 0, alpha, a, 1, x, 1, beta, y, 1 )
2462 CALL chkxer( srnamt, infot, nout, lerr, ok )
2464 CALL cgbmv(
'N', 0, -1, 0, 0, alpha, a, 1, x, 1, beta, y, 1 )
2465 CALL chkxer( srnamt, infot, nout, lerr, ok )
2467 CALL cgbmv(
'N', 0, 0, -1, 0, alpha, a, 1, x, 1, beta, y, 1 )
2468 CALL chkxer( srnamt, infot, nout, lerr, ok )
2470 CALL cgbmv(
'N', 2, 0, 0, -1, alpha, a, 1, x, 1, beta, y, 1 )
2471 CALL chkxer( srnamt, infot, nout, lerr, ok )
2473 CALL cgbmv(
'N', 0, 0, 1, 0, alpha, a, 1, x, 1, beta, y, 1 )
2474 CALL chkxer( srnamt, infot, nout, lerr, ok )
2476 CALL cgbmv(
'N', 0, 0, 0, 0, alpha, a, 1, x, 0, beta, y, 1 )
2477 CALL chkxer( srnamt, infot, nout, lerr, ok )
2479 CALL cgbmv(
'N', 0, 0, 0, 0, alpha, a, 1, x, 1, beta, y, 0 )
2480 CALL chkxer( srnamt, infot, nout, lerr, ok )
2483 CALL chemv(
'/', 0, alpha, a, 1, x, 1, beta, y, 1 )
2484 CALL chkxer( srnamt, infot, nout, lerr, ok )
2486 CALL chemv(
'U', -1, alpha, a, 1, x, 1, beta, y, 1 )
2487 CALL chkxer( srnamt, infot, nout, lerr, ok )
2489 CALL chemv(
'U', 2, alpha, a, 1, x, 1, beta, y, 1 )
2490 CALL chkxer( srnamt, infot, nout, lerr, ok )
2492 CALL chemv(
'U', 0, alpha, a, 1, x, 0, beta, y, 1 )
2493 CALL chkxer( srnamt, infot, nout, lerr, ok )
2495 CALL chemv(
'U', 0, alpha, a, 1, x, 1, beta, y, 0 )
2496 CALL chkxer( srnamt, infot, nout, lerr, ok )
2499 CALL chbmv(
'/', 0, 0, alpha, a, 1, x, 1, beta, y, 1 )
2500 CALL chkxer( srnamt, infot, nout, lerr, ok )
2502 CALL chbmv(
'U', -1, 0, alpha, a, 1, x, 1, beta, y, 1 )
2503 CALL chkxer( srnamt, infot, nout, lerr, ok )
2505 CALL chbmv(
'U', 0, -1, alpha, a, 1, x, 1, beta, y, 1 )
2506 CALL chkxer( srnamt, infot, nout, lerr, ok )
2508 CALL chbmv(
'U', 0, 1, alpha, a, 1, x, 1, beta, y, 1 )
2509 CALL chkxer( srnamt, infot, nout, lerr, ok )
2511 CALL chbmv(
'U', 0, 0, alpha, a, 1, x, 0, beta, y, 1 )
2512 CALL chkxer( srnamt, infot, nout, lerr, ok )
2514 CALL chbmv(
'U', 0, 0, alpha, a, 1, x, 1, beta, y, 0 )
2515 CALL chkxer( srnamt, infot, nout, lerr, ok )
2518 CALL chpmv(
'/', 0, alpha, a, x, 1, beta, y, 1 )
2519 CALL chkxer( srnamt, infot, nout, lerr, ok )
2521 CALL chpmv(
'U', -1, alpha, a, x, 1, beta, y, 1 )
2522 CALL chkxer( srnamt, infot, nout, lerr, ok )
2524 CALL chpmv(
'U', 0, alpha, a, x, 0, beta, y, 1 )
2525 CALL chkxer( srnamt, infot, nout, lerr, ok )
2527 CALL chpmv(
'U', 0, alpha, a, x, 1, beta, y, 0 )
2528 CALL chkxer( srnamt, infot, nout, lerr, ok )
2531 CALL ctrmv(
'/',
'N',
'N', 0, a, 1, x, 1 )
2532 CALL chkxer( srnamt, infot, nout, lerr, ok )
2534 CALL ctrmv(
'U',
'/',
'N', 0, a, 1, x, 1 )
2535 CALL chkxer( srnamt, infot, nout, lerr, ok )
2537 CALL ctrmv(
'U',
'N',
'/', 0, a, 1, x, 1 )
2538 CALL chkxer( srnamt, infot, nout, lerr, ok )
2540 CALL ctrmv(
'U',
'N',
'N', -1, a, 1, x, 1 )
2541 CALL chkxer( srnamt, infot, nout, lerr, ok )
2543 CALL ctrmv(
'U',
'N',
'N', 2, a, 1, x, 1 )
2544 CALL chkxer( srnamt, infot, nout, lerr, ok )
2546 CALL ctrmv(
'U',
'N',
'N', 0, a, 1, x, 0 )
2547 CALL chkxer( srnamt, infot, nout, lerr, ok )
2550 CALL ctbmv(
'/',
'N',
'N', 0, 0, a, 1, x, 1 )
2551 CALL chkxer( srnamt, infot, nout, lerr, ok )
2553 CALL ctbmv(
'U',
'/',
'N', 0, 0, a, 1, x, 1 )
2554 CALL chkxer( srnamt, infot, nout, lerr, ok )
2556 CALL ctbmv(
'U',
'N',
'/', 0, 0, a, 1, x, 1 )
2557 CALL chkxer( srnamt, infot, nout, lerr, ok )
2559 CALL ctbmv(
'U',
'N',
'N', -1, 0, a, 1, x, 1 )
2560 CALL chkxer( srnamt, infot, nout, lerr, ok )
2562 CALL ctbmv(
'U',
'N',
'N', 0, -1, a, 1, x, 1 )
2563 CALL chkxer( srnamt, infot, nout, lerr, ok )
2565 CALL ctbmv(
'U',
'N',
'N', 0, 1, a, 1, x, 1 )
2566 CALL chkxer( srnamt, infot, nout, lerr, ok )
2568 CALL ctbmv(
'U',
'N',
'N', 0, 0, a, 1, x, 0 )
2569 CALL chkxer( srnamt, infot, nout, lerr, ok )
2572 CALL ctpmv(
'/',
'N',
'N', 0, a, x, 1 )
2573 CALL chkxer( srnamt, infot, nout, lerr, ok )
2575 CALL ctpmv(
'U',
'/',
'N', 0, a, x, 1 )
2576 CALL chkxer( srnamt, infot, nout, lerr, ok )
2578 CALL ctpmv(
'U',
'N',
'/', 0, a, x, 1 )
2579 CALL chkxer( srnamt, infot, nout, lerr, ok )
2581 CALL ctpmv(
'U',
'N',
'N', -1, a, x, 1 )
2582 CALL chkxer( srnamt, infot, nout, lerr, ok )
2584 CALL ctpmv(
'U',
'N',
'N', 0, a, x, 0 )
2585 CALL chkxer( srnamt, infot, nout, lerr, ok )
2588 CALL ctrsv(
'/',
'N',
'N', 0, a, 1, x, 1 )
2589 CALL chkxer( srnamt, infot, nout, lerr, ok )
2591 CALL ctrsv(
'U',
'/',
'N', 0, a, 1, x, 1 )
2592 CALL chkxer( srnamt, infot, nout, lerr, ok )
2594 CALL ctrsv(
'U',
'N',
'/', 0, a, 1, x, 1 )
2595 CALL chkxer( srnamt, infot, nout, lerr, ok )
2597 CALL ctrsv(
'U',
'N',
'N', -1, a, 1, x, 1 )
2598 CALL chkxer( srnamt, infot, nout, lerr, ok )
2600 CALL ctrsv(
'U',
'N',
'N', 2, a, 1, x, 1 )
2601 CALL chkxer( srnamt, infot, nout, lerr, ok )
2603 CALL ctrsv(
'U',
'N',
'N', 0, a, 1, x, 0 )
2604 CALL chkxer( srnamt, infot, nout, lerr, ok )
2607 CALL ctbsv(
'/',
'N',
'N', 0, 0, a, 1, x, 1 )
2608 CALL chkxer( srnamt, infot, nout, lerr, ok )
2610 CALL ctbsv(
'U',
'/',
'N', 0, 0, a, 1, x, 1 )
2611 CALL chkxer( srnamt, infot, nout, lerr, ok )
2613 CALL ctbsv(
'U',
'N',
'/', 0, 0, a, 1, x, 1 )
2614 CALL chkxer( srnamt, infot, nout, lerr, ok )
2616 CALL ctbsv(
'U',
'N',
'N', -1, 0, a, 1, x, 1 )
2617 CALL chkxer( srnamt, infot, nout, lerr, ok )
2619 CALL ctbsv(
'U',
'N',
'N', 0, -1, a, 1, x, 1 )
2620 CALL chkxer( srnamt, infot, nout, lerr, ok )
2622 CALL ctbsv(
'U',
'N',
'N', 0, 1, a, 1, x, 1 )
2623 CALL chkxer( srnamt, infot, nout, lerr, ok )
2625 CALL ctbsv(
'U',
'N',
'N', 0, 0, a, 1, x, 0 )
2626 CALL chkxer( srnamt, infot, nout, lerr, ok )
2629 CALL ctpsv(
'/',
'N',
'N', 0, a, x, 1 )
2630 CALL chkxer( srnamt, infot, nout, lerr, ok )
2632 CALL ctpsv(
'U',
'/',
'N', 0, a, x, 1 )
2633 CALL chkxer( srnamt, infot, nout, lerr, ok )
2635 CALL ctpsv(
'U',
'N',
'/', 0, a, x, 1 )
2636 CALL chkxer( srnamt, infot, nout, lerr, ok )
2638 CALL ctpsv(
'U',
'N',
'N', -1, a, x, 1 )
2639 CALL chkxer( srnamt, infot, nout, lerr, ok )
2641 CALL ctpsv(
'U',
'N',
'N', 0, a, x, 0 )
2642 CALL chkxer( srnamt, infot, nout, lerr, ok )
2645 CALL cgerc( -1, 0, alpha, x, 1, y, 1, a, 1 )
2646 CALL chkxer( srnamt, infot, nout, lerr, ok )
2648 CALL cgerc( 0, -1, alpha, x, 1, y, 1, a, 1 )
2649 CALL chkxer( srnamt, infot, nout, lerr, ok )
2651 CALL cgerc( 0, 0, alpha, x, 0, y, 1, a, 1 )
2652 CALL chkxer( srnamt, infot, nout, lerr, ok )
2654 CALL cgerc( 0, 0, alpha, x, 1, y, 0, a, 1 )
2655 CALL chkxer( srnamt, infot, nout, lerr, ok )
2657 CALL cgerc( 2, 0, alpha, x, 1, y, 1, a, 1 )
2658 CALL chkxer( srnamt, infot, nout, lerr, ok )
2661 CALL cgeru( -1, 0, alpha, x, 1, y, 1, a, 1 )
2662 CALL chkxer( srnamt, infot, nout, lerr, ok )
2664 CALL cgeru( 0, -1, alpha, x, 1, y, 1, a, 1 )
2665 CALL chkxer( srnamt, infot, nout, lerr, ok )
2667 CALL cgeru( 0, 0, alpha, x, 0, y, 1, a, 1 )
2668 CALL chkxer( srnamt, infot, nout, lerr, ok )
2670 CALL cgeru( 0, 0, alpha, x, 1, y, 0, a, 1 )
2671 CALL chkxer( srnamt, infot, nout, lerr, ok )
2673 CALL cgeru( 2, 0, alpha, x, 1, y, 1, a, 1 )
2674 CALL chkxer( srnamt, infot, nout, lerr, ok )
2677 CALL cher(
'/', 0, ralpha, x, 1, a, 1 )
2678 CALL chkxer( srnamt, infot, nout, lerr, ok )
2680 CALL cher(
'U', -1, ralpha, x, 1, a, 1 )
2681 CALL chkxer( srnamt, infot, nout, lerr, ok )
2683 CALL cher(
'U', 0, ralpha, x, 0, a, 1 )
2684 CALL chkxer( srnamt, infot, nout, lerr, ok )
2686 CALL cher(
'U', 2, ralpha, x, 1, a, 1 )
2687 CALL chkxer( srnamt, infot, nout, lerr, ok )
2690 CALL chpr(
'/', 0, ralpha, x, 1, a )
2691 CALL chkxer( srnamt, infot, nout, lerr, ok )
2693 CALL chpr(
'U', -1, ralpha, x, 1, a )
2694 CALL chkxer( srnamt, infot, nout, lerr, ok )
2696 CALL chpr(
'U', 0, ralpha, x, 0, a )
2697 CALL chkxer( srnamt, infot, nout, lerr, ok )
2700 CALL cher2(
'/', 0, alpha, x, 1, y, 1, a, 1 )
2701 CALL chkxer( srnamt, infot, nout, lerr, ok )
2703 CALL cher2(
'U', -1, alpha, x, 1, y, 1, a, 1 )
2704 CALL chkxer( srnamt, infot, nout, lerr, ok )
2706 CALL cher2(
'U', 0, alpha, x, 0, y, 1, a, 1 )
2707 CALL chkxer( srnamt, infot, nout, lerr, ok )
2709 CALL cher2(
'U', 0, alpha, x, 1, y, 0, a, 1 )
2710 CALL chkxer( srnamt, infot, nout, lerr, ok )
2712 CALL cher2(
'U', 2, alpha, x, 1, y, 1, a, 1 )
2713 CALL chkxer( srnamt, infot, nout, lerr, ok )
2716 CALL chpr2(
'/', 0, alpha, x, 1, y, 1, a )
2717 CALL chkxer( srnamt, infot, nout, lerr, ok )
2719 CALL chpr2(
'U', -1, alpha, x, 1, y, 1, a )
2720 CALL chkxer( srnamt, infot, nout, lerr, ok )
2722 CALL chpr2(
'U', 0, alpha, x, 0, y, 1, a )
2723 CALL chkxer( srnamt, infot, nout, lerr, ok )
2725 CALL chpr2(
'U', 0, alpha, x, 1, y, 0, a )
2726 CALL chkxer( srnamt, infot, nout, lerr, ok )
2729 WRITE( nout, fmt = 9999 )srnamt
2731 WRITE( nout, fmt = 9998 )srnamt
2735 9999
FORMAT(
' ', a6,
' PASSED THE TESTS OF ERROR-EXITS' )
2736 9998
FORMAT(
' ******* ', a6,
' FAILED THE TESTS OF ERROR-EXITS *****',