120 parameter( nmax = 132 )
122 parameter( maxin = 12 )
124 parameter( maxrhs = 16 )
126 parameter( matmax = 30 )
128 parameter( nin = 5, nout = 6 )
130 parameter( kdmax = nmax+( nmax+1 ) / 4 )
133 LOGICAL FATAL, TSTCHK, TSTDRV, TSTERR
139 INTEGER I, IC, J, K, LA, LAFAC, LDA, NB, NM, NMATS, NN,
140 $ nnb, nnb2, nns, nrhs, ntypes, nrank,
141 $ vers_major, vers_minor, vers_patch
142 REAL EPS, S1, S2, THREQ, THRESH
145 LOGICAL DOTYPE( matmax )
146 INTEGER IWORK( 25*nmax ), MVAL( maxin ),
147 $ nbval( maxin ), nbval2( maxin ),
148 $ nsval( maxin ), nval( maxin ), nxval( maxin ),
149 $ rankval( maxin ), piv( nmax )
150 REAL A( ( kdmax+1 )*nmax, 7 ), B( nmax*maxrhs, 4 ),
151 $ e( nmax ), rwork( 5*nmax+2*maxrhs ),
152 $ s( 2*nmax ), work( nmax, nmax+maxrhs+30 )
155 LOGICAL LSAME, LSAMEN
157 EXTERNAL lsame, lsamen, second, slamch
175 INTEGER IPARMS( 100 )
178 COMMON / claenv / iparms
179 COMMON / infoc / infot, nunit, ok, lerr
180 COMMON / srnamc / srnamt
183 DATA threq / 2.0e0 / , intstr /
'0123456789' /
197 CALL ilaver( vers_major, vers_minor, vers_patch )
198 WRITE( nout, fmt = 9994 ) vers_major, vers_minor, vers_patch
202 READ( nin, fmt = * )nm
204 WRITE( nout, fmt = 9996 )
' NM ', nm, 1
207 ELSE IF( nm.GT.maxin )
THEN 208 WRITE( nout, fmt = 9995 )
' NM ', nm, maxin
212 READ( nin, fmt = * )( mval( i ), i = 1, nm )
214 IF( mval( i ).LT.0 )
THEN 215 WRITE( nout, fmt = 9996 )
' M ', mval( i ), 0
217 ELSE IF( mval( i ).GT.nmax )
THEN 218 WRITE( nout, fmt = 9995 )
' M ', mval( i ), nmax
223 $
WRITE( nout, fmt = 9993 )
'M ', ( mval( i ), i = 1, nm )
227 READ( nin, fmt = * )nn
229 WRITE( nout, fmt = 9996 )
' NN ', nn, 1
232 ELSE IF( nn.GT.maxin )
THEN 233 WRITE( nout, fmt = 9995 )
' NN ', nn, maxin
237 READ( nin, fmt = * )( nval( i ), i = 1, nn )
239 IF( nval( i ).LT.0 )
THEN 240 WRITE( nout, fmt = 9996 )
' N ', nval( i ), 0
242 ELSE IF( nval( i ).GT.nmax )
THEN 243 WRITE( nout, fmt = 9995 )
' N ', nval( i ), nmax
248 $
WRITE( nout, fmt = 9993 )
'N ', ( nval( i ), i = 1, nn )
252 READ( nin, fmt = * )nns
254 WRITE( nout, fmt = 9996 )
' NNS', nns, 1
257 ELSE IF( nns.GT.maxin )
THEN 258 WRITE( nout, fmt = 9995 )
' NNS', nns, maxin
262 READ( nin, fmt = * )( nsval( i ), i = 1, nns )
264 IF( nsval( i ).LT.0 )
THEN 265 WRITE( nout, fmt = 9996 )
'NRHS', nsval( i ), 0
267 ELSE IF( nsval( i ).GT.maxrhs )
THEN 268 WRITE( nout, fmt = 9995 )
'NRHS', nsval( i ), maxrhs
273 $
WRITE( nout, fmt = 9993 )
'NRHS', ( nsval( i ), i = 1, nns )
277 READ( nin, fmt = * )nnb
279 WRITE( nout, fmt = 9996 )
'NNB ', nnb, 1
282 ELSE IF( nnb.GT.maxin )
THEN 283 WRITE( nout, fmt = 9995 )
'NNB ', nnb, maxin
287 READ( nin, fmt = * )( nbval( i ), i = 1, nnb )
289 IF( nbval( i ).LT.0 )
THEN 290 WRITE( nout, fmt = 9996 )
' NB ', nbval( i ), 0
295 $
WRITE( nout, fmt = 9993 )
'NB ', ( nbval( i ), i = 1, nnb )
303 IF( nb.EQ.nbval2( j ) )
312 READ( nin, fmt = * )( nxval( i ), i = 1, nnb )
314 IF( nxval( i ).LT.0 )
THEN 315 WRITE( nout, fmt = 9996 )
' NX ', nxval( i ), 0
320 $
WRITE( nout, fmt = 9993 )
'NX ', ( nxval( i ), i = 1, nnb )
324 READ( nin, fmt = * )nrank
326 WRITE( nout, fmt = 9996 )
' NRANK ', nrank, 1
329 ELSE IF( nn.GT.maxin )
THEN 330 WRITE( nout, fmt = 9995 )
' NRANK ', nrank, maxin
334 READ( nin, fmt = * )( rankval( i ), i = 1, nrank )
336 IF( rankval( i ).LT.0 )
THEN 337 WRITE( nout, fmt = 9996 )
' RANK ', rankval( i ), 0
339 ELSE IF( rankval( i ).GT.100 )
THEN 340 WRITE( nout, fmt = 9995 )
' RANK ', rankval( i ), 100
345 $
WRITE( nout, fmt = 9993 )
'RANK % OF N',
346 $ ( rankval( i ), i = 1, nrank )
350 READ( nin, fmt = * )thresh
351 WRITE( nout, fmt = 9992 )thresh
355 READ( nin, fmt = * )tstchk
359 READ( nin, fmt = * )tstdrv
363 READ( nin, fmt = * )tsterr
366 WRITE( nout, fmt = 9999 )
372 eps = slamch(
'Underflow threshold' )
373 WRITE( nout, fmt = 9991 )
'underflow', eps
374 eps = slamch(
'Overflow threshold' )
375 WRITE( nout, fmt = 9991 )
'overflow ', eps
376 eps = slamch(
'Epsilon' )
377 WRITE( nout, fmt = 9991 )
'precision', eps
378 WRITE( nout, fmt = * )
384 READ( nin, fmt =
'(A72)', end = 140 )aline
394 IF( aline( i: i ).EQ.
' ' )
400 IF( c1.EQ.intstr( k: k ) )
THEN 407 nmats = nmats*10 + ic
419 IF( .NOT.lsame( c1,
'Single 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 schkge( 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 sdrvge( 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 schkgb( 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 sdrvgb( 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 schkgt( 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 sdrvgt( 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 schkpo( 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, iwork, nout )
516 WRITE( nout, fmt = 9989 )path
520 CALL sdrvpo( 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,
523 $ rwork, iwork, nout )
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 schkps( 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 schkpp( 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 sdrvpp( 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,
565 $ rwork, iwork, nout )
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 schkpb( 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, iwork, nout )
583 WRITE( nout, fmt = 9989 )path
587 CALL sdrvpb( 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,
590 $ rwork, iwork, nout )
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 schkpt( dotype, nn, nval, nns, nsval, thresh, tsterr,
604 $ a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b( 1, 1 ),
605 $ b( 1, 2 ), b( 1, 3 ), work, rwork, nout )
607 WRITE( nout, fmt = 9989 )path
611 CALL sdrvpt( dotype, nn, nval, nrhs, thresh, tsterr,
612 $ a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b( 1, 1 ),
613 $ b( 1, 2 ), b( 1, 3 ), work, rwork, nout )
615 WRITE( nout, fmt = 9988 )path
618 ELSE IF( lsamen( 2, c2,
'SY' ) )
THEN 624 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
627 CALL schksy( 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 sdrvsy( 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,
'SR' ) )
THEN 650 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
653 CALL schksy_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 sdrvsy_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 ),
665 $ work, rwork, iwork, nout )
667 WRITE( nout, fmt = 9988 )path
670 ELSE IF( lsamen( 2, c2,
'SK' ) )
THEN 677 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
680 CALL schksy_rk( dotype, nn, nval, nnb2, nbval2, nns, nsval,
681 $ thresh, tsterr, lda, a( 1, 1 ), a( 1, 2 ),
682 $ e, a( 1, 3 ), b( 1, 1 ), b( 1, 2 ),
683 $ b( 1, 3 ), work, rwork, iwork, nout )
685 WRITE( nout, fmt = 9989 )path
689 CALL sdrvsy_rk( dotype, nn, nval, nrhs, thresh, tsterr,
690 $ lda, a( 1, 1 ), a( 1, 2 ), e, a( 1, 3 ),
691 $ b( 1, 1 ), b( 1, 2 ), b( 1, 3 ),
692 $ work, rwork, iwork, nout )
694 WRITE( nout, fmt = 9988 )path
697 ELSE IF( lsamen( 2, c2,
'SA' ) )
THEN 703 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
706 CALL schksy_aa( dotype, nn, nval, nnb2, nbval2, nns,
707 $ nsval, thresh, tsterr, lda,
708 $ a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
709 $ b( 1, 1 ), b( 1, 2 ), b( 1, 3 ),
710 $ work, rwork, iwork, nout )
712 WRITE( nout, fmt = 9989 )path
716 CALL sdrvsy_aa( dotype, nn, nval, nrhs, thresh, tsterr,
717 $ lda, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
718 $ b( 1, 1 ), b( 1, 2 ), b( 1, 3 ),
719 $ work, rwork, iwork, nout )
721 WRITE( nout, fmt = 9988 )path
724 ELSE IF( lsamen( 2, c2,
'SP' ) )
THEN 730 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
733 CALL schksp( dotype, nn, nval, nns, nsval, thresh, tsterr,
734 $ lda, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
735 $ b( 1, 1 ), b( 1, 2 ), b( 1, 3 ), work, rwork,
738 WRITE( nout, fmt = 9989 )path
742 CALL sdrvsp( dotype, nn, nval, nrhs, thresh, tsterr, lda,
743 $ a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b( 1, 1 ),
744 $ b( 1, 2 ), b( 1, 3 ), work, rwork, iwork,
747 WRITE( nout, fmt = 9988 )path
750 ELSE IF( lsamen( 2, c2,
'TR' ) )
THEN 755 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
758 CALL schktr( dotype, nn, nval, nnb2, nbval2, nns, nsval,
759 $ thresh, tsterr, lda, a( 1, 1 ), a( 1, 2 ),
760 $ b( 1, 1 ), b( 1, 2 ), b( 1, 3 ), work, rwork,
763 WRITE( nout, fmt = 9989 )path
766 ELSE IF( lsamen( 2, c2,
'TP' ) )
THEN 771 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
774 CALL schktp( dotype, nn, nval, nns, nsval, thresh, tsterr,
775 $ lda, a( 1, 1 ), a( 1, 2 ), b( 1, 1 ),
776 $ b( 1, 2 ), b( 1, 3 ), work, rwork, iwork,
779 WRITE( nout, fmt = 9989 )path
782 ELSE IF( lsamen( 2, c2,
'TB' ) )
THEN 787 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
790 CALL schktb( dotype, nn, nval, nns, nsval, thresh, tsterr,
791 $ lda, a( 1, 1 ), a( 1, 2 ), b( 1, 1 ),
792 $ b( 1, 2 ), b( 1, 3 ), work, rwork, iwork,
795 WRITE( nout, fmt = 9989 )path
798 ELSE IF( lsamen( 2, c2,
'QR' ) )
THEN 803 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
806 CALL schkqr( dotype, nm, mval, nn, nval, nnb, nbval, nxval,
807 $ nrhs, thresh, tsterr, nmax, a( 1, 1 ),
808 $ a( 1, 2 ), a( 1, 3 ), a( 1, 4 ), a( 1, 5 ),
809 $ b( 1, 1 ), b( 1, 2 ), b( 1, 3 ), b( 1, 4 ),
810 $ work, rwork, iwork, nout )
812 WRITE( nout, fmt = 9989 )path
815 ELSE IF( lsamen( 2, c2,
'LQ' ) )
THEN 820 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
823 CALL schklq( dotype, nm, mval, nn, nval, nnb, nbval, nxval,
824 $ nrhs, thresh, tsterr, nmax, a( 1, 1 ),
825 $ a( 1, 2 ), a( 1, 3 ), a( 1, 4 ), a( 1, 5 ),
826 $ b( 1, 1 ), b( 1, 2 ), b( 1, 3 ), b( 1, 4 ),
827 $ work, rwork, nout )
829 WRITE( nout, fmt = 9989 )path
832 ELSE IF( lsamen( 2, c2,
'QL' ) )
THEN 837 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
840 CALL schkql( dotype, nm, mval, nn, nval, nnb, nbval, nxval,
841 $ nrhs, thresh, tsterr, nmax, a( 1, 1 ),
842 $ a( 1, 2 ), a( 1, 3 ), a( 1, 4 ), a( 1, 5 ),
843 $ b( 1, 1 ), b( 1, 2 ), b( 1, 3 ), b( 1, 4 ),
844 $ work, rwork, nout )
846 WRITE( nout, fmt = 9989 )path
849 ELSE IF( lsamen( 2, c2,
'RQ' ) )
THEN 854 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
857 CALL schkrq( dotype, nm, mval, nn, nval, nnb, nbval, nxval,
858 $ nrhs, thresh, tsterr, nmax, a( 1, 1 ),
859 $ a( 1, 2 ), a( 1, 3 ), a( 1, 4 ), a( 1, 5 ),
860 $ b( 1, 1 ), b( 1, 2 ), b( 1, 3 ), b( 1, 4 ),
861 $ work, rwork, iwork, nout )
863 WRITE( nout, fmt = 9989 )path
866 ELSE IF( lsamen( 2, c2,
'QP' ) )
THEN 871 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
874 CALL schkq3( dotype, nm, mval, nn, nval, nnb, nbval, nxval,
875 $ thresh, a( 1, 1 ), a( 1, 2 ), b( 1, 1 ),
876 $ b( 1, 3 ), work, iwork, nout )
878 WRITE( nout, fmt = 9989 )path
881 ELSE IF( lsamen( 2, c2,
'TZ' ) )
THEN 886 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
889 CALL schktz( dotype, nm, mval, nn, nval, thresh, tsterr,
890 $ a( 1, 1 ), a( 1, 2 ), b( 1, 1 ),
891 $ b( 1, 3 ), work, nout )
893 WRITE( nout, fmt = 9989 )path
896 ELSE IF( lsamen( 2, c2,
'LS' ) )
THEN 901 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
904 CALL sdrvls( dotype, nm, mval, nn, nval, nns, nsval, nnb,
905 $ nbval, nxval, thresh, tsterr, a( 1, 1 ),
906 $ a( 1, 2 ), b( 1, 1 ), b( 1, 2 ), b( 1, 3 ),
907 $ rwork, rwork( nmax+1 ), nout )
909 WRITE( nout, fmt = 9988 )path
912 ELSE IF( lsamen( 2, c2,
'EQ' ) )
THEN 918 CALL schkeq( threq, nout )
920 WRITE( nout, fmt = 9989 )path
923 ELSE IF( lsamen( 2, c2,
'QT' ) )
THEN 928 CALL schkqrt( thresh, tsterr, nm, mval, nn, nval, nnb,
931 WRITE( nout, fmt = 9989 )path
934 ELSE IF( lsamen( 2, c2,
'QX' ) )
THEN 939 CALL schkqrtp( thresh, tsterr, nm, mval, nn, nval, nnb,
942 WRITE( nout, fmt = 9989 )path
945 ELSE IF( lsamen( 2, c2,
'TQ' ) )
THEN 950 CALL schklqt( thresh, tsterr, nm, mval, nn, nval, nnb,
953 WRITE( nout, fmt = 9989 )path
956 ELSE IF( lsamen( 2, c2,
'XQ' ) )
THEN 961 CALL schklqtp( thresh, tsterr, nm, mval, nn, nval, nnb,
964 WRITE( nout, fmt = 9989 )path
967 ELSE IF( lsamen( 2, c2,
'TS' ) )
THEN 972 CALL schktsqr( thresh, tsterr, nm, mval, nn, nval, nnb,
975 WRITE( nout, fmt = 9989 )path
980 WRITE( nout, fmt = 9990 )path
992 WRITE( nout, fmt = 9998 )
993 WRITE( nout, fmt = 9997 )s2 - s1
995 9999
FORMAT( /
' Execution not attempted due to input errors' )
996 9998
FORMAT( /
' End of tests' )
997 9997
FORMAT(
' Total time used = ', f12.2,
' seconds', / )
998 9996
FORMAT(
' Invalid input value: ', a4,
'=', i6,
'; must be >=',
1000 9995
FORMAT(
' Invalid input value: ', a4,
'=', i6,
'; must be <=',
1002 9994
FORMAT(
' Tests of the REAL LAPACK routines ',
1003 $ /
' LAPACK VERSION ', i1,
'.', i1,
'.', i1,
1004 $ / /
' The following parameter values will be used:' )
1005 9993
FORMAT( 4x, a4,
': ', 10i6, / 11x, 10i6 )
1006 9992
FORMAT( /
' Routines pass computational tests if test ratio is ',
1007 $
'less than', f8.2, / )
1008 9991
FORMAT(
' Relative machine ', a,
' is taken to be', e16.6 )
1009 9990
FORMAT( / 1x, a3,
': Unrecognized path name' )
1010 9989
FORMAT( / 1x, a3,
' routines were not tested' )
1011 9988
FORMAT( / 1x, a3,
' driver routines were not tested' )
subroutine schkqrt(THRESH, TSTERR, NM, MVAL, NN, NVAL, NNB, NBVAL, NOUT)
SCHKQRT
subroutine schkgb(DOTYPE, NM, MVAL, NN, NVAL, NNB, NBVAL, NNS, NSVAL, THRESH, TSTERR, A, LA, AFAC, LAFAC, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SCHKGB
subroutine sdrvpt(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, A, D, E, B, X, XACT, WORK, RWORK, NOUT)
SDRVPT
subroutine schkqrtp(THRESH, TSTERR, NM, MVAL, NN, NVAL, NNB, NBVAL, NOUT)
SCHKQRTP
subroutine schkpb(DOTYPE, NN, NVAL, NNB, NBVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SCHKPB
subroutine schkqr(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)
SCHKQR
subroutine schksy_aa(DOTYPE, NN, NVAL, NNB, NBVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SCHKSY_AA
subroutine schklqtp(THRESH, TSTERR, NM, MVAL, NN, NVAL, NNB, NBVAL, NOUT)
SCHKLQTP
subroutine schktb(DOTYPE, NN, NVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, AB, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SCHKTB
subroutine schksy_rk(DOTYPE, NN, NVAL, NNB, NBVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, E, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SCHKSY_RK
subroutine schkgt(DOTYPE, NN, NVAL, NNS, NSVAL, THRESH, TSTERR, A, AF, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SCHKGT
subroutine alareq(PATH, NMATS, DOTYPE, NTYPES, NIN, NOUT)
ALAREQ
subroutine sdrvpp(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, ASAV, B, BSAV, X, XACT, S, WORK, RWORK, IWORK, NOUT)
SDRVPP
subroutine schkge(DOTYPE, NM, MVAL, NN, NVAL, NNB, NBVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SCHKGE
subroutine sdrvsy_rook(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SDRVSY_ROOK
subroutine schktp(DOTYPE, NN, NVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, AP, AINVP, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SCHKTP
subroutine sdrvgb(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, A, LA, AFB, LAFB, ASAV, B, BSAV, X, XACT, S, WORK, RWORK, IWORK, NOUT)
SDRVGB
subroutine sdrvsy(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SDRVSY
subroutine sdrvpb(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, ASAV, B, BSAV, X, XACT, S, WORK, RWORK, IWORK, NOUT)
SDRVPB
subroutine schktz(DOTYPE, NM, MVAL, NN, NVAL, THRESH, TSTERR, A, COPYA, S, TAU, WORK, NOUT)
SCHKTZ
subroutine schksp(DOTYPE, NN, NVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SCHKSP
subroutine sdrvsy_aa(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SDRVSY_AA
subroutine schkrq(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)
SCHKRQ
subroutine ilaver(VERS_MAJOR, VERS_MINOR, VERS_PATCH)
ILAVER returns the LAPACK version.
subroutine schkpo(DOTYPE, NN, NVAL, NNB, NBVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SCHKPO
subroutine schklqt(THRESH, TSTERR, NM, MVAL, NN, NVAL, NNB, NBVAL, NOUT)
SCHKLQT
subroutine sdrvls(DOTYPE, NM, MVAL, NN, NVAL, NNS, NSVAL, NNB, NBVAL, NXVAL, THRESH, TSTERR, A, COPYA, B, COPYB, C, S, COPYS, NOUT)
SDRVLS
subroutine schksy(DOTYPE, NN, NVAL, NNB, NBVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SCHKSY
subroutine schksy_rook(DOTYPE, NN, NVAL, NNB, NBVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SCHKSY_ROOK
subroutine schkps(DOTYPE, NN, NVAL, NNB, NBVAL, NRANK, RANKVAL, THRESH, TSTERR, NMAX, A, AFAC, PERM, PIV, WORK, RWORK, NOUT)
SCHKPS
subroutine schkpp(DOTYPE, NN, NVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SCHKPP
subroutine sdrvge(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, ASAV, B, BSAV, X, XACT, S, WORK, RWORK, IWORK, NOUT)
SDRVGE
subroutine schkq3(DOTYPE, NM, MVAL, NN, NVAL, NNB, NBVAL, NXVAL, THRESH, A, COPYA, S, TAU, WORK, IWORK, NOUT)
SCHKQ3
subroutine schkpt(DOTYPE, NN, NVAL, NNS, NSVAL, THRESH, TSTERR, A, D, E, B, X, XACT, WORK, RWORK, NOUT)
SCHKPT
subroutine sdrvpo(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, ASAV, B, BSAV, X, XACT, S, WORK, RWORK, IWORK, NOUT)
SDRVPO
subroutine schklq(DOTYPE, NM, MVAL, NN, NVAL, NNB, NBVAL, NXVAL, NRHS, THRESH, TSTERR, NMAX, A, AF, AQ, AL, AC, B, X, XACT, TAU, WORK, RWORK, NOUT)
SCHKLQ
subroutine schkql(DOTYPE, NM, MVAL, NN, NVAL, NNB, NBVAL, NXVAL, NRHS, THRESH, TSTERR, NMAX, A, AF, AQ, AL, AC, B, X, XACT, TAU, WORK, RWORK, NOUT)
SCHKQL
subroutine schktr(DOTYPE, NN, NVAL, NNB, NBVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SCHKTR
subroutine sdrvsp(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SDRVSP
subroutine sdrvgt(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, A, AF, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SDRVGT
subroutine schktsqr(THRESH, TSTERR, NM, MVAL, NN, NVAL, NNB, NBVAL, NOUT)
SCHKQRT
subroutine schkeq(THRESH, NOUT)
SCHKEQ
subroutine sdrvsy_rk(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, E, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SDRVSY_RK