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 sdrvpp(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, ASAV, B, BSAV, X, XACT, S, WORK, RWORK, IWORK, NOUT)
SDRVPP
subroutine schklqt(THRESH, TSTERR, NM, MVAL, NN, NVAL, NNB, NBVAL, NOUT)
SCHKLQT
subroutine schktsqr(THRESH, TSTERR, NM, MVAL, NN, NVAL, NNB, NBVAL, NOUT)
SCHKQRT
subroutine sdrvsy(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SDRVSY
subroutine sdrvsy_rook(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SDRVSY_ROOK
subroutine schktr(DOTYPE, NN, NVAL, NNB, NBVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SCHKTR
subroutine sdrvsy_aa(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SDRVSY_AA
subroutine schktp(DOTYPE, NN, NVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, AP, AINVP, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SCHKTP
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 sdrvsp(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SDRVSP
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 schkpo(DOTYPE, NN, NVAL, NNB, NBVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SCHKPO
subroutine sdrvgb(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, A, LA, AFB, LAFB, ASAV, B, BSAV, X, XACT, S, WORK, RWORK, IWORK, NOUT)
SDRVGB
subroutine sdrvge(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, ASAV, B, BSAV, X, XACT, S, WORK, RWORK, IWORK, NOUT)
SDRVGE
subroutine schkpp(DOTYPE, NN, NVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SCHKPP
subroutine alareq(PATH, NMATS, DOTYPE, NTYPES, NIN, NOUT)
ALAREQ
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 sdrvls(DOTYPE, NM, MVAL, NN, NVAL, NNS, NSVAL, NNB, NBVAL, NXVAL, THRESH, TSTERR, A, COPYA, B, COPYB, C, S, COPYS, NOUT)
SDRVLS
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 schkps(DOTYPE, NN, NVAL, NNB, NBVAL, NRANK, RANKVAL, THRESH, TSTERR, NMAX, A, AFAC, PERM, PIV, WORK, RWORK, NOUT)
SCHKPS
subroutine schktz(DOTYPE, NM, MVAL, NN, NVAL, THRESH, TSTERR, A, COPYA, S, TAU, WORK, NOUT)
SCHKTZ
subroutine schklqtp(THRESH, TSTERR, NM, MVAL, NN, NVAL, NNB, NBVAL, NOUT)
SCHKLQTP
subroutine schkq3(DOTYPE, NM, MVAL, NN, NVAL, NNB, NBVAL, NXVAL, THRESH, A, COPYA, S, TAU, WORK, IWORK, NOUT)
SCHKQ3
subroutine schksp(DOTYPE, NN, NVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SCHKSP
subroutine schksy(DOTYPE, NN, NVAL, NNB, NBVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SCHKSY
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 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 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 schkqrtp(THRESH, TSTERR, NM, MVAL, NN, NVAL, NNB, NBVAL, NOUT)
SCHKQRTP
subroutine sdrvpb(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, ASAV, B, BSAV, X, XACT, S, WORK, RWORK, IWORK, NOUT)
SDRVPB
subroutine sdrvgt(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, A, AF, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SDRVGT
subroutine sdrvsy_rk(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, E, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SDRVSY_RK
subroutine schkqrt(THRESH, TSTERR, NM, MVAL, NN, NVAL, NNB, NBVAL, NOUT)
SCHKQRT
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 sdrvpt(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, A, D, E, B, X, XACT, WORK, RWORK, NOUT)
SDRVPT
subroutine schkpt(DOTYPE, NN, NVAL, NNS, NSVAL, THRESH, TSTERR, A, D, E, B, X, XACT, WORK, RWORK, NOUT)
SCHKPT
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 ilaver(VERS_MAJOR, VERS_MINOR, VERS_PATCH)
ILAVER returns the LAPACK version.
subroutine schkgt(DOTYPE, NN, NVAL, NNS, NSVAL, THRESH, TSTERR, A, AF, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SCHKGT
subroutine schkpb(DOTYPE, NN, NVAL, NNB, NBVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SCHKPB
subroutine schkeq(THRESH, NOUT)
SCHKEQ
subroutine schktb(DOTYPE, NN, NVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, AB, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
SCHKTB