121 parameter ( nmax = 132 )
123 parameter ( maxin = 12 )
125 parameter ( maxrhs = 16 )
127 parameter ( matmax = 30 )
129 parameter ( nin = 5, nout = 6 )
131 parameter ( kdmax = nmax+( nmax+1 ) / 4 )
134 LOGICAL FATAL, TSTCHK, TSTDRV, TSTERR
140 INTEGER I, IC, J, K, LA, LAFAC, LDA, NB, NM, NMATS, NN,
141 $ nnb, nnb2, nns, nrhs, ntypes, nrank,
142 $ vers_major, vers_minor, vers_patch
143 REAL EPS, S1, S2, THREQ, THRESH
146 LOGICAL DOTYPE( matmax )
147 INTEGER IWORK( 25*nmax ), MVAL( maxin ),
148 $ nbval( maxin ), nbval2( maxin ),
149 $ nsval( maxin ), nval( maxin ), nxval( maxin ),
150 $ rankval( maxin ), piv( nmax )
151 REAL RWORK( 150*nmax+2*maxrhs ), S( 2*nmax )
152 COMPLEX A( ( kdmax+1 )*nmax, 7 ), B( nmax*maxrhs, 4 ),
153 $ work( nmax, nmax+maxrhs+10 )
156 LOGICAL LSAME, LSAMEN
158 EXTERNAL lsame, lsamen, second, slamch
177 INTEGER IPARMS( 100 )
180 COMMON / claenv / iparms
181 COMMON / infoc / infot, nunit, ok, lerr
182 COMMON / srnamc / srnamt
185 DATA threq / 2.0 / , intstr /
'0123456789' /
199 CALL ilaver( vers_major, vers_minor, vers_patch )
200 WRITE( nout, fmt = 9994 ) vers_major, vers_minor, vers_patch
204 READ( nin, fmt = * )nm
206 WRITE( nout, fmt = 9996 )
' NM ', nm, 1
209 ELSE IF( nm.GT.maxin )
THEN
210 WRITE( nout, fmt = 9995 )
' NM ', nm, maxin
214 READ( nin, fmt = * )( mval( i ), i = 1, nm )
216 IF( mval( i ).LT.0 )
THEN
217 WRITE( nout, fmt = 9996 )
' M ', mval( i ), 0
219 ELSE IF( mval( i ).GT.nmax )
THEN
220 WRITE( nout, fmt = 9995 )
' M ', mval( i ), nmax
225 $
WRITE( nout, fmt = 9993 )
'M ', ( mval( i ), i = 1, nm )
229 READ( nin, fmt = * )nn
231 WRITE( nout, fmt = 9996 )
' NN ', nn, 1
234 ELSE IF( nn.GT.maxin )
THEN
235 WRITE( nout, fmt = 9995 )
' NN ', nn, maxin
239 READ( nin, fmt = * )( nval( i ), i = 1, nn )
241 IF( nval( i ).LT.0 )
THEN
242 WRITE( nout, fmt = 9996 )
' N ', nval( i ), 0
244 ELSE IF( nval( i ).GT.nmax )
THEN
245 WRITE( nout, fmt = 9995 )
' N ', nval( i ), nmax
250 $
WRITE( nout, fmt = 9993 )
'N ', ( nval( i ), i = 1, nn )
254 READ( nin, fmt = * )nns
256 WRITE( nout, fmt = 9996 )
' NNS', nns, 1
259 ELSE IF( nns.GT.maxin )
THEN
260 WRITE( nout, fmt = 9995 )
' NNS', nns, maxin
264 READ( nin, fmt = * )( nsval( i ), i = 1, nns )
266 IF( nsval( i ).LT.0 )
THEN
267 WRITE( nout, fmt = 9996 )
'NRHS', nsval( i ), 0
269 ELSE IF( nsval( i ).GT.maxrhs )
THEN
270 WRITE( nout, fmt = 9995 )
'NRHS', nsval( i ), maxrhs
275 $
WRITE( nout, fmt = 9993 )
'NRHS', ( nsval( i ), i = 1, nns )
279 READ( nin, fmt = * )nnb
281 WRITE( nout, fmt = 9996 )
'NNB ', nnb, 1
284 ELSE IF( nnb.GT.maxin )
THEN
285 WRITE( nout, fmt = 9995 )
'NNB ', nnb, maxin
289 READ( nin, fmt = * )( nbval( i ), i = 1, nnb )
291 IF( nbval( i ).LT.0 )
THEN
292 WRITE( nout, fmt = 9996 )
' NB ', nbval( i ), 0
297 $
WRITE( nout, fmt = 9993 )
'NB ', ( nbval( i ), i = 1, nnb )
305 IF( nb.EQ.nbval2( j ) )
314 READ( nin, fmt = * )( nxval( i ), i = 1, nnb )
316 IF( nxval( i ).LT.0 )
THEN
317 WRITE( nout, fmt = 9996 )
' NX ', nxval( i ), 0
322 $
WRITE( nout, fmt = 9993 )
'NX ', ( nxval( i ), i = 1, nnb )
326 READ( nin, fmt = * )nrank
328 WRITE( nout, fmt = 9996 )
' NRANK ', nrank, 1
331 ELSE IF( nn.GT.maxin )
THEN
332 WRITE( nout, fmt = 9995 )
' NRANK ', nrank, maxin
336 READ( nin, fmt = * )( rankval( i ), i = 1, nrank )
338 IF( rankval( i ).LT.0 )
THEN
339 WRITE( nout, fmt = 9996 )
' RANK ', rankval( i ), 0
341 ELSE IF( rankval( i ).GT.100 )
THEN
342 WRITE( nout, fmt = 9995 )
' RANK ', rankval( i ), 100
347 $
WRITE( nout, fmt = 9993 )
'RANK % OF N',
348 $ ( rankval( i ), i = 1, nrank )
352 READ( nin, fmt = * )thresh
353 WRITE( nout, fmt = 9992 )thresh
357 READ( nin, fmt = * )tstchk
361 READ( nin, fmt = * )tstdrv
365 READ( nin, fmt = * )tsterr
368 WRITE( nout, fmt = 9999 )
374 eps = slamch(
'Underflow threshold' )
375 WRITE( nout, fmt = 9991 )
'underflow', eps
376 eps = slamch(
'Overflow threshold' )
377 WRITE( nout, fmt = 9991 )
'overflow ', eps
378 eps = slamch(
'Epsilon' )
379 WRITE( nout, fmt = 9991 )
'precision', eps
380 WRITE( nout, fmt = * )
387 READ( nin, fmt =
'(A72)', end = 140 )aline
395 IF( aline( i: i ).EQ.
' ' )
401 IF( c1.EQ.intstr( k: k ) )
THEN
408 nmats = nmats*10 + ic
419 IF( .NOT.lsame( c1,
'Complex precision' ) )
THEN
420 WRITE( nout, fmt = 9990 )path
422 ELSE IF( nmats.LE.0 )
THEN
426 WRITE( nout, fmt = 9989 )path
428 ELSE IF( lsamen( 2, c2,
'GE' ) )
THEN
433 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
436 CALL cchkge( dotype, nm, mval, nn, nval, nnb2, nbval2, nns,
437 $ nsval, thresh, tsterr, lda, a( 1, 1 ),
438 $ a( 1, 2 ), a( 1, 3 ), b( 1, 1 ), b( 1, 2 ),
439 $ b( 1, 3 ), work, rwork, iwork, nout )
441 WRITE( nout, fmt = 9989 )path
445 CALL cdrvge( dotype, nn, nval, nrhs, thresh, tsterr, lda,
446 $ a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b( 1, 1 ),
447 $ b( 1, 2 ), b( 1, 3 ), b( 1, 4 ), s, work,
448 $ rwork, iwork, nout )
450 WRITE( nout, fmt = 9988 )path
453 ELSE IF( lsamen( 2, c2,
'GB' ) )
THEN
457 la = ( 2*kdmax+1 )*nmax
458 lafac = ( 3*kdmax+1 )*nmax
460 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
463 CALL cchkgb( dotype, nm, mval, nn, nval, nnb2, nbval2, nns,
464 $ nsval, thresh, tsterr, a( 1, 1 ), la,
465 $ a( 1, 3 ), lafac, b( 1, 1 ), b( 1, 2 ),
466 $ b( 1, 3 ), work, rwork, iwork, nout )
468 WRITE( nout, fmt = 9989 )path
472 CALL cdrvgb( dotype, nn, nval, nrhs, thresh, tsterr,
473 $ a( 1, 1 ), la, a( 1, 3 ), lafac, a( 1, 6 ),
474 $ b( 1, 1 ), b( 1, 2 ), b( 1, 3 ), b( 1, 4 ), s,
475 $ work, rwork, iwork, nout )
477 WRITE( nout, fmt = 9988 )path
480 ELSE IF( lsamen( 2, c2,
'GT' ) )
THEN
485 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
488 CALL cchkgt( dotype, nn, nval, nns, nsval, thresh, tsterr,
489 $ a( 1, 1 ), a( 1, 2 ), b( 1, 1 ), b( 1, 2 ),
490 $ b( 1, 3 ), work, rwork, iwork, nout )
492 WRITE( nout, fmt = 9989 )path
496 CALL cdrvgt( dotype, nn, nval, nrhs, thresh, tsterr,
497 $ a( 1, 1 ), a( 1, 2 ), b( 1, 1 ), b( 1, 2 ),
498 $ b( 1, 3 ), work, rwork, iwork, nout )
500 WRITE( nout, fmt = 9988 )path
503 ELSE IF( lsamen( 2, c2,
'PO' ) )
THEN
508 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
511 CALL cchkpo( dotype, nn, nval, nnb2, nbval2, nns, nsval,
512 $ thresh, tsterr, lda, a( 1, 1 ), a( 1, 2 ),
513 $ a( 1, 3 ), b( 1, 1 ), b( 1, 2 ), b( 1, 3 ),
514 $ work, rwork, nout )
516 WRITE( nout, fmt = 9989 )path
520 CALL cdrvpo( dotype, nn, nval, nrhs, thresh, tsterr, lda,
521 $ a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b( 1, 1 ),
522 $ b( 1, 2 ), b( 1, 3 ), b( 1, 4 ), s, work,
525 WRITE( nout, fmt = 9988 )path
528 ELSE IF( lsamen( 2, c2,
'PS' ) )
THEN
534 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
537 CALL cchkps( dotype, nn, nval, nnb2, nbval2, nrank,
538 $ rankval, thresh, tsterr, lda, a( 1, 1 ),
539 $ a( 1, 2 ), a( 1, 3 ), piv, work, rwork,
542 WRITE( nout, fmt = 9989 )path
545 ELSE IF( lsamen( 2, c2,
'PP' ) )
THEN
550 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
553 CALL cchkpp( dotype, nn, nval, nns, nsval, thresh, tsterr,
554 $ lda, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
555 $ b( 1, 1 ), b( 1, 2 ), b( 1, 3 ), work, rwork,
558 WRITE( nout, fmt = 9989 )path
562 CALL cdrvpp( dotype, nn, nval, nrhs, thresh, tsterr, lda,
563 $ a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b( 1, 1 ),
564 $ b( 1, 2 ), b( 1, 3 ), b( 1, 4 ), s, work,
567 WRITE( nout, fmt = 9988 )path
570 ELSE IF( lsamen( 2, c2,
'PB' ) )
THEN
575 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
578 CALL cchkpb( dotype, nn, nval, nnb2, nbval2, nns, nsval,
579 $ thresh, tsterr, lda, a( 1, 1 ), a( 1, 2 ),
580 $ a( 1, 3 ), b( 1, 1 ), b( 1, 2 ), b( 1, 3 ),
581 $ work, rwork, nout )
583 WRITE( nout, fmt = 9989 )path
587 CALL cdrvpb( dotype, nn, nval, nrhs, thresh, tsterr, lda,
588 $ a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b( 1, 1 ),
589 $ b( 1, 2 ), b( 1, 3 ), b( 1, 4 ), s, work,
592 WRITE( nout, fmt = 9988 )path
595 ELSE IF( lsamen( 2, c2,
'PT' ) )
THEN
600 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
603 CALL cchkpt( dotype, nn, nval, nns, nsval, thresh, tsterr,
604 $ a( 1, 1 ), s, a( 1, 2 ), b( 1, 1 ), b( 1, 2 ),
605 $ b( 1, 3 ), work, rwork, nout )
607 WRITE( nout, fmt = 9989 )path
611 CALL cdrvpt( dotype, nn, nval, nrhs, thresh, tsterr,
612 $ a( 1, 1 ), s, a( 1, 2 ), b( 1, 1 ), b( 1, 2 ),
613 $ b( 1, 3 ), work, rwork, nout )
615 WRITE( nout, fmt = 9988 )path
618 ELSE IF( lsamen( 2, c2,
'HE' ) )
THEN
624 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
627 CALL cchkhe( dotype, nn, nval, nnb2, nbval2, nns, nsval,
628 $ thresh, tsterr, lda, a( 1, 1 ), a( 1, 2 ),
629 $ a( 1, 3 ), b( 1, 1 ), b( 1, 2 ), b( 1, 3 ),
630 $ work, rwork, iwork, nout )
632 WRITE( nout, fmt = 9989 )path
636 CALL cdrvhe( dotype, nn, nval, nrhs, thresh, tsterr, lda,
637 $ a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b( 1, 1 ),
638 $ b( 1, 2 ), b( 1, 3 ), work, rwork, iwork,
641 WRITE( nout, fmt = 9988 )path
644 ELSE IF( lsamen( 2, c2,
'HR' ) )
THEN
650 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
653 CALL cchkhe_rook(dotype, nn, nval, nnb2, nbval2, nns, nsval,
654 $ thresh, tsterr, lda, a( 1, 1 ), a( 1, 2 ),
655 $ a( 1, 3 ), b( 1, 1 ), b( 1, 2 ), b( 1, 3 ),
656 $ work, rwork, iwork, nout )
658 WRITE( nout, fmt = 9989 )path
662 CALL cdrvhe_rook( dotype, nn, nval, nrhs, thresh, tsterr,
663 $ lda, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
664 $ b( 1, 1 ), b( 1, 2 ), b( 1, 3 ), work,
665 $ rwork, iwork, nout )
667 WRITE( nout, fmt = 9988 )path
670 ELSE IF( lsamen( 2, c2,
'HP' ) )
THEN
676 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
679 CALL cchkhp( dotype, nn, nval, nns, nsval, thresh, tsterr,
680 $ lda, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
681 $ b( 1, 1 ), b( 1, 2 ), b( 1, 3 ), work, rwork,
684 WRITE( nout, fmt = 9989 )path
688 CALL cdrvhp( dotype, nn, nval, nrhs, thresh, tsterr, lda,
689 $ a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b( 1, 1 ),
690 $ b( 1, 2 ), b( 1, 3 ), work, rwork, iwork,
693 WRITE( nout, fmt = 9988 )path
696 ELSE IF( lsamen( 2, c2,
'SY' ) )
THEN
702 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
705 CALL cchksy( dotype, nn, nval, nnb2, nbval2, nns, nsval,
706 $ thresh, tsterr, lda, a( 1, 1 ), a( 1, 2 ),
707 $ a( 1, 3 ), b( 1, 1 ), b( 1, 2 ), b( 1, 3 ),
708 $ work, rwork, iwork, nout )
710 WRITE( nout, fmt = 9989 )path
714 CALL cdrvsy( dotype, nn, nval, nrhs, thresh, tsterr, lda,
715 $ a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b( 1, 1 ),
716 $ b( 1, 2 ), b( 1, 3 ), work, rwork, iwork,
719 WRITE( nout, fmt = 9988 )path
722 ELSE IF( lsamen( 2, c2,
'SR' ) )
THEN
728 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
731 CALL cchksy_rook(dotype, nn, nval, nnb2, nbval2, nns, nsval,
732 $ thresh, tsterr, lda, a( 1, 1 ), a( 1, 2 ),
733 $ a( 1, 3 ), b( 1, 1 ), b( 1, 2 ), b( 1, 3 ),
734 $ work, rwork, iwork, nout )
736 WRITE( nout, fmt = 9989 )path
740 CALL cdrvsy_rook( dotype, nn, nval, nrhs, thresh, tsterr,
741 $ lda, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
742 $ b( 1, 1 ), b( 1, 2 ), b( 1, 3 ), work,
743 $ rwork, iwork, nout )
745 WRITE( nout, fmt = 9988 )path
748 ELSE IF( lsamen( 2, c2,
'SP' ) )
THEN
754 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
757 CALL cchksp( dotype, nn, nval, nns, nsval, thresh, tsterr,
758 $ lda, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
759 $ b( 1, 1 ), b( 1, 2 ), b( 1, 3 ), work, rwork,
762 WRITE( nout, fmt = 9989 )path
766 CALL cdrvsp( dotype, nn, nval, nrhs, thresh, tsterr, lda,
767 $ a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b( 1, 1 ),
768 $ b( 1, 2 ), b( 1, 3 ), work, rwork, iwork,
771 WRITE( nout, fmt = 9988 )path
774 ELSE IF( lsamen( 2, c2,
'TR' ) )
THEN
779 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
782 CALL cchktr( dotype, nn, nval, nnb2, nbval2, nns, nsval,
783 $ thresh, tsterr, lda, a( 1, 1 ), a( 1, 2 ),
784 $ b( 1, 1 ), b( 1, 2 ), b( 1, 3 ), work, rwork,
787 WRITE( nout, fmt = 9989 )path
790 ELSE IF( lsamen( 2, c2,
'TP' ) )
THEN
795 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
798 CALL cchktp( dotype, nn, nval, nns, nsval, thresh, tsterr,
799 $ lda, a( 1, 1 ), a( 1, 2 ), b( 1, 1 ),
800 $ b( 1, 2 ), b( 1, 3 ), work, rwork, nout )
802 WRITE( nout, fmt = 9989 )path
805 ELSE IF( lsamen( 2, c2,
'TB' ) )
THEN
810 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
813 CALL cchktb( dotype, nn, nval, nns, nsval, thresh, tsterr,
814 $ lda, a( 1, 1 ), a( 1, 2 ), b( 1, 1 ),
815 $ b( 1, 2 ), b( 1, 3 ), work, rwork, nout )
817 WRITE( nout, fmt = 9989 )path
820 ELSE IF( lsamen( 2, c2,
'QR' ) )
THEN
825 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
828 CALL cchkqr( dotype, nm, mval, nn, nval, nnb, nbval, nxval,
829 $ nrhs, thresh, tsterr, nmax, a( 1, 1 ),
830 $ a( 1, 2 ), a( 1, 3 ), a( 1, 4 ), a( 1, 5 ),
831 $ b( 1, 1 ), b( 1, 2 ), b( 1, 3 ), b( 1, 4 ),
832 $ work, rwork, iwork, nout )
834 WRITE( nout, fmt = 9989 )path
837 ELSE IF( lsamen( 2, c2,
'LQ' ) )
THEN
842 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
845 CALL cchklq( dotype, nm, mval, nn, nval, nnb, nbval, nxval,
846 $ nrhs, thresh, tsterr, nmax, a( 1, 1 ),
847 $ a( 1, 2 ), a( 1, 3 ), a( 1, 4 ), a( 1, 5 ),
848 $ b( 1, 1 ), b( 1, 2 ), b( 1, 3 ), b( 1, 4 ),
849 $ work, rwork, nout )
851 WRITE( nout, fmt = 9989 )path
854 ELSE IF( lsamen( 2, c2,
'QL' ) )
THEN
859 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
862 CALL cchkql( dotype, nm, mval, nn, nval, nnb, nbval, nxval,
863 $ nrhs, thresh, tsterr, nmax, a( 1, 1 ),
864 $ a( 1, 2 ), a( 1, 3 ), a( 1, 4 ), a( 1, 5 ),
865 $ b( 1, 1 ), b( 1, 2 ), b( 1, 3 ), b( 1, 4 ),
866 $ work, rwork, nout )
868 WRITE( nout, fmt = 9989 )path
872 ELSE IF( lsamen( 2, c2,
'RQ' ) )
THEN
877 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
880 CALL cchkrq( dotype, nm, mval, nn, nval, nnb, nbval, nxval,
881 $ nrhs, thresh, tsterr, nmax, a( 1, 1 ),
882 $ a( 1, 2 ), a( 1, 3 ), a( 1, 4 ), a( 1, 5 ),
883 $ b( 1, 1 ), b( 1, 2 ), b( 1, 3 ), b( 1, 4 ),
884 $ work, rwork, iwork, nout )
886 WRITE( nout, fmt = 9989 )path
889 ELSE IF( lsamen( 2, c2,
'EQ' ) )
THEN
895 CALL cchkeq( threq, nout )
897 WRITE( nout, fmt = 9989 )path
900 ELSE IF( lsamen( 2, c2,
'TZ' ) )
THEN
905 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
908 CALL cchktz( dotype, nm, mval, nn, nval, thresh, tsterr,
909 $ a( 1, 1 ), a( 1, 2 ), s( 1 ),
910 $ b( 1, 1 ), work, rwork, nout )
912 WRITE( nout, fmt = 9989 )path
915 ELSE IF( lsamen( 2, c2,
'QP' ) )
THEN
920 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
923 CALL cchkq3( dotype, nm, mval, nn, nval, nnb, nbval, nxval,
924 $ thresh, a( 1, 1 ), a( 1, 2 ), s( 1 ),
925 $ b( 1, 1 ), work, rwork, iwork, nout )
927 WRITE( nout, fmt = 9989 )path
931 ELSE IF( lsamen( 2, c2,
'LS' ) )
THEN
936 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
939 CALL cdrvls( dotype, nm, mval, nn, nval, nns, nsval, nnb,
940 $ nbval, nxval, thresh, tsterr, a( 1, 1 ),
941 $ a( 1, 2 ), a( 1, 3 ), a( 1, 4 ), a( 1, 5 ),
942 $ s( 1 ), s( nmax+1 ), work, rwork, iwork,
945 WRITE( nout, fmt = 9989 )path
948 ELSE IF( lsamen( 2, c2,
'QT' ) )
THEN
953 CALL cchkqrt( thresh, tsterr, nm, mval, nn, nval, nnb,
956 WRITE( nout, fmt = 9989 )path
959 ELSE IF( lsamen( 2, c2,
'QX' ) )
THEN
964 CALL cchkqrtp( thresh, tsterr, nm, mval, nn, nval, nnb,
967 WRITE( nout, fmt = 9989 )path
972 WRITE( nout, fmt = 9990 )path
984 WRITE( nout, fmt = 9998 )
985 WRITE( nout, fmt = 9997 )s2 - s1
987 9999
FORMAT( /
' Execution not attempted due to input errors' )
988 9998
FORMAT( /
' End of tests' )
989 9997
FORMAT(
' Total time used = ', f12.2,
' seconds', / )
990 9996
FORMAT(
' Invalid input value: ', a4,
'=', i6,
'; must be >=',
992 9995
FORMAT(
' Invalid input value: ', a4,
'=', i6,
'; must be <=',
994 9994
FORMAT(
' Tests of the COMPLEX LAPACK routines ',
995 $ /
' LAPACK VERSION ', i1,
'.', i1,
'.', i1,
996 $ / /
' The following parameter values will be used:' )
997 9993
FORMAT( 4x, a4,
': ', 10i6, / 11x, 10i6 )
998 9992
FORMAT( /
' Routines pass computational tests if test ratio is ',
999 $
'less than', f8.2, / )
1000 9991
FORMAT(
' Relative machine ', a,
' is taken to be', e16.6 )
1001 9990
FORMAT( / 1x, a3,
': Unrecognized path name' )
1002 9989
FORMAT( / 1x, a3,
' routines were not tested' )
1003 9988
FORMAT( / 1x, a3,
' driver routines were not tested' )
subroutine cdrvgb(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, A, LA, AFB, LAFB, ASAV, B, BSAV, X, XACT, S, WORK, RWORK, IWORK, NOUT)
CDRVGB
subroutine cdrvhp(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
CDRVHP
subroutine cchksy(DOTYPE, NN, NVAL, NNB, NBVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
CCHKSY
subroutine cchkqrt(THRESH, TSTERR, NM, MVAL, NN, NVAL, NNB, NBVAL, NOUT)
CCHKQRT
subroutine cdrvpb(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, ASAV, B, BSAV, X, XACT, S, WORK, RWORK, NOUT)
CDRVPB
subroutine cdrvsy(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
CDRVSY
subroutine cchkqrtp(THRESH, TSTERR, NM, MVAL, NN, NVAL, NNB, NBVAL, NOUT)
CCHKQRTP
subroutine cdrvhe(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
CDRVHE
subroutine cchkpp(DOTYPE, NN, NVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, NOUT)
CCHKPP
subroutine cchkeq(THRESH, NOUT)
CCHKEQ
subroutine cchkql(DOTYPE, NM, MVAL, NN, NVAL, NNB, NBVAL, NXVAL, NRHS, THRESH, TSTERR, NMAX, A, AF, AQ, AL, AC, B, X, XACT, TAU, WORK, RWORK, NOUT)
CCHKQL
subroutine cchkhe_rook(DOTYPE, NN, NVAL, NNB, NBVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
CCHKHE_ROOK
subroutine alareq(PATH, NMATS, DOTYPE, NTYPES, NIN, NOUT)
ALAREQ
subroutine cchktr(DOTYPE, NN, NVAL, NNB, NBVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AINV, B, X, XACT, WORK, RWORK, NOUT)
CCHKTR
subroutine cdrvhe_rook(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
CDRVHE_ROOK
subroutine cdrvls(DOTYPE, NM, MVAL, NN, NVAL, NNS, NSVAL, NNB, NBVAL, NXVAL, THRESH, TSTERR, A, COPYA, B, COPYB, C, S, COPYS, WORK, RWORK, IWORK, NOUT)
CDRVLS
subroutine cdrvsy_rook(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
CDRVSY_ROOK
subroutine cchktp(DOTYPE, NN, NVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, AP, AINVP, B, X, XACT, WORK, RWORK, NOUT)
CCHKTP
subroutine cdrvge(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, ASAV, B, BSAV, X, XACT, S, WORK, RWORK, IWORK, NOUT)
CDRVGE
subroutine cchklq(DOTYPE, NM, MVAL, NN, NVAL, NNB, NBVAL, NXVAL, NRHS, THRESH, TSTERR, NMAX, A, AF, AQ, AL, AC, B, X, XACT, TAU, WORK, RWORK, NOUT)
CCHKLQ
subroutine cchkgb(DOTYPE, NM, MVAL, NN, NVAL, NNB, NBVAL, NNS, NSVAL, THRESH, TSTERR, A, LA, AFAC, LAFAC, B, X, XACT, WORK, RWORK, IWORK, NOUT)
CCHKGB
subroutine cdrvsp(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
CDRVSP
subroutine cchkgt(DOTYPE, NN, NVAL, NNS, NSVAL, THRESH, TSTERR, A, AF, B, X, XACT, WORK, RWORK, IWORK, NOUT)
CCHKGT
subroutine cchkrq(DOTYPE, NM, MVAL, NN, NVAL, NNB, NBVAL, NXVAL, NRHS, THRESH, TSTERR, NMAX, A, AF, AQ, AR, AC, B, X, XACT, TAU, WORK, RWORK, IWORK, NOUT)
CCHKRQ
subroutine cchkge(DOTYPE, NM, MVAL, NN, NVAL, NNB, NBVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
CCHKGE
subroutine cdrvgt(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, A, AF, B, X, XACT, WORK, RWORK, IWORK, NOUT)
CDRVGT
subroutine cchktb(DOTYPE, NN, NVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, AB, AINV, B, X, XACT, WORK, RWORK, NOUT)
CCHKTB
subroutine cdrvpt(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, A, D, E, B, X, XACT, WORK, RWORK, NOUT)
CDRVPT
subroutine cchkpt(DOTYPE, NN, NVAL, NNS, NSVAL, THRESH, TSTERR, A, D, E, B, X, XACT, WORK, RWORK, NOUT)
CCHKPT
subroutine ilaver(VERS_MAJOR, VERS_MINOR, VERS_PATCH)
ILAVER returns the LAPACK version.
subroutine cchktz(DOTYPE, NM, MVAL, NN, NVAL, THRESH, TSTERR, A, COPYA, S, TAU, WORK, RWORK, NOUT)
CCHKTZ
subroutine cchkhe(DOTYPE, NN, NVAL, NNB, NBVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
CCHKHE
subroutine cchkqr(DOTYPE, NM, MVAL, NN, NVAL, NNB, NBVAL, NXVAL, NRHS, THRESH, TSTERR, NMAX, A, AF, AQ, AR, AC, B, X, XACT, TAU, WORK, RWORK, IWORK, NOUT)
CCHKQR
subroutine cchkps(DOTYPE, NN, NVAL, NNB, NBVAL, NRANK, RANKVAL, THRESH, TSTERR, NMAX, A, AFAC, PERM, PIV, WORK, RWORK, NOUT)
CCHKPS
subroutine cdrvpo(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, ASAV, B, BSAV, X, XACT, S, WORK, RWORK, NOUT)
CDRVPO
subroutine cdrvpp(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, ASAV, B, BSAV, X, XACT, S, WORK, RWORK, NOUT)
CDRVPP
subroutine cchkpb(DOTYPE, NN, NVAL, NNB, NBVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, NOUT)
CCHKPB
subroutine cchkq3(DOTYPE, NM, MVAL, NN, NVAL, NNB, NBVAL, NXVAL, THRESH, A, COPYA, S, TAU, WORK, RWORK, IWORK, NOUT)
CCHKQ3
subroutine cchksy_rook(DOTYPE, NN, NVAL, NNB, NBVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
CCHKSY_ROOK
subroutine cchksp(DOTYPE, NN, NVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
CCHKSP
subroutine cchkpo(DOTYPE, NN, NVAL, NNB, NBVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, NOUT)
CCHKPO
subroutine cchkhp(DOTYPE, NN, NVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
CCHKHP