781 SUBROUTINE zchk2( SNAME, EPS, THRESH, NOUT, NTRA, TRACE, REWI,
782 $ FATAL, NIDIM, IDIM, NKB, KB, NALF, ALF, NBET,
783 $ BET, NINC, INC, NMAX, INCMAX, A, AA, AS, X, XX,
784 $ XS, Y, YY, YS, YT, G )
795 COMPLEX*16 ZERO, HALF
796 PARAMETER ( ZERO = ( 0.0d0, 0.0d0 ),
797 $ half = ( 0.5d0, 0.0d0 ) )
798 DOUBLE PRECISION RZERO
799 PARAMETER ( RZERO = 0.0d0 )
801 DOUBLE PRECISION EPS, THRESH
802 INTEGER INCMAX, NALF, NBET, NIDIM, NINC, NKB, NMAX,
804 LOGICAL FATAL, REWI, TRACE
807 COMPLEX*16 A( NMAX, NMAX ), AA( NMAX*NMAX ), ALF( NALF
810 $ y( nmax ), ys( nmax*incmax ), yt( nmax ),
812 DOUBLE PRECISION G( NMAX )
813 INTEGER IDIM( NIDIM ), INC( NINC ), KB( NKB )
815 COMPLEX*16 ALPHA, ALS, BETA, BLS, TRANSL
816 DOUBLE PRECISION ERR, ERRMAX
817 INTEGER I, IA, IB, IC, IK, IN, INCX, INCXS, INCY,
818 $ incys, ix, iy, k, ks, laa, lda, ldas, lx, ly,
819 $ n, nargs, nc, nk, ns
820 LOGICAL BANDED, FULL, NULL, PACKED, RESET, SAME
821 CHARACTER*1 UPLO, UPLOS
836 COMMON /infoc/infot, noutc, ok, lerr
840 full = sname( 3: 3 ).EQ.
'E'
841 banded = sname( 3: 3 ).EQ.
'B'
842 packed = sname( 3: 3 ).EQ.
'P'
846 ELSE IF( banded )
THEN
848 ELSE IF( packed )
THEN
882 laa = ( n*( n + 1 ) )/2
894 CALL zmake( sname( 2: 3 ), uplo,
' ', n, n, a, nmax, aa,
895 $ lda, k, k, reset, transl )
904 CALL zmake(
'GE',
' ',
' ', 1, n, x, 1, xx,
905 $ abs( incx ), 0, n - 1, reset, transl )
908 xx( 1 + abs( incx )*( n/2 - 1 ) ) = zero
924 CALL zmake(
'GE',
' ',
' ', 1, n, y, 1, yy,
925 $ abs( incy ), 0, n - 1, reset,
955 $
WRITE( ntra, fmt = 9993 )nc, sname,
956 $ uplo, n, alpha, lda, incx, beta, incy
959 CALL zhemv( uplo, n, alpha, aa, lda, xx,
960 $ incx, beta, yy, incy )
961 ELSE IF( banded )
THEN
963 $
WRITE( ntra, fmt = 9994 )nc, sname,
964 $ uplo, n, k, alpha, lda, incx, beta,
968 CALL zhbmv( uplo, n, k, alpha, aa, lda,
969 $ xx, incx, beta, yy, incy )
970 ELSE IF( packed )
THEN
972 $
WRITE( ntra, fmt = 9995 )nc, sname,
973 $ uplo, n, alpha, incx, beta, incy
976 CALL zhpmv( uplo, n, alpha, aa, xx, incx,
983 WRITE( nout, fmt = 9992 )
990 isame( 1 ) = uplo.EQ.uplos
993 isame( 3 ) = als.EQ.alpha
994 isame( 4 ) = lze( as, aa, laa )
995 isame( 5 ) = ldas.EQ.lda
996 isame( 6 ) = lze( xs, xx, lx )
997 isame( 7 ) = incxs.EQ.incx
998 isame( 8 ) = bls.EQ.beta
1000 isame( 9 ) = lze( ys, yy, ly )
1002 isame( 9 ) = lzeres(
'GE',
' ', 1, n,
1003 $ ys, yy, abs( incy ) )
1005 isame( 10 ) = incys.EQ.incy
1006 ELSE IF( banded )
THEN
1007 isame( 3 ) = ks.EQ.k
1008 isame( 4 ) = als.EQ.alpha
1009 isame( 5 ) = lze( as, aa, laa )
1010 isame( 6 ) = ldas.EQ.lda
1011 isame( 7 ) = lze( xs, xx, lx )
1012 isame( 8 ) = incxs.EQ.incx
1013 isame( 9 ) = bls.EQ.beta
1015 isame( 10 ) = lze( ys, yy, ly )
1017 isame( 10 ) = lzeres(
'GE',
' ', 1, n,
1018 $ ys, yy, abs( incy ) )
1020 isame( 11 ) = incys.EQ.incy
1021 ELSE IF( packed )
THEN
1022 isame( 3 ) = als.EQ.alpha
1023 isame( 4 ) = lze( as, aa, laa )
1024 isame( 5 ) = lze( xs, xx, lx )
1025 isame( 6 ) = incxs.EQ.incx
1026 isame( 7 ) = bls.EQ.beta
1028 isame( 8 ) = lze( ys, yy, ly )
1030 isame( 8 ) = lzeres(
'GE',
' ', 1, n,
1031 $ ys, yy, abs( incy ) )
1033 isame( 9 ) = incys.EQ.incy
1041 same = same.AND.isame( i )
1042 IF( .NOT.isame( i ) )
1043 $
WRITE( nout, fmt = 9998 )i
1054 CALL zmvch(
'N', n, n, alpha, a, nmax, x,
1055 $ incx, beta, y, incy, yt, g,
1056 $ yy, eps, err, fatal, nout,
1058 errmax =
max( errmax, err )
1084 IF( errmax.LT.thresh )
THEN
1085 WRITE( nout, fmt = 9999 )sname, nc
1087 WRITE( nout, fmt = 9997 )sname, nc, errmax
1092 WRITE( nout, fmt = 9996 )sname
1094 WRITE( nout, fmt = 9993 )nc, sname, uplo, n, alpha, lda, incx,
1096 ELSE IF( banded )
THEN
1097 WRITE( nout, fmt = 9994 )nc, sname, uplo, n, k, alpha, lda,
1099 ELSE IF( packed )
THEN
1100 WRITE( nout, fmt = 9995 )nc, sname, uplo, n, alpha, incx,
1107 9999
FORMAT(
' ', a6,
' PASSED THE COMPUTATIONAL TESTS (', i6,
' CALL',
1109 9998
FORMAT(
' ******* FATAL ERROR - PARAMETER NUMBER ', i2,
' WAS CH',
1110 $
'ANGED INCORRECTLY *******' )
1111 9997
FORMAT(
' ', a6,
' COMPLETED THE COMPUTATIONAL TESTS (', i6,
' C',
1112 $
'ALLS)', /
' ******* BUT WITH MAXIMUM TEST RATIO', f8.2,
1113 $
' - SUSPECT *******' )
1114 9996
FORMAT(
' ******* ', a6,
' FAILED ON CALL NUMBER:' )
1115 9995
FORMAT( 1x, i6,
': ', a6,
'(''', a1,
''',', i3,
',(', f4.1,
',',
1116 $ f4.1,
'), AP, X,', i2,
',(', f4.1,
',', f4.1,
'), Y,', i2,
1118 9994
FORMAT( 1x, i6,
': ', a6,
'(''', a1,
''',', 2( i3,
',' ),
'(',
1119 $ f4.1,
',', f4.1,
'), A,', i3,
', X,', i2,
',(', f4.1,
',',
1120 $ f4.1,
'), Y,', i2,
') .' )
1121 9993
FORMAT( 1x, i6,
': ', a6,
'(''', a1,
''',', i3,
',(', f4.1,
',',
1122 $ f4.1,
'), A,', i3,
', X,', i2,
',(', f4.1,
',', f4.1,
'), ',
1124 9992
FORMAT(
' ******* FATAL ERROR - ERROR-EXIT TAKEN ON VALID CALL *',
1130 SUBROUTINE zchk3( SNAME, EPS, THRESH, NOUT, NTRA, TRACE, REWI,
1131 $ FATAL, NIDIM, IDIM, NKB, KB, NINC, INC, NMAX,
1132 $ INCMAX, A, AA, AS, X, XX, XS, XT, G, Z )
1143 COMPLEX*16 ZERO, HALF, ONE
1144 PARAMETER ( ZERO = ( 0.0d0, 0.0d0 ),
1145 $ half = ( 0.5d0, 0.0d0 ),
1146 $ one = ( 1.0d0, 0.0d0 ) )
1147 DOUBLE PRECISION RZERO
1148 parameter( rzero = 0.0d0 )
1150 DOUBLE PRECISION EPS, THRESH
1151 INTEGER INCMAX, NIDIM, NINC, NKB, NMAX, NOUT, NTRA
1152 LOGICAL FATAL, REWI, TRACE
1155 COMPLEX*16 A( NMAX, NMAX ), AA( NMAX*NMAX ),
1156 $ as( nmax*nmax ), x( nmax ), xs( nmax*incmax ),
1157 $ xt( nmax ), xx( nmax*incmax ), z( nmax )
1158 DOUBLE PRECISION G( NMAX )
1159 INTEGER IDIM( NIDIM ), INC( NINC ), KB( NKB )
1162 DOUBLE PRECISION ERR, ERRMAX
1163 INTEGER I, ICD, ICT, ICU, IK, IN, INCX, INCXS, IX, K,
1164 $ KS, LAA, LDA, LDAS, LX, N, NARGS, NC, NK, NS
1165 LOGICAL BANDED, FULL, NULL, PACKED, RESET, SAME
1166 CHARACTER*1 DIAG, DIAGS, TRANS, TRANSS, UPLO, UPLOS
1167 CHARACTER*2 ICHD, ICHU
1173 EXTERNAL LZE, LZERES
1180 INTEGER INFOT, NOUTC
1183 COMMON /infoc/infot, noutc, ok, lerr
1185 DATA ichu/
'UL'/, icht/
'NTC'/, ichd/
'UN'/
1187 full = sname( 3: 3 ).EQ.
'R'
1188 banded = sname( 3: 3 ).EQ.
'B'
1189 packed = sname( 3: 3 ).EQ.
'P'
1193 ELSE IF( banded )
THEN
1195 ELSE IF( packed )
THEN
1207 DO 110 in = 1, nidim
1233 laa = ( n*( n + 1 ) )/2
1240 uplo = ichu( icu: icu )
1243 trans = icht( ict: ict )
1246 diag = ichd( icd: icd )
1251 CALL zmake( sname( 2: 3 ), uplo, diag, n, n, a,
1252 $ nmax, aa, lda, k, k, reset, transl )
1261 CALL zmake(
'GE',
' ',
' ', 1, n, x, 1, xx,
1262 $ abs( incx ), 0, n - 1, reset,
1266 xx( 1 + abs( incx )*( n/2 - 1 ) ) = zero
1289 IF( sname( 4: 5 ).EQ.
'MV' )
THEN
1292 $
WRITE( ntra, fmt = 9993 )nc, sname,
1293 $ uplo, trans, diag, n, lda, incx
1296 CALL ztrmv( uplo, trans, diag, n, aa, lda,
1298 ELSE IF( banded )
THEN
1300 $
WRITE( ntra, fmt = 9994 )nc, sname,
1301 $ uplo, trans, diag, n, k, lda, incx
1304 CALL ztbmv( uplo, trans, diag, n, k, aa,
1306 ELSE IF( packed )
THEN
1308 $
WRITE( ntra, fmt = 9995 )nc, sname,
1309 $ uplo, trans, diag, n, incx
1312 CALL ztpmv( uplo, trans, diag, n, aa, xx,
1315 ELSE IF( sname( 4: 5 ).EQ.
'SV' )
THEN
1318 $
WRITE( ntra, fmt = 9993 )nc, sname,
1319 $ uplo, trans, diag, n, lda, incx
1322 CALL ztrsv( uplo, trans, diag, n, aa, lda,
1324 ELSE IF( banded )
THEN
1326 $
WRITE( ntra, fmt = 9994 )nc, sname,
1327 $ uplo, trans, diag, n, k, lda, incx
1330 CALL ztbsv( uplo, trans, diag, n, k, aa,
1332 ELSE IF( packed )
THEN
1334 $
WRITE( ntra, fmt = 9995 )nc, sname,
1335 $ uplo, trans, diag, n, incx
1338 CALL ztpsv( uplo, trans, diag, n, aa, xx,
1346 WRITE( nout, fmt = 9992 )
1353 isame( 1 ) = uplo.EQ.uplos
1354 isame( 2 ) = trans.EQ.transs
1355 isame( 3 ) = diag.EQ.diags
1356 isame( 4 ) = ns.EQ.n
1358 isame( 5 ) = lze( as, aa, laa )
1359 isame( 6 ) = ldas.EQ.lda
1361 isame( 7 ) = lze( xs, xx, lx )
1363 isame( 7 ) = lzeres(
'GE',
' ', 1, n, xs,
1366 isame( 8 ) = incxs.EQ.incx
1367 ELSE IF( banded )
THEN
1368 isame( 5 ) = ks.EQ.k
1369 isame( 6 ) = lze( as, aa, laa )
1370 isame( 7 ) = ldas.EQ.lda
1372 isame( 8 ) = lze( xs, xx, lx )
1374 isame( 8 ) = lzeres(
'GE',
' ', 1, n, xs,
1377 isame( 9 ) = incxs.EQ.incx
1378 ELSE IF( packed )
THEN
1379 isame( 5 ) = lze( as, aa, laa )
1381 isame( 6 ) = lze( xs, xx, lx )
1383 isame( 6 ) = lzeres(
'GE',
' ', 1, n, xs,
1386 isame( 7 ) = incxs.EQ.incx
1394 same = same.AND.isame( i )
1395 IF( .NOT.isame( i ) )
1396 $
WRITE( nout, fmt = 9998 )i
1404 IF( sname( 4: 5 ).EQ.
'MV' )
THEN
1408 CALL zmvch( trans, n, n, one, a, nmax, x,
1409 $ incx, zero, z, incx, xt, g,
1410 $ xx, eps, err, fatal, nout,
1412 ELSE IF( sname( 4: 5 ).EQ.
'SV' )
THEN
1417 z( i ) = xx( 1 + ( i - 1 )*
1419 xx( 1 + ( i - 1 )*abs( incx ) )
1422 CALL zmvch( trans, n, n, one, a, nmax, z,
1423 $ incx, zero, x, incx, xt, g,
1424 $ xx, eps, err, fatal, nout,
1427 errmax =
max( errmax, err )
1450 IF( errmax.LT.thresh )
THEN
1451 WRITE( nout, fmt = 9999 )sname, nc
1453 WRITE( nout, fmt = 9997 )sname, nc, errmax
1458 WRITE( nout, fmt = 9996 )sname
1460 WRITE( nout, fmt = 9993 )nc, sname, uplo, trans, diag, n, lda,
1462 ELSE IF( banded )
THEN
1463 WRITE( nout, fmt = 9994 )nc, sname, uplo, trans, diag, n, k,
1465 ELSE IF( packed )
THEN
1466 WRITE( nout, fmt = 9995 )nc, sname, uplo, trans, diag, n, incx
1472 9999
FORMAT(
' ', a6,
' PASSED THE COMPUTATIONAL TESTS (', i6,
' CALL',
1474 9998
FORMAT(
' ******* FATAL ERROR - PARAMETER NUMBER ', i2,
' WAS CH',
1475 $
'ANGED INCORRECTLY *******' )
1476 9997
FORMAT(
' ', a6,
' COMPLETED THE COMPUTATIONAL TESTS (', i6,
' C',
1477 $
'ALLS)', /
' ******* BUT WITH MAXIMUM TEST RATIO', f8.2,
1478 $
' - SUSPECT *******' )
1479 9996
FORMAT(
' ******* ', a6,
' FAILED ON CALL NUMBER:' )
1480 9995
FORMAT( 1x, i6,
': ', a6,
'(', 3(
'''', a1,
''',' ), i3,
', AP, ',
1482 9994
FORMAT( 1x, i6,
': ', a6,
'(', 3(
'''', a1,
''',' ), 2( i3,
',' ),
1483 $
' A,', i3,
', X,', i2,
') .' )
1484 9993
FORMAT( 1x, i6,
': ', a6,
'(', 3(
'''', a1,
''',' ), i3,
', A,',
1485 $ i3,
', X,', i2,
') .' )
1486 9992
FORMAT(
' ******* FATAL ERROR - ERROR-EXIT TAKEN ON VALID CALL *',
1492 SUBROUTINE zchk4( SNAME, EPS, THRESH, NOUT, NTRA, TRACE, REWI,
1493 $ FATAL, NIDIM, IDIM, NALF, ALF, NINC, INC, NMAX,
1494 $ INCMAX, A, AA, AS, X, XX, XS, Y, YY, YS, YT, G,
1506 COMPLEX*16 ZERO, HALF, ONE
1507 PARAMETER ( ZERO = ( 0.0d0, 0.0d0 ),
1508 $ half = ( 0.5d0, 0.0d0 ),
1509 $ one = ( 1.0d0, 0.0d0 ) )
1510 DOUBLE PRECISION RZERO
1511 PARAMETER ( RZERO = 0.0d0 )
1513 DOUBLE PRECISION EPS, THRESH
1514 INTEGER INCMAX, NALF, NIDIM, NINC, NMAX, NOUT, NTRA
1515 LOGICAL FATAL, REWI, TRACE
1518 COMPLEX*16 A( NMAX, NMAX ), AA( NMAX*NMAX ), ALF( NALF ),
1519 $ AS( NMAX*NMAX ), X( NMAX ), XS( NMAX*INCMAX ),
1520 $ xx( nmax*incmax ), y( nmax ),
1521 $ ys( nmax*incmax ), yt( nmax ),
1522 $ yy( nmax*incmax ), z( nmax )
1523 DOUBLE PRECISION G( NMAX )
1524 INTEGER IDIM( NIDIM ), INC( NINC )
1526 COMPLEX*16 ALPHA, ALS, TRANSL
1527 DOUBLE PRECISION ERR, ERRMAX
1528 INTEGER I, IA, IM, IN, INCX, INCXS, INCY, INCYS, IX,
1529 $ IY, J, LAA, LDA, LDAS, LX, LY, M, MS, N, NARGS,
1531 LOGICAL CONJ, NULL, RESET, SAME
1537 EXTERNAL LZE, LZERES
1541 INTRINSIC abs, dconjg,
max,
min
1543 INTEGER INFOT, NOUTC
1546 COMMON /infoc/infot, noutc, ok, lerr
1548 conj = sname( 5: 5 ).EQ.
'C'
1556 DO 120 in = 1, nidim
1562 $ m =
max( n - nd, 0 )
1564 $ m =
min( n + nd, nmax )
1574 null = n.LE.0.OR.m.LE.0
1583 CALL zmake(
'GE',
' ',
' ', 1, m, x, 1, xx, abs( incx ),
1584 $ 0, m - 1, reset, transl )
1587 xx( 1 + abs( incx )*( m/2 - 1 ) ) = zero
1597 CALL zmake(
'GE',
' ',
' ', 1, n, y, 1, yy,
1598 $ abs( incy ), 0, n - 1, reset, transl )
1601 yy( 1 + abs( incy )*( n/2 - 1 ) ) = zero
1610 CALL zmake( sname( 2: 3 ),
' ',
' ', m, n, a, nmax,
1611 $ aa, lda, m - 1, n - 1, reset, transl )
1636 $
WRITE( ntra, fmt = 9994 )nc, sname, m, n,
1637 $ alpha, incx, incy, lda
1641 CALL zgerc( m, n, alpha, xx, incx, yy, incy, aa,
1646 CALL zgeru( m, n, alpha, xx, incx, yy, incy, aa,
1653 WRITE( nout, fmt = 9993 )
1660 isame( 1 ) = ms.EQ.m
1661 isame( 2 ) = ns.EQ.n
1662 isame( 3 ) = als.EQ.alpha
1663 isame( 4 ) = lze( xs, xx, lx )
1664 isame( 5 ) = incxs.EQ.incx
1665 isame( 6 ) = lze( ys, yy, ly )
1666 isame( 7 ) = incys.EQ.incy
1668 isame( 8 ) = lze( as, aa, laa )
1670 isame( 8 ) = lzeres(
'GE',
' ', m, n, as, aa,
1673 isame( 9 ) = ldas.EQ.lda
1679 same = same.AND.isame( i )
1680 IF( .NOT.isame( i ) )
1681 $
WRITE( nout, fmt = 9998 )i
1698 z( i ) = x( m - i + 1 )
1705 w( 1 ) = y( n - j + 1 )
1708 $ w( 1 ) = dconjg( w( 1 ) )
1709 CALL zmvch(
'N', m, 1, alpha, z, nmax, w, 1,
1710 $ one, a( 1, j ), 1, yt, g,
1711 $ aa( 1 + ( j - 1 )*lda ), eps,
1712 $ err, fatal, nout, .true. )
1713 errmax =
max( errmax, err )
1735 IF( errmax.LT.thresh )
THEN
1736 WRITE( nout, fmt = 9999 )sname, nc
1738 WRITE( nout, fmt = 9997 )sname, nc, errmax
1743 WRITE( nout, fmt = 9995 )j
1746 WRITE( nout, fmt = 9996 )sname
1747 WRITE( nout, fmt = 9994 )nc, sname, m, n, alpha, incx, incy, lda
1752 9999
FORMAT(
' ', a6,
' PASSED THE COMPUTATIONAL TESTS (', i6,
' CALL',
1754 9998
FORMAT(
' ******* FATAL ERROR - PARAMETER NUMBER ', i2,
' WAS CH',
1755 $
'ANGED INCORRECTLY *******' )
1756 9997
FORMAT(
' ', a6,
' COMPLETED THE COMPUTATIONAL TESTS (', i6,
' C',
1757 $
'ALLS)', /
' ******* BUT WITH MAXIMUM TEST RATIO', f8.2,
1758 $
' - SUSPECT *******' )
1759 9996
FORMAT(
' ******* ', a6,
' FAILED ON CALL NUMBER:' )
1760 9995
FORMAT(
' THESE ARE THE RESULTS FOR COLUMN ', i3 )
1761 9994
FORMAT( 1x, i6,
': ', a6,
'(', 2( i3,
',' ),
'(', f4.1,
',', f4.1,
1762 $
'), X,', i2,
', Y,', i2,
', A,', i3,
') ',
1764 9993
FORMAT(
' ******* FATAL ERROR - ERROR-EXIT TAKEN ON VALID CALL *',
1770 SUBROUTINE zchk5( SNAME, EPS, THRESH, NOUT, NTRA, TRACE, REWI,
1771 $ FATAL, NIDIM, IDIM, NALF, ALF, NINC, INC, NMAX,
1772 $ INCMAX, A, AA, AS, X, XX, XS, Y, YY, YS, YT, G,
1784 COMPLEX*16 ZERO, HALF, ONE
1785 PARAMETER ( ZERO = ( 0.0d0, 0.0d0 ),
1786 $ half = ( 0.5d0, 0.0d0 ),
1787 $ one = ( 1.0d0, 0.0d0 ) )
1788 DOUBLE PRECISION RZERO
1789 PARAMETER ( RZERO = 0.0d0 )
1791 DOUBLE PRECISION EPS, THRESH
1792 INTEGER INCMAX, NALF, NIDIM, NINC, NMAX, NOUT, NTRA
1793 LOGICAL FATAL, REWI, TRACE
1796 COMPLEX*16 A( NMAX, NMAX ), AA( NMAX*NMAX ), ALF( NALF ),
1797 $ AS( NMAX*NMAX ), X( NMAX ), XS( NMAX*INCMAX ),
1798 $ xx( nmax*incmax ), y( nmax ),
1799 $ ys( nmax*incmax ), yt( nmax ),
1800 $ yy( nmax*incmax ), z( nmax )
1801 DOUBLE PRECISION G( NMAX )
1802 INTEGER IDIM( NIDIM ), INC( NINC )
1804 COMPLEX*16 ALPHA, TRANSL
1805 DOUBLE PRECISION ERR, ERRMAX, RALPHA, RALS
1806 INTEGER I, IA, IC, IN, INCX, INCXS, IX, J, JA, JJ, LAA,
1807 $ LDA, LDAS, LJ, LX, N, NARGS, NC, NS
1808 LOGICAL FULL, NULL, PACKED, RESET, SAME, UPPER
1809 CHARACTER*1 UPLO, UPLOS
1816 EXTERNAL lze, lzeres
1820 INTRINSIC abs, dble, dcmplx, dconjg,
max
1822 INTEGER INFOT, NOUTC
1825 COMMON /infoc/infot, noutc, ok, lerr
1829 full = sname( 3: 3 ).EQ.
'E'
1830 packed = sname( 3: 3 ).EQ.
'P'
1834 ELSE IF( packed )
THEN
1842 DO 100 in = 1, nidim
1852 laa = ( n*( n + 1 ) )/2
1858 uplo = ich( ic: ic )
1868 CALL zmake(
'GE',
' ',
' ', 1, n, x, 1, xx, abs( incx ),
1869 $ 0, n - 1, reset, transl )
1872 xx( 1 + abs( incx )*( n/2 - 1 ) ) = zero
1876 ralpha = dble( alf( ia ) )
1877 alpha = dcmplx( ralpha, rzero )
1878 null = n.LE.0.OR.ralpha.EQ.rzero
1883 CALL zmake( sname( 2: 3 ), uplo,
' ', n, n, a, nmax,
1884 $ aa, lda, n - 1, n - 1, reset, transl )
1906 $
WRITE( ntra, fmt = 9993 )nc, sname, uplo, n,
1910 CALL zher( uplo, n, ralpha, xx, incx, aa, lda )
1911 ELSE IF( packed )
THEN
1913 $
WRITE( ntra, fmt = 9994 )nc, sname, uplo, n,
1917 CALL zhpr( uplo, n, ralpha, xx, incx, aa )
1923 WRITE( nout, fmt = 9992 )
1930 isame( 1 ) = uplo.EQ.uplos
1931 isame( 2 ) = ns.EQ.n
1932 isame( 3 ) = rals.EQ.ralpha
1933 isame( 4 ) = lze( xs, xx, lx )
1934 isame( 5 ) = incxs.EQ.incx
1936 isame( 6 ) = lze( as, aa, laa )
1938 isame( 6 ) = lzeres( sname( 2: 3 ), uplo, n, n, as,
1941 IF( .NOT.packed )
THEN
1942 isame( 7 ) = ldas.EQ.lda
1949 same = same.AND.isame( i )
1950 IF( .NOT.isame( i ) )
1951 $
WRITE( nout, fmt = 9998 )i
1968 z( i ) = x( n - i + 1 )
1973 w( 1 ) = dconjg( z( j ) )
1981 CALL zmvch(
'N', lj, 1, alpha, z( jj ), lj, w,
1982 $ 1, one, a( jj, j ), 1, yt, g,
1983 $ aa( ja ), eps, err, fatal, nout,
1994 errmax =
max( errmax, err )
2015 IF( errmax.LT.thresh )
THEN
2016 WRITE( nout, fmt = 9999 )sname, nc
2018 WRITE( nout, fmt = 9997 )sname, nc, errmax
2023 WRITE( nout, fmt = 9995 )j
2026 WRITE( nout, fmt = 9996 )sname
2028 WRITE( nout, fmt = 9993 )nc, sname, uplo, n, ralpha, incx, lda
2029 ELSE IF( packed )
THEN
2030 WRITE( nout, fmt = 9994 )nc, sname, uplo, n, ralpha, incx
2036 9999
FORMAT(
' ', a6,
' PASSED THE COMPUTATIONAL TESTS (', i6,
' CALL',
2038 9998
FORMAT(
' ******* FATAL ERROR - PARAMETER NUMBER ', i2,
' WAS CH',
2039 $
'ANGED INCORRECTLY *******' )
2040 9997
FORMAT(
' ', a6,
' COMPLETED THE COMPUTATIONAL TESTS (', i6,
' C',
2041 $
'ALLS)', /
' ******* BUT WITH MAXIMUM TEST RATIO', f8.2,
2042 $
' - SUSPECT *******' )
2043 9996
FORMAT(
' ******* ', a6,
' FAILED ON CALL NUMBER:' )
2044 9995
FORMAT(
' THESE ARE THE RESULTS FOR COLUMN ', i3 )
2045 9994
FORMAT( 1x, i6,
': ', a6,
'(''', a1,
''',', i3,
',', f4.1,
', X,',
2047 9993
FORMAT( 1x, i6,
': ', a6,
'(''', a1,
''',', i3,
',', f4.1,
', X,',
2048 $ i2,
', A,', i3,
') .' )
2049 9992
FORMAT(
' ******* FATAL ERROR - ERROR-EXIT TAKEN ON VALID CALL *',
2055 SUBROUTINE zchk6( SNAME, EPS, THRESH, NOUT, NTRA, TRACE, REWI,
2056 $ FATAL, NIDIM, IDIM, NALF, ALF, NINC, INC, NMAX,
2057 $ INCMAX, A, AA, AS, X, XX, XS, Y, YY, YS, YT, G,
2069 COMPLEX*16 ZERO, HALF, ONE
2070 PARAMETER ( ZERO = ( 0.0d0, 0.0d0 ),
2071 $ half = ( 0.5d0, 0.0d0 ),
2072 $ one = ( 1.0d0, 0.0d0 ) )
2073 DOUBLE PRECISION RZERO
2074 PARAMETER ( RZERO = 0.0d0 )
2076 DOUBLE PRECISION EPS, THRESH
2077 INTEGER INCMAX, NALF, NIDIM, NINC, NMAX, NOUT, NTRA
2078 LOGICAL FATAL, REWI, TRACE
2081 COMPLEX*16 A( NMAX, NMAX ), AA( NMAX*NMAX ), ALF( NALF ),
2082 $ as( nmax*nmax ), x( nmax ), xs( nmax*incmax ),
2083 $ xx( nmax*incmax ), y( nmax ),
2084 $ ys( nmax*incmax ), yt( nmax ),
2085 $ yy( nmax*incmax ), z( nmax, 2 )
2086 DOUBLE PRECISION G( NMAX )
2087 INTEGER IDIM( NIDIM ), INC( NINC )
2089 COMPLEX*16 ALPHA, ALS, TRANSL
2090 DOUBLE PRECISION ERR, ERRMAX
2091 INTEGER I, IA, IC, IN, INCX, INCXS, INCY, INCYS, IX,
2092 $ iy, j, ja, jj, laa, lda, ldas, lj, lx, ly, n,
2094 LOGICAL FULL, NULL, PACKED, RESET, SAME, UPPER
2095 CHARACTER*1 UPLO, UPLOS
2102 EXTERNAL lze, lzeres
2106 INTRINSIC abs, dconjg,
max
2108 INTEGER INFOT, NOUTC
2111 COMMON /infoc/infot, noutc, ok, lerr
2115 full = sname( 3: 3 ).EQ.
'E'
2116 packed = sname( 3: 3 ).EQ.
'P'
2120 ELSE IF( packed )
THEN
2128 DO 140 in = 1, nidim
2138 laa = ( n*( n + 1 ) )/2
2144 uplo = ich( ic: ic )
2154 CALL zmake(
'GE',
' ',
' ', 1, n, x, 1, xx, abs( incx ),
2155 $ 0, n - 1, reset, transl )
2158 xx( 1 + abs( incx )*( n/2 - 1 ) ) = zero
2168 CALL zmake(
'GE',
' ',
' ', 1, n, y, 1, yy,
2169 $ abs( incy ), 0, n - 1, reset, transl )
2172 yy( 1 + abs( incy )*( n/2 - 1 ) ) = zero
2177 null = n.LE.0.OR.alpha.EQ.zero
2182 CALL zmake( sname( 2: 3 ), uplo,
' ', n, n, a,
2183 $ nmax, aa, lda, n - 1, n - 1, reset,
2210 $
WRITE( ntra, fmt = 9993 )nc, sname, uplo, n,
2211 $ alpha, incx, incy, lda
2214 CALL zher2( uplo, n, alpha, xx, incx, yy, incy,
2216 ELSE IF( packed )
THEN
2218 $
WRITE( ntra, fmt = 9994 )nc, sname, uplo, n,
2222 CALL zhpr2( uplo, n, alpha, xx, incx, yy, incy,
2229 WRITE( nout, fmt = 9992 )
2236 isame( 1 ) = uplo.EQ.uplos
2237 isame( 2 ) = ns.EQ.n
2238 isame( 3 ) = als.EQ.alpha
2239 isame( 4 ) = lze( xs, xx, lx )
2240 isame( 5 ) = incxs.EQ.incx
2241 isame( 6 ) = lze( ys, yy, ly )
2242 isame( 7 ) = incys.EQ.incy
2244 isame( 8 ) = lze( as, aa, laa )
2246 isame( 8 ) = lzeres( sname( 2: 3 ), uplo, n, n,
2249 IF( .NOT.packed )
THEN
2250 isame( 9 ) = ldas.EQ.lda
2257 same = same.AND.isame( i )
2258 IF( .NOT.isame( i ) )
2259 $
WRITE( nout, fmt = 9998 )i
2276 z( i, 1 ) = x( n - i + 1 )
2285 z( i, 2 ) = y( n - i + 1 )
2290 w( 1 ) = alpha*dconjg( z( j, 2 ) )
2291 w( 2 ) = dconjg( alpha )*dconjg( z( j, 1 ) )
2299 CALL zmvch(
'N', lj, 2, one, z( jj, 1 ),
2300 $ nmax, w, 1, one, a( jj, j ), 1,
2301 $ yt, g, aa( ja ), eps, err, fatal,
2312 errmax =
max( errmax, err )
2335 IF( errmax.LT.thresh )
THEN
2336 WRITE( nout, fmt = 9999 )sname, nc
2338 WRITE( nout, fmt = 9997 )sname, nc, errmax
2343 WRITE( nout, fmt = 9995 )j
2346 WRITE( nout, fmt = 9996 )sname
2348 WRITE( nout, fmt = 9993 )nc, sname, uplo, n, alpha, incx,
2350 ELSE IF( packed )
THEN
2351 WRITE( nout, fmt = 9994 )nc, sname, uplo, n, alpha, incx, incy
2357 9999
FORMAT(
' ', a6,
' PASSED THE COMPUTATIONAL TESTS (', i6,
' CALL',
2359 9998
FORMAT(
' ******* FATAL ERROR - PARAMETER NUMBER ', i2,
' WAS CH',
2360 $
'ANGED INCORRECTLY *******' )
2361 9997
FORMAT(
' ', a6,
' COMPLETED THE COMPUTATIONAL TESTS (', i6,
' C',
2362 $
'ALLS)', /
' ******* BUT WITH MAXIMUM TEST RATIO', f8.2,
2363 $
' - SUSPECT *******' )
2364 9996
FORMAT(
' ******* ', a6,
' FAILED ON CALL NUMBER:' )
2365 9995
FORMAT(
' THESE ARE THE RESULTS FOR COLUMN ', i3 )
2366 9994
FORMAT( 1x, i6,
': ', a6,
'(''', a1,
''',', i3,
',(', f4.1,
',',
2367 $ f4.1,
'), X,', i2,
', Y,', i2,
', AP) ',
2369 9993
FORMAT( 1x, i6,
': ', a6,
'(''', a1,
''',', i3,
',(', f4.1,
',',
2370 $ f4.1,
'), X,', i2,
', Y,', i2,
', A,', i3,
') ',
2372 9992
FORMAT(
' ******* FATAL ERROR - ERROR-EXIT TAKEN ON VALID CALL *',
2394 INTEGER INFOT, NOUTC
2397 COMPLEX*16 ALPHA, BETA
2398 DOUBLE PRECISION RALPHA
2400 COMPLEX*16 A( 1, 1 ), X( 1 ), Y( 1 )
2402 EXTERNAL CHKXER, ZGBMV, ZGEMV, ZGERC, ZGERU, ZHBMV,
2403 $ ZHEMV, ZHER, ZHER2, ZHPMV, ZHPR, ZHPR2, ZTBMV,
2406 COMMON /infoc/infot, noutc, ok, lerr
2414 GO TO ( 10, 20, 30, 40, 50, 60, 70, 80,
2415 $ 90, 100, 110, 120, 130, 140, 150, 160,
2418 CALL zgemv(
'/', 0, 0, alpha, a, 1, x, 1, beta, y, 1 )
2419 CALL chkxer( srnamt, infot, nout, lerr, ok )
2421 CALL zgemv(
'N', -1, 0, alpha, a, 1, x, 1, beta, y, 1 )
2422 CALL chkxer( srnamt, infot, nout, lerr, ok )
2424 CALL zgemv(
'N', 0, -1, alpha, a, 1, x, 1, beta, y, 1 )
2425 CALL chkxer( srnamt, infot, nout, lerr, ok )
2427 CALL zgemv(
'N', 2, 0, alpha, a, 1, x, 1, beta, y, 1 )
2428 CALL chkxer( srnamt, infot, nout, lerr, ok )
2430 CALL zgemv(
'N', 0, 0, alpha, a, 1, x, 0, beta, y, 1 )
2431 CALL chkxer( srnamt, infot, nout, lerr, ok )
2433 CALL zgemv(
'N', 0, 0, alpha, a, 1, x, 1, beta, y, 0 )
2434 CALL chkxer( srnamt, infot, nout, lerr, ok )
2437 CALL zgbmv(
'/', 0, 0, 0, 0, alpha, a, 1, x, 1, beta, y, 1 )
2438 CALL chkxer( srnamt, infot, nout, lerr, ok )
2440 CALL zgbmv(
'N', -1, 0, 0, 0, alpha, a, 1, x, 1, beta, y, 1 )
2441 CALL chkxer( srnamt, infot, nout, lerr, ok )
2443 CALL zgbmv(
'N', 0, -1, 0, 0, alpha, a, 1, x, 1, beta, y, 1 )
2444 CALL chkxer( srnamt, infot, nout, lerr, ok )
2446 CALL zgbmv(
'N', 0, 0, -1, 0, alpha, a, 1, x, 1, beta, y, 1 )
2447 CALL chkxer( srnamt, infot, nout, lerr, ok )
2449 CALL zgbmv(
'N', 2, 0, 0, -1, alpha, a, 1, x, 1, beta, y, 1 )
2450 CALL chkxer( srnamt, infot, nout, lerr, ok )
2452 CALL zgbmv(
'N', 0, 0, 1, 0, alpha, a, 1, x, 1, beta, y, 1 )
2453 CALL chkxer( srnamt, infot, nout, lerr, ok )
2455 CALL zgbmv(
'N', 0, 0, 0, 0, alpha, a, 1, x, 0, beta, y, 1 )
2456 CALL chkxer( srnamt, infot, nout, lerr, ok )
2458 CALL zgbmv(
'N', 0, 0, 0, 0, alpha, a, 1, x, 1, beta, y, 0 )
2459 CALL chkxer( srnamt, infot, nout, lerr, ok )
2462 CALL zhemv(
'/', 0, alpha, a, 1, x, 1, beta, y, 1 )
2463 CALL chkxer( srnamt, infot, nout, lerr, ok )
2465 CALL zhemv(
'U', -1, alpha, a, 1, x, 1, beta, y, 1 )
2466 CALL chkxer( srnamt, infot, nout, lerr, ok )
2468 CALL zhemv(
'U', 2, alpha, a, 1, x, 1, beta, y, 1 )
2469 CALL chkxer( srnamt, infot, nout, lerr, ok )
2471 CALL zhemv(
'U', 0, alpha, a, 1, x, 0, beta, y, 1 )
2472 CALL chkxer( srnamt, infot, nout, lerr, ok )
2474 CALL zhemv(
'U', 0, alpha, a, 1, x, 1, beta, y, 0 )
2475 CALL chkxer( srnamt, infot, nout, lerr, ok )
2478 CALL zhbmv(
'/', 0, 0, alpha, a, 1, x, 1, beta, y, 1 )
2479 CALL chkxer( srnamt, infot, nout, lerr, ok )
2481 CALL zhbmv(
'U', -1, 0, alpha, a, 1, x, 1, beta, y, 1 )
2482 CALL chkxer( srnamt, infot, nout, lerr, ok )
2484 CALL zhbmv(
'U', 0, -1, alpha, a, 1, x, 1, beta, y, 1 )
2485 CALL chkxer( srnamt, infot, nout, lerr, ok )
2487 CALL zhbmv(
'U', 0, 1, alpha, a, 1, x, 1, beta, y, 1 )
2488 CALL chkxer( srnamt, infot, nout, lerr, ok )
2490 CALL zhbmv(
'U', 0, 0, alpha, a, 1, x, 0, beta, y, 1 )
2491 CALL chkxer( srnamt, infot, nout, lerr, ok )
2493 CALL zhbmv(
'U', 0, 0, alpha, a, 1, x, 1, beta, y, 0 )
2494 CALL chkxer( srnamt, infot, nout, lerr, ok )
2497 CALL zhpmv(
'/', 0, alpha, a, x, 1, beta, y, 1 )
2498 CALL chkxer( srnamt, infot, nout, lerr, ok )
2500 CALL zhpmv(
'U', -1, alpha, a, x, 1, beta, y, 1 )
2501 CALL chkxer( srnamt, infot, nout, lerr, ok )
2503 CALL zhpmv(
'U', 0, alpha, a, x, 0, beta, y, 1 )
2504 CALL chkxer( srnamt, infot, nout, lerr, ok )
2506 CALL zhpmv(
'U', 0, alpha, a, x, 1, beta, y, 0 )
2507 CALL chkxer( srnamt, infot, nout, lerr, ok )
2510 CALL ztrmv(
'/',
'N',
'N', 0, a, 1, x, 1 )
2511 CALL chkxer( srnamt, infot, nout, lerr, ok )
2513 CALL ztrmv(
'U',
'/',
'N', 0, a, 1, x, 1 )
2514 CALL chkxer( srnamt, infot, nout, lerr, ok )
2516 CALL ztrmv(
'U',
'N',
'/', 0, a, 1, x, 1 )
2517 CALL chkxer( srnamt, infot, nout, lerr, ok )
2519 CALL ztrmv(
'U',
'N',
'N', -1, a, 1, x, 1 )
2520 CALL chkxer( srnamt, infot, nout, lerr, ok )
2522 CALL ztrmv(
'U',
'N',
'N', 2, a, 1, x, 1 )
2523 CALL chkxer( srnamt, infot, nout, lerr, ok )
2525 CALL ztrmv(
'U',
'N',
'N', 0, a, 1, x, 0 )
2526 CALL chkxer( srnamt, infot, nout, lerr, ok )
2529 CALL ztbmv(
'/',
'N',
'N', 0, 0, a, 1, x, 1 )
2530 CALL chkxer( srnamt, infot, nout, lerr, ok )
2532 CALL ztbmv(
'U',
'/',
'N', 0, 0, a, 1, x, 1 )
2533 CALL chkxer( srnamt, infot, nout, lerr, ok )
2535 CALL ztbmv(
'U',
'N',
'/', 0, 0, a, 1, x, 1 )
2536 CALL chkxer( srnamt, infot, nout, lerr, ok )
2538 CALL ztbmv(
'U',
'N',
'N', -1, 0, a, 1, x, 1 )
2539 CALL chkxer( srnamt, infot, nout, lerr, ok )
2541 CALL ztbmv(
'U',
'N',
'N', 0, -1, a, 1, x, 1 )
2542 CALL chkxer( srnamt, infot, nout, lerr, ok )
2544 CALL ztbmv(
'U',
'N',
'N', 0, 1, a, 1, x, 1 )
2545 CALL chkxer( srnamt, infot, nout, lerr, ok )
2547 CALL ztbmv(
'U',
'N',
'N', 0, 0, a, 1, x, 0 )
2548 CALL chkxer( srnamt, infot, nout, lerr, ok )
2551 CALL ztpmv(
'/',
'N',
'N', 0, a, x, 1 )
2552 CALL chkxer( srnamt, infot, nout, lerr, ok )
2554 CALL ztpmv(
'U',
'/',
'N', 0, a, x, 1 )
2555 CALL chkxer( srnamt, infot, nout, lerr, ok )
2557 CALL ztpmv(
'U',
'N',
'/', 0, a, x, 1 )
2558 CALL chkxer( srnamt, infot, nout, lerr, ok )
2560 CALL ztpmv(
'U',
'N',
'N', -1, a, x, 1 )
2561 CALL chkxer( srnamt, infot, nout, lerr, ok )
2563 CALL ztpmv(
'U',
'N',
'N', 0, a, x, 0 )
2564 CALL chkxer( srnamt, infot, nout, lerr, ok )
2567 CALL ztrsv(
'/',
'N',
'N', 0, a, 1, x, 1 )
2568 CALL chkxer( srnamt, infot, nout, lerr, ok )
2570 CALL ztrsv(
'U',
'/',
'N', 0, a, 1, x, 1 )
2571 CALL chkxer( srnamt, infot, nout, lerr, ok )
2573 CALL ztrsv(
'U',
'N',
'/', 0, a, 1, x, 1 )
2574 CALL chkxer( srnamt, infot, nout, lerr, ok )
2576 CALL ztrsv(
'U',
'N',
'N', -1, a, 1, x, 1 )
2577 CALL chkxer( srnamt, infot, nout, lerr, ok )
2579 CALL ztrsv(
'U',
'N',
'N', 2, a, 1, x, 1 )
2580 CALL chkxer( srnamt, infot, nout, lerr, ok )
2582 CALL ztrsv(
'U',
'N',
'N', 0, a, 1, x, 0 )
2583 CALL chkxer( srnamt, infot, nout, lerr, ok )
2586 CALL ztbsv(
'/',
'N',
'N', 0, 0, a, 1, x, 1 )
2587 CALL chkxer( srnamt, infot, nout, lerr, ok )
2589 CALL ztbsv(
'U',
'/',
'N', 0, 0, a, 1, x, 1 )
2590 CALL chkxer( srnamt, infot, nout, lerr, ok )
2592 CALL ztbsv(
'U',
'N',
'/', 0, 0, a, 1, x, 1 )
2593 CALL chkxer( srnamt, infot, nout, lerr, ok )
2595 CALL ztbsv(
'U',
'N',
'N', -1, 0, a, 1, x, 1 )
2596 CALL chkxer( srnamt, infot, nout, lerr, ok )
2598 CALL ztbsv(
'U',
'N',
'N', 0, -1, a, 1, x, 1 )
2599 CALL chkxer( srnamt, infot, nout, lerr, ok )
2601 CALL ztbsv(
'U',
'N',
'N', 0, 1, a, 1, x, 1 )
2602 CALL chkxer( srnamt, infot, nout, lerr, ok )
2604 CALL ztbsv(
'U',
'N',
'N', 0, 0, a, 1, x, 0 )
2605 CALL chkxer( srnamt, infot, nout, lerr, ok )
2608 CALL ztpsv(
'/',
'N',
'N', 0, a, x, 1 )
2609 CALL chkxer( srnamt, infot, nout, lerr, ok )
2611 CALL ztpsv(
'U',
'/',
'N', 0, a, x, 1 )
2612 CALL chkxer( srnamt, infot, nout, lerr, ok )
2614 CALL ztpsv(
'U',
'N',
'/', 0, a, x, 1 )
2615 CALL chkxer( srnamt, infot, nout, lerr, ok )
2617 CALL ztpsv(
'U',
'N',
'N', -1, a, x, 1 )
2618 CALL chkxer( srnamt, infot, nout, lerr, ok )
2620 CALL ztpsv(
'U',
'N',
'N', 0, a, x, 0 )
2621 CALL chkxer( srnamt, infot, nout, lerr, ok )
2624 CALL zgerc( -1, 0, alpha, x, 1, y, 1, a, 1 )
2625 CALL chkxer( srnamt, infot, nout, lerr, ok )
2627 CALL zgerc( 0, -1, alpha, x, 1, y, 1, a, 1 )
2628 CALL chkxer( srnamt, infot, nout, lerr, ok )
2630 CALL zgerc( 0, 0, alpha, x, 0, y, 1, a, 1 )
2631 CALL chkxer( srnamt, infot, nout, lerr, ok )
2633 CALL zgerc( 0, 0, alpha, x, 1, y, 0, a, 1 )
2634 CALL chkxer( srnamt, infot, nout, lerr, ok )
2636 CALL zgerc( 2, 0, alpha, x, 1, y, 1, a, 1 )
2637 CALL chkxer( srnamt, infot, nout, lerr, ok )
2640 CALL zgeru( -1, 0, alpha, x, 1, y, 1, a, 1 )
2641 CALL chkxer( srnamt, infot, nout, lerr, ok )
2643 CALL zgeru( 0, -1, alpha, x, 1, y, 1, a, 1 )
2644 CALL chkxer( srnamt, infot, nout, lerr, ok )
2646 CALL zgeru( 0, 0, alpha, x, 0, y, 1, a, 1 )
2647 CALL chkxer( srnamt, infot, nout, lerr, ok )
2649 CALL zgeru( 0, 0, alpha, x, 1, y, 0, a, 1 )
2650 CALL chkxer( srnamt, infot, nout, lerr, ok )
2652 CALL zgeru( 2, 0, alpha, x, 1, y, 1, a, 1 )
2653 CALL chkxer( srnamt, infot, nout, lerr, ok )
2656 CALL zher(
'/', 0, ralpha, x, 1, a, 1 )
2657 CALL chkxer( srnamt, infot, nout, lerr, ok )
2659 CALL zher(
'U', -1, ralpha, x, 1, a, 1 )
2660 CALL chkxer( srnamt, infot, nout, lerr, ok )
2662 CALL zher(
'U', 0, ralpha, x, 0, a, 1 )
2663 CALL chkxer( srnamt, infot, nout, lerr, ok )
2665 CALL zher(
'U', 2, ralpha, x, 1, a, 1 )
2666 CALL chkxer( srnamt, infot, nout, lerr, ok )
2669 CALL zhpr(
'/', 0, ralpha, x, 1, a )
2670 CALL chkxer( srnamt, infot, nout, lerr, ok )
2672 CALL zhpr(
'U', -1, ralpha, x, 1, a )
2673 CALL chkxer( srnamt, infot, nout, lerr, ok )
2675 CALL zhpr(
'U', 0, ralpha, x, 0, a )
2676 CALL chkxer( srnamt, infot, nout, lerr, ok )
2679 CALL zher2(
'/', 0, alpha, x, 1, y, 1, a, 1 )
2680 CALL chkxer( srnamt, infot, nout, lerr, ok )
2682 CALL zher2(
'U', -1, alpha, x, 1, y, 1, a, 1 )
2683 CALL chkxer( srnamt, infot, nout, lerr, ok )
2685 CALL zher2(
'U', 0, alpha, x, 0, y, 1, a, 1 )
2686 CALL chkxer( srnamt, infot, nout, lerr, ok )
2688 CALL zher2(
'U', 0, alpha, x, 1, y, 0, a, 1 )
2689 CALL chkxer( srnamt, infot, nout, lerr, ok )
2691 CALL zher2(
'U', 2, alpha, x, 1, y, 1, a, 1 )
2692 CALL chkxer( srnamt, infot, nout, lerr, ok )
2695 CALL zhpr2(
'/', 0, alpha, x, 1, y, 1, a )
2696 CALL chkxer( srnamt, infot, nout, lerr, ok )
2698 CALL zhpr2(
'U', -1, alpha, x, 1, y, 1, a )
2699 CALL chkxer( srnamt, infot, nout, lerr, ok )
2701 CALL zhpr2(
'U', 0, alpha, x, 0, y, 1, a )
2702 CALL chkxer( srnamt, infot, nout, lerr, ok )
2704 CALL zhpr2(
'U', 0, alpha, x, 1, y, 0, a )
2705 CALL chkxer( srnamt, infot, nout, lerr, ok )
2708 WRITE( nout, fmt = 9999 )srnamt
2710 WRITE( nout, fmt = 9998 )srnamt
2714 9999
FORMAT(
' ', a6,
' PASSED THE TESTS OF ERROR-EXITS' )
2715 9998
FORMAT(
' ******* ', a6,
' FAILED THE TESTS OF ERROR-EXITS *****',