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 DOUBLE PRECISION 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 DOUBLE PRECISION RWORK( 150*nmax+2*maxrhs ), S( 2*nmax )
152 COMPLEX*16 A( ( kdmax+1 )*nmax, 7 ), B( nmax*maxrhs, 4 ),
153 $ work( nmax, nmax+maxrhs+10 )
156 LOGICAL LSAME, LSAMEN
157 DOUBLE PRECISION DLAMCH, DSECND
158 EXTERNAL lsame, lsamen, dlamch, dsecnd
176 INTEGER IPARMS( 100 )
179 COMMON / infoc / infot, nunit, ok, lerr
180 COMMON / srnamc / srnamt
181 COMMON / claenv / iparms
184 DATA threq / 2.0d0 / , intstr /
'0123456789' /
198 CALL ilaver( vers_major, vers_minor, vers_patch )
199 WRITE( nout, fmt = 9994 ) vers_major, vers_minor, vers_patch
203 READ( nin, fmt = * )nm
205 WRITE( nout, fmt = 9996 )
' NM ', nm, 1
208 ELSE IF( nm.GT.maxin )
THEN
209 WRITE( nout, fmt = 9995 )
' NM ', nm, maxin
213 READ( nin, fmt = * )( mval( i ), i = 1, nm )
215 IF( mval( i ).LT.0 )
THEN
216 WRITE( nout, fmt = 9996 )
' M ', mval( i ), 0
218 ELSE IF( mval( i ).GT.nmax )
THEN
219 WRITE( nout, fmt = 9995 )
' M ', mval( i ), nmax
224 $
WRITE( nout, fmt = 9993 )
'M ', ( mval( i ), i = 1, nm )
228 READ( nin, fmt = * )nn
230 WRITE( nout, fmt = 9996 )
' NN ', nn, 1
233 ELSE IF( nn.GT.maxin )
THEN
234 WRITE( nout, fmt = 9995 )
' NN ', nn, maxin
238 READ( nin, fmt = * )( nval( i ), i = 1, nn )
240 IF( nval( i ).LT.0 )
THEN
241 WRITE( nout, fmt = 9996 )
' N ', nval( i ), 0
243 ELSE IF( nval( i ).GT.nmax )
THEN
244 WRITE( nout, fmt = 9995 )
' N ', nval( i ), nmax
249 $
WRITE( nout, fmt = 9993 )
'N ', ( nval( i ), i = 1, nn )
253 READ( nin, fmt = * )nns
255 WRITE( nout, fmt = 9996 )
' NNS', nns, 1
258 ELSE IF( nns.GT.maxin )
THEN
259 WRITE( nout, fmt = 9995 )
' NNS', nns, maxin
263 READ( nin, fmt = * )( nsval( i ), i = 1, nns )
265 IF( nsval( i ).LT.0 )
THEN
266 WRITE( nout, fmt = 9996 )
'NRHS', nsval( i ), 0
268 ELSE IF( nsval( i ).GT.maxrhs )
THEN
269 WRITE( nout, fmt = 9995 )
'NRHS', nsval( i ), maxrhs
274 $
WRITE( nout, fmt = 9993 )
'NRHS', ( nsval( i ), i = 1, nns )
278 READ( nin, fmt = * )nnb
280 WRITE( nout, fmt = 9996 )
'NNB ', nnb, 1
283 ELSE IF( nnb.GT.maxin )
THEN
284 WRITE( nout, fmt = 9995 )
'NNB ', nnb, maxin
288 READ( nin, fmt = * )( nbval( i ), i = 1, nnb )
290 IF( nbval( i ).LT.0 )
THEN
291 WRITE( nout, fmt = 9996 )
' NB ', nbval( i ), 0
296 $
WRITE( nout, fmt = 9993 )
'NB ', ( nbval( i ), i = 1, nnb )
304 IF( nb.EQ.nbval2( j ) )
313 READ( nin, fmt = * )( nxval( i ), i = 1, nnb )
315 IF( nxval( i ).LT.0 )
THEN
316 WRITE( nout, fmt = 9996 )
' NX ', nxval( i ), 0
321 $
WRITE( nout, fmt = 9993 )
'NX ', ( nxval( i ), i = 1, nnb )
325 READ( nin, fmt = * )nrank
327 WRITE( nout, fmt = 9996 )
' NRANK ', nrank, 1
330 ELSE IF( nn.GT.maxin )
THEN
331 WRITE( nout, fmt = 9995 )
' NRANK ', nrank, maxin
335 READ( nin, fmt = * )( rankval( i ), i = 1, nrank )
337 IF( rankval( i ).LT.0 )
THEN
338 WRITE( nout, fmt = 9996 )
' RANK ', rankval( i ), 0
340 ELSE IF( rankval( i ).GT.100 )
THEN
341 WRITE( nout, fmt = 9995 )
' RANK ', rankval( i ), 100
346 $
WRITE( nout, fmt = 9993 )
'RANK % OF N',
347 $ ( rankval( i ), i = 1, nrank )
351 READ( nin, fmt = * )thresh
352 WRITE( nout, fmt = 9992 )thresh
356 READ( nin, fmt = * )tstchk
360 READ( nin, fmt = * )tstdrv
364 READ( nin, fmt = * )tsterr
367 WRITE( nout, fmt = 9999 )
373 eps = dlamch(
'Underflow threshold' )
374 WRITE( nout, fmt = 9991 )
'underflow', eps
375 eps = dlamch(
'Overflow threshold' )
376 WRITE( nout, fmt = 9991 )
'overflow ', eps
377 eps = dlamch(
'Epsilon' )
378 WRITE( nout, fmt = 9991 )
'precision', eps
379 WRITE( nout, fmt = * )
386 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
418 IF( .NOT.lsame( c1,
'Zomplex precision' ) )
THEN
419 WRITE( nout, fmt = 9990 )path
421 ELSE IF( nmats.LE.0 )
THEN
425 WRITE( nout, fmt = 9989 )path
427 ELSE IF( lsamen( 2, c2,
'GE' ) )
THEN
432 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
435 CALL zchkge( dotype, nm, mval, nn, nval, nnb2, nbval2, nns,
436 $ nsval, thresh, tsterr, lda, a( 1, 1 ),
437 $ a( 1, 2 ), a( 1, 3 ), b( 1, 1 ), b( 1, 2 ),
438 $ b( 1, 3 ), work, rwork, iwork, nout )
440 WRITE( nout, fmt = 9989 )path
444 CALL zdrvge( dotype, nn, nval, nrhs, thresh, tsterr, lda,
445 $ a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b( 1, 1 ),
446 $ b( 1, 2 ), b( 1, 3 ), b( 1, 4 ), s, work,
447 $ rwork, iwork, nout )
449 WRITE( nout, fmt = 9988 )path
452 ELSE IF( lsamen( 2, c2,
'GB' ) )
THEN
456 la = ( 2*kdmax+1 )*nmax
457 lafac = ( 3*kdmax+1 )*nmax
459 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
462 CALL zchkgb( dotype, nm, mval, nn, nval, nnb2, nbval2, nns,
463 $ nsval, thresh, tsterr, a( 1, 1 ), la,
464 $ a( 1, 3 ), lafac, b( 1, 1 ), b( 1, 2 ),
465 $ b( 1, 3 ), work, rwork, iwork, nout )
467 WRITE( nout, fmt = 9989 )path
471 CALL zdrvgb( dotype, nn, nval, nrhs, thresh, tsterr,
472 $ a( 1, 1 ), la, a( 1, 3 ), lafac, a( 1, 6 ),
473 $ b( 1, 1 ), b( 1, 2 ), b( 1, 3 ), b( 1, 4 ), s,
474 $ work, rwork, iwork, nout )
476 WRITE( nout, fmt = 9988 )path
479 ELSE IF( lsamen( 2, c2,
'GT' ) )
THEN
484 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
487 CALL zchkgt( dotype, nn, nval, nns, nsval, thresh, tsterr,
488 $ a( 1, 1 ), a( 1, 2 ), b( 1, 1 ), b( 1, 2 ),
489 $ b( 1, 3 ), work, rwork, iwork, nout )
491 WRITE( nout, fmt = 9989 )path
495 CALL zdrvgt( dotype, nn, nval, nrhs, thresh, tsterr,
496 $ a( 1, 1 ), a( 1, 2 ), b( 1, 1 ), b( 1, 2 ),
497 $ b( 1, 3 ), work, rwork, iwork, nout )
499 WRITE( nout, fmt = 9988 )path
502 ELSE IF( lsamen( 2, c2,
'PO' ) )
THEN
507 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
510 CALL zchkpo( dotype, nn, nval, nnb2, nbval2, nns, nsval,
511 $ thresh, tsterr, lda, a( 1, 1 ), a( 1, 2 ),
512 $ a( 1, 3 ), b( 1, 1 ), b( 1, 2 ), b( 1, 3 ),
513 $ work, rwork, nout )
515 WRITE( nout, fmt = 9989 )path
519 CALL zdrvpo( dotype, nn, nval, nrhs, thresh, tsterr, lda,
520 $ a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b( 1, 1 ),
521 $ b( 1, 2 ), b( 1, 3 ), b( 1, 4 ), s, work,
524 WRITE( nout, fmt = 9988 )path
527 ELSE IF( lsamen( 2, c2,
'PS' ) )
THEN
533 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
536 CALL zchkps( dotype, nn, nval, nnb2, nbval2, nrank,
537 $ rankval, thresh, tsterr, lda, a( 1, 1 ),
538 $ a( 1, 2 ), a( 1, 3 ), piv, work, rwork,
541 WRITE( nout, fmt = 9989 )path
544 ELSE IF( lsamen( 2, c2,
'PP' ) )
THEN
549 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
552 CALL zchkpp( dotype, nn, nval, nns, nsval, thresh, tsterr,
553 $ lda, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
554 $ b( 1, 1 ), b( 1, 2 ), b( 1, 3 ), work, rwork,
557 WRITE( nout, fmt = 9989 )path
561 CALL zdrvpp( dotype, nn, nval, nrhs, thresh, tsterr, lda,
562 $ a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b( 1, 1 ),
563 $ b( 1, 2 ), b( 1, 3 ), b( 1, 4 ), s, work,
566 WRITE( nout, fmt = 9988 )path
569 ELSE IF( lsamen( 2, c2,
'PB' ) )
THEN
574 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
577 CALL zchkpb( dotype, nn, nval, nnb2, nbval2, nns, nsval,
578 $ thresh, tsterr, lda, a( 1, 1 ), a( 1, 2 ),
579 $ a( 1, 3 ), b( 1, 1 ), b( 1, 2 ), b( 1, 3 ),
580 $ work, rwork, nout )
582 WRITE( nout, fmt = 9989 )path
586 CALL zdrvpb( dotype, nn, nval, nrhs, thresh, tsterr, lda,
587 $ a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b( 1, 1 ),
588 $ b( 1, 2 ), b( 1, 3 ), b( 1, 4 ), s, work,
591 WRITE( nout, fmt = 9988 )path
594 ELSE IF( lsamen( 2, c2,
'PT' ) )
THEN
599 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
602 CALL zchkpt( dotype, nn, nval, nns, nsval, thresh, tsterr,
603 $ a( 1, 1 ), s, a( 1, 2 ), b( 1, 1 ), b( 1, 2 ),
604 $ b( 1, 3 ), work, rwork, nout )
606 WRITE( nout, fmt = 9989 )path
610 CALL zdrvpt( dotype, nn, nval, nrhs, thresh, tsterr,
611 $ a( 1, 1 ), s, a( 1, 2 ), b( 1, 1 ), b( 1, 2 ),
612 $ b( 1, 3 ), work, rwork, nout )
614 WRITE( nout, fmt = 9988 )path
617 ELSE IF( lsamen( 2, c2,
'HE' ) )
THEN
622 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
625 CALL zchkhe( dotype, nn, nval, nnb2, nbval2, nns, nsval,
626 $ thresh, tsterr, lda, a( 1, 1 ), a( 1, 2 ),
627 $ a( 1, 3 ), b( 1, 1 ), b( 1, 2 ), b( 1, 3 ),
628 $ work, rwork, iwork, nout )
630 WRITE( nout, fmt = 9989 )path
634 CALL zdrvhe( dotype, nn, nval, nrhs, thresh, tsterr, lda,
635 $ a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b( 1, 1 ),
636 $ b( 1, 2 ), b( 1, 3 ), work, rwork, iwork,
639 WRITE( nout, fmt = 9988 )path
642 ELSE IF( lsamen( 2, c2,
'HR' ) )
THEN
648 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
651 CALL zchkhe_rook(dotype, nn, nval, nnb2, nbval2, nns, nsval,
652 $ thresh, tsterr, lda, a( 1, 1 ), a( 1, 2 ),
653 $ a( 1, 3 ), b( 1, 1 ), b( 1, 2 ), b( 1, 3 ),
654 $ work, rwork, iwork, nout )
656 WRITE( nout, fmt = 9989 )path
660 CALL zdrvhe_rook( dotype, nn, nval, nrhs, thresh, tsterr,
661 $ lda, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
662 $ b( 1, 1 ), b( 1, 2 ), b( 1, 3 ), work,
663 $ rwork, iwork, nout )
665 WRITE( nout, fmt = 9988 )path
668 ELSE IF( lsamen( 2, c2,
'HP' ) )
THEN
673 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
676 CALL zchkhp( dotype, nn, nval, nns, nsval, thresh, tsterr,
677 $ lda, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
678 $ b( 1, 1 ), b( 1, 2 ), b( 1, 3 ), work, rwork,
681 WRITE( nout, fmt = 9989 )path
685 CALL zdrvhp( dotype, nn, nval, nrhs, thresh, tsterr, lda,
686 $ a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b( 1, 1 ),
687 $ b( 1, 2 ), b( 1, 3 ), work, rwork, iwork,
690 WRITE( nout, fmt = 9988 )path
693 ELSE IF( lsamen( 2, c2,
'SY' ) )
THEN
699 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
702 CALL zchksy( dotype, nn, nval, nnb2, nbval2, nns, nsval,
703 $ thresh, tsterr, lda, a( 1, 1 ), a( 1, 2 ),
704 $ a( 1, 3 ), b( 1, 1 ), b( 1, 2 ), b( 1, 3 ),
705 $ work, rwork, iwork, nout )
707 WRITE( nout, fmt = 9989 )path
711 CALL zdrvsy( dotype, nn, nval, nrhs, thresh, tsterr, lda,
712 $ a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b( 1, 1 ),
713 $ b( 1, 2 ), b( 1, 3 ), work, rwork, iwork,
716 WRITE( nout, fmt = 9988 )path
719 ELSE IF( lsamen( 2, c2,
'SR' ) )
THEN
725 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
728 CALL zchksy_rook(dotype, nn, nval, nnb2, nbval2, nns, nsval,
729 $ thresh, tsterr, lda, a( 1, 1 ), a( 1, 2 ),
730 $ a( 1, 3 ), b( 1, 1 ), b( 1, 2 ), b( 1, 3 ),
731 $ work, rwork, iwork, nout )
733 WRITE( nout, fmt = 9989 )path
737 CALL zdrvsy_rook( dotype, nn, nval, nrhs, thresh, tsterr,
738 $ lda, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
739 $ b( 1, 1 ), b( 1, 2 ), b( 1, 3 ), work,
740 $ rwork, iwork, nout )
742 WRITE( nout, fmt = 9988 )path
745 ELSE IF( lsamen( 2, c2,
'SP' ) )
THEN
751 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
754 CALL zchksp( dotype, nn, nval, nns, nsval, thresh, tsterr,
755 $ lda, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
756 $ b( 1, 1 ), b( 1, 2 ), b( 1, 3 ), work, rwork,
759 WRITE( nout, fmt = 9989 )path
763 CALL zdrvsp( dotype, nn, nval, nrhs, thresh, tsterr, lda,
764 $ a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b( 1, 1 ),
765 $ b( 1, 2 ), b( 1, 3 ), work, rwork, iwork,
768 WRITE( nout, fmt = 9988 )path
771 ELSE IF( lsamen( 2, c2,
'TR' ) )
THEN
776 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
779 CALL zchktr( dotype, nn, nval, nnb2, nbval2, nns, nsval,
780 $ thresh, tsterr, lda, a( 1, 1 ), a( 1, 2 ),
781 $ b( 1, 1 ), b( 1, 2 ), b( 1, 3 ), work, rwork,
784 WRITE( nout, fmt = 9989 )path
787 ELSE IF( lsamen( 2, c2,
'TP' ) )
THEN
792 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
795 CALL zchktp( dotype, nn, nval, nns, nsval, thresh, tsterr,
796 $ lda, a( 1, 1 ), a( 1, 2 ), b( 1, 1 ),
797 $ b( 1, 2 ), b( 1, 3 ), work, rwork, nout )
799 WRITE( nout, fmt = 9989 )path
802 ELSE IF( lsamen( 2, c2,
'TB' ) )
THEN
807 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
810 CALL zchktb( dotype, nn, nval, nns, nsval, thresh, tsterr,
811 $ lda, a( 1, 1 ), a( 1, 2 ), b( 1, 1 ),
812 $ b( 1, 2 ), b( 1, 3 ), work, rwork, nout )
814 WRITE( nout, fmt = 9989 )path
817 ELSE IF( lsamen( 2, c2,
'QR' ) )
THEN
822 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
825 CALL zchkqr( dotype, nm, mval, nn, nval, nnb, nbval, nxval,
826 $ nrhs, thresh, tsterr, nmax, a( 1, 1 ),
827 $ a( 1, 2 ), a( 1, 3 ), a( 1, 4 ), a( 1, 5 ),
828 $ b( 1, 1 ), b( 1, 2 ), b( 1, 3 ), b( 1, 4 ),
829 $ work, rwork, iwork, nout )
831 WRITE( nout, fmt = 9989 )path
834 ELSE IF( lsamen( 2, c2,
'LQ' ) )
THEN
839 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
842 CALL zchklq( dotype, nm, mval, nn, nval, nnb, nbval, nxval,
843 $ nrhs, thresh, tsterr, nmax, a( 1, 1 ),
844 $ a( 1, 2 ), a( 1, 3 ), a( 1, 4 ), a( 1, 5 ),
845 $ b( 1, 1 ), b( 1, 2 ), b( 1, 3 ), b( 1, 4 ),
846 $ work, rwork, nout )
848 WRITE( nout, fmt = 9989 )path
851 ELSE IF( lsamen( 2, c2,
'QL' ) )
THEN
856 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
859 CALL zchkql( dotype, nm, mval, nn, nval, nnb, nbval, nxval,
860 $ nrhs, thresh, tsterr, nmax, a( 1, 1 ),
861 $ a( 1, 2 ), a( 1, 3 ), a( 1, 4 ), a( 1, 5 ),
862 $ b( 1, 1 ), b( 1, 2 ), b( 1, 3 ), b( 1, 4 ),
863 $ work, rwork, nout )
865 WRITE( nout, fmt = 9989 )path
868 ELSE IF( lsamen( 2, c2,
'RQ' ) )
THEN
873 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
876 CALL zchkrq( dotype, nm, mval, nn, nval, nnb, nbval, nxval,
877 $ nrhs, thresh, tsterr, nmax, a( 1, 1 ),
878 $ a( 1, 2 ), a( 1, 3 ), a( 1, 4 ), a( 1, 5 ),
879 $ b( 1, 1 ), b( 1, 2 ), b( 1, 3 ), b( 1, 4 ),
880 $ work, rwork, iwork, nout )
882 WRITE( nout, fmt = 9989 )path
885 ELSE IF( lsamen( 2, c2,
'EQ' ) )
THEN
891 CALL zchkeq( threq, nout )
893 WRITE( nout, fmt = 9989 )path
896 ELSE IF( lsamen( 2, c2,
'TZ' ) )
THEN
901 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
904 CALL zchktz( dotype, nm, mval, nn, nval, thresh, tsterr,
905 $ a( 1, 1 ), a( 1, 2 ), s( 1 ),
906 $ b( 1, 1 ), work, rwork, nout )
908 WRITE( nout, fmt = 9989 )path
911 ELSE IF( lsamen( 2, c2,
'QP' ) )
THEN
916 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
919 CALL zchkq3( dotype, nm, mval, nn, nval, nnb, nbval, nxval,
920 $ thresh, a( 1, 1 ), a( 1, 2 ), s( 1 ),
921 $ b( 1, 1 ), work, rwork, iwork,
924 WRITE( nout, fmt = 9989 )path
927 ELSE IF( lsamen( 2, c2,
'LS' ) )
THEN
932 CALL alareq( path, nmats, dotype, ntypes, nin, nout )
935 CALL zdrvls( dotype, nm, mval, nn, nval, nns, nsval, nnb,
936 $ nbval, nxval, thresh, tsterr, a( 1, 1 ),
937 $ a( 1, 2 ), a( 1, 3 ), a( 1, 4 ), a( 1, 5 ),
938 $ s( 1 ), s( nmax+1 ), work, rwork, iwork,
941 WRITE( nout, fmt = 9989 )path
945 ELSE IF( lsamen( 2, c2,
'QT' ) )
THEN
950 CALL zchkqrt( thresh, tsterr, nm, mval, nn, nval, nnb,
953 WRITE( nout, fmt = 9989 )path
956 ELSE IF( lsamen( 2, c2,
'QX' ) )
THEN
961 CALL zchkqrtp( thresh, tsterr, nm, mval, nn, nval, nnb,
964 WRITE( nout, fmt = 9989 )path
969 WRITE( nout, fmt = 9990 )path
981 WRITE( nout, fmt = 9998 )
982 WRITE( nout, fmt = 9997 )s2 - s1
984 9999
FORMAT( /
' Execution not attempted due to input errors' )
985 9998
FORMAT( /
' End of tests' )
986 9997
FORMAT(
' Total time used = ', f12.2,
' seconds', / )
987 9996
FORMAT(
' Invalid input value: ', a4,
'=', i6,
'; must be >=',
989 9995
FORMAT(
' Invalid input value: ', a4,
'=', i6,
'; must be <=',
991 9994
FORMAT(
' Tests of the COMPLEX*16 LAPACK routines ',
992 $ /
' LAPACK VERSION ', i1,
'.', i1,
'.', i1,
993 $ / /
' The following parameter values will be used:' )
994 9993
FORMAT( 4x, a4,
': ', 10i6, / 11x, 10i6 )
995 9992
FORMAT( /
' Routines pass computational tests if test ratio is ',
996 $
'less than', f8.2, / )
997 9991
FORMAT(
' Relative machine ', a,
' is taken to be', d16.6 )
998 9990
FORMAT( / 1x, a3,
': Unrecognized path name' )
999 9989
FORMAT( / 1x, a3,
' routines were not tested' )
1000 9988
FORMAT( / 1x, a3,
' driver routines were not tested' )
subroutine zchkeq(THRESH, NOUT)
ZCHKEQ
subroutine zchkhe_rook(DOTYPE, NN, NVAL, NNB, NBVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
ZCHKHE_ROOK
subroutine zchkrq(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)
ZCHKRQ
subroutine zchkpt(DOTYPE, NN, NVAL, NNS, NSVAL, THRESH, TSTERR, A, D, E, B, X, XACT, WORK, RWORK, NOUT)
ZCHKPT
subroutine zchkps(DOTYPE, NN, NVAL, NNB, NBVAL, NRANK, RANKVAL, THRESH, TSTERR, NMAX, A, AFAC, PERM, PIV, WORK, RWORK, NOUT)
ZCHKPS
subroutine zchktz(DOTYPE, NM, MVAL, NN, NVAL, THRESH, TSTERR, A, COPYA, S, TAU, WORK, RWORK, NOUT)
ZCHKTZ
subroutine zchkpo(DOTYPE, NN, NVAL, NNB, NBVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, NOUT)
ZCHKPO
subroutine zdrvge(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, ASAV, B, BSAV, X, XACT, S, WORK, RWORK, IWORK, NOUT)
ZDRVGE
subroutine zchksy_rook(DOTYPE, NN, NVAL, NNB, NBVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
ZCHKSY_ROOK
subroutine zchkgt(DOTYPE, NN, NVAL, NNS, NSVAL, THRESH, TSTERR, A, AF, B, X, XACT, WORK, RWORK, IWORK, NOUT)
ZCHKGT
subroutine zchkq3(DOTYPE, NM, MVAL, NN, NVAL, NNB, NBVAL, NXVAL, THRESH, A, COPYA, S, TAU, WORK, RWORK, IWORK, NOUT)
ZCHKQ3
subroutine alareq(PATH, NMATS, DOTYPE, NTYPES, NIN, NOUT)
ALAREQ
subroutine zchkhe(DOTYPE, NN, NVAL, NNB, NBVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
ZCHKHE
subroutine zchkql(DOTYPE, NM, MVAL, NN, NVAL, NNB, NBVAL, NXVAL, NRHS, THRESH, TSTERR, NMAX, A, AF, AQ, AL, AC, B, X, XACT, TAU, WORK, RWORK, NOUT)
ZCHKQL
subroutine zchkqr(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)
ZCHKQR
subroutine zdrvhe_rook(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
ZDRVHE_ROOK
subroutine zchkpb(DOTYPE, NN, NVAL, NNB, NBVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, NOUT)
ZCHKPB
subroutine zchkpp(DOTYPE, NN, NVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, NOUT)
ZCHKPP
subroutine zchkge(DOTYPE, NM, MVAL, NN, NVAL, NNB, NBVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
ZCHKGE
subroutine zchktr(DOTYPE, NN, NVAL, NNB, NBVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AINV, B, X, XACT, WORK, RWORK, NOUT)
ZCHKTR
subroutine zdrvpt(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, A, D, E, B, X, XACT, WORK, RWORK, NOUT)
ZDRVPT
subroutine zchktp(DOTYPE, NN, NVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, AP, AINVP, B, X, XACT, WORK, RWORK, NOUT)
ZCHKTP
subroutine zchksp(DOTYPE, NN, NVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
ZCHKSP
subroutine zdrvls(DOTYPE, NM, MVAL, NN, NVAL, NNS, NSVAL, NNB, NBVAL, NXVAL, THRESH, TSTERR, A, COPYA, B, COPYB, C, S, COPYS, WORK, RWORK, IWORK, NOUT)
ZDRVLS
subroutine zdrvgb(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, A, LA, AFB, LAFB, ASAV, B, BSAV, X, XACT, S, WORK, RWORK, IWORK, NOUT)
ZDRVGB
subroutine zchksy(DOTYPE, NN, NVAL, NNB, NBVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
ZCHKSY
subroutine zchklq(DOTYPE, NM, MVAL, NN, NVAL, NNB, NBVAL, NXVAL, NRHS, THRESH, TSTERR, NMAX, A, AF, AQ, AL, AC, B, X, XACT, TAU, WORK, RWORK, NOUT)
ZCHKLQ
subroutine zdrvsy_rook(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
ZDRVSY_ROOK
subroutine zdrvsy(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
ZDRVSY
subroutine zchktb(DOTYPE, NN, NVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, AB, AINV, B, X, XACT, WORK, RWORK, NOUT)
ZCHKTB
subroutine zchkqrt(THRESH, TSTERR, NM, MVAL, NN, NVAL, NNB, NBVAL, NOUT)
ZCHKQRT
subroutine zdrvgt(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, A, AF, B, X, XACT, WORK, RWORK, IWORK, NOUT)
ZDRVGT
subroutine ilaver(VERS_MAJOR, VERS_MINOR, VERS_PATCH)
ILAVER returns the LAPACK version.
subroutine zdrvhe(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
ZDRVHE
subroutine zchkhp(DOTYPE, NN, NVAL, NNS, NSVAL, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
ZCHKHP
subroutine zdrvpp(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, ASAV, B, BSAV, X, XACT, S, WORK, RWORK, NOUT)
ZDRVPP
subroutine zdrvpb(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, ASAV, B, BSAV, X, XACT, S, WORK, RWORK, NOUT)
ZDRVPB
subroutine zdrvpo(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, ASAV, B, BSAV, X, XACT, S, WORK, RWORK, NOUT)
ZDRVPO
subroutine zchkgb(DOTYPE, NM, MVAL, NN, NVAL, NNB, NBVAL, NNS, NSVAL, THRESH, TSTERR, A, LA, AFAC, LAFAC, B, X, XACT, WORK, RWORK, IWORK, NOUT)
ZCHKGB
subroutine zchkqrtp(THRESH, TSTERR, NM, MVAL, NN, NVAL, NNB, NBVAL, NOUT)
ZCHKQRTP
subroutine zdrvsp(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
ZDRVSP
subroutine zdrvhp(DOTYPE, NN, NVAL, NRHS, THRESH, TSTERR, NMAX, A, AFAC, AINV, B, X, XACT, WORK, RWORK, IWORK, NOUT)
ZDRVHP