Extend tests for error exit sysv/sytd2/gehd2 (Reference-LAPACK PR 795)

This commit is contained in:
Martin Kroeker 2023-05-18 17:31:55 +02:00 committed by GitHub
parent be05ba4374
commit 0c38ebd599
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 337 additions and 25 deletions

View File

@ -21,8 +21,8 @@
*> *>
*> \verbatim *> \verbatim
*> *>
*> CERRHS tests the error exits for CGEBAK, CGEBAL, CGEHRD, CUNGHR, *> CERRHS tests the error exits for CGEBAK, CGEBAL, CGEHRD, CGEHD2,
*> CUNMHR, CHSEQR, CHSEIN, and CTREVC. *> CUNGHR, CUNMHR, CHSEQR, CHSEIN, CTREVC, and CTREVC3.
*> \endverbatim *> \endverbatim
* *
* Arguments: * Arguments:
@ -86,7 +86,7 @@
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CHKXER, CGEBAK, CGEBAL, CGEHRD, CHSEIN, CHSEQR, EXTERNAL CHKXER, CGEBAK, CGEBAL, CGEHRD, CHSEIN, CHSEQR,
$ CUNGHR, CUNMHR, CTREVC $ CUNGHR, CUNMHR, CTREVC, CTREVC3, CGEHD2
* .. * ..
* .. Intrinsic Functions .. * .. Intrinsic Functions ..
INTRINSIC REAL INTRINSIC REAL
@ -193,6 +193,29 @@
CALL CHKXER( 'CGEHRD', INFOT, NOUT, LERR, OK ) CALL CHKXER( 'CGEHRD', INFOT, NOUT, LERR, OK )
NT = NT + 7 NT = NT + 7
* *
* CGEHD2
*
SRNAMT = 'CGEHD2'
INFOT = 1
CALL CGEHD2( -1, 1, 1, A, 1, TAU, W, INFO )
CALL CHKXER( 'CGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL CGEHD2( 0, 0, 0, A, 1, TAU, W, INFO )
CALL CHKXER( 'CGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL CGEHD2( 0, 2, 0, A, 1, TAU, W, INFO )
CALL CHKXER( 'CGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 3
CALL CGEHD2( 1, 1, 0, A, 1, TAU, W, INFO )
CALL CHKXER( 'CGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 3
CALL CGEHD2( 0, 1, 1, A, 1, TAU, W, INFO )
CALL CHKXER( 'CGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 5
CALL CGEHD2( 2, 1, 1, A, 1, TAU, W, INFO )
CALL CHKXER( 'CGEHD2', INFOT, NOUT, LERR, OK )
NT = NT + 6
*
* CUNGHR * CUNGHR
* *
SRNAMT = 'CUNGHR' SRNAMT = 'CUNGHR'
@ -398,6 +421,47 @@
$ RW, INFO ) $ RW, INFO )
CALL CHKXER( 'CTREVC', INFOT, NOUT, LERR, OK ) CALL CHKXER( 'CTREVC', INFOT, NOUT, LERR, OK )
NT = NT + 7 NT = NT + 7
*
* CTREVC3
*
SRNAMT = 'CTREVC3'
INFOT = 1
CALL CTREVC3( '/', 'A', SEL, 0, A, 1, VL, 1, VR, 1, 0, M, W,
$ LW, RW, 1, INFO )
CALL CHKXER( 'CTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL CTREVC3( 'L', '/', SEL, 0, A, 1, VL, 1, VR, 1, 0, M, W,
$ LW, RW, 1, INFO )
CALL CHKXER( 'CTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 4
CALL CTREVC3( 'L', 'A', SEL, -1, A, 1, VL, 1, VR, 1, 0, M, W,
$ LW, RW, 1, INFO )
CALL CHKXER( 'CTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 6
CALL CTREVC3( 'L', 'A', SEL, 2, A, 1, VL, 2, VR, 1, 4, M, W,
$ LW, RW, 2, INFO )
CALL CHKXER( 'CTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL CTREVC3( 'L', 'A', SEL, 2, A, 2, VL, 1, VR, 1, 4, M, W,
$ LW, RW, 2, INFO )
CALL CHKXER( 'CTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 10
CALL CTREVC3( 'R', 'A', SEL, 2, A, 2, VL, 1, VR, 1, 4, M, W,
$ LW, RW, 2, INFO )
CALL CHKXER( 'CTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 11
CALL CTREVC3( 'L', 'A', SEL, 2, A, 2, VL, 2, VR, 1, 1, M, W,
$ LW, RW, 2, INFO )
CALL CHKXER( 'CTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 14
CALL CTREVC3( 'L', 'A', SEL, 2, A, 2, VL, 2, VR, 1, 2, M, W,
$ 2, RW, 2, INFO )
CALL CHKXER( 'CTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 16
CALL CTREVC3( 'L', 'A', SEL, 2, A, 2, VL, 2, VR, 1, 2, M, W,
$ LW, RW, 1, INFO )
CALL CHKXER( 'CTREVC3', INFOT, NOUT, LERR, OK )
NT = NT + 9
END IF END IF
* *
* Print a summary line. * Print a summary line.

View File

@ -21,7 +21,7 @@
*> *>
*> \verbatim *> \verbatim
*> *>
*> CERRST tests the error exits for CHETRD, CUNGTR, CUNMTR, CHPTRD, *> CERRST tests the error exits for CHETRD, CHETD2, CUNGTR, CUNMTR, CHPTRD,
*> CUNGTR, CUPMTR, CSTEQR, CSTEIN, CPTEQR, CHBTRD, *> CUNGTR, CUPMTR, CSTEQR, CSTEIN, CPTEQR, CHBTRD,
*> CHEEV, CHEEVX, CHEEVD, CHBEV, CHBEVX, CHBEVD, *> CHEEV, CHEEVX, CHEEVD, CHBEV, CHBEVX, CHBEVD,
*> CHPEV, CHPEVX, CHPEVD, and CSTEDC. *> CHPEV, CHPEVX, CHPEVD, and CSTEDC.
@ -94,7 +94,7 @@
EXTERNAL CHBEV, CHBEVD, CHBEVX, CHBTRD, CHEEV, CHEEVD, EXTERNAL CHBEV, CHBEVD, CHBEVX, CHBTRD, CHEEV, CHEEVD,
$ CHEEVR, CHEEVX, CHETRD, CHKXER, CHPEV, CHPEVD, $ CHEEVR, CHEEVX, CHETRD, CHKXER, CHPEV, CHPEVD,
$ CHPEVX, CHPTRD, CPTEQR, CSTEDC, CSTEIN, CSTEQR, $ CHPEVX, CHPTRD, CPTEQR, CSTEDC, CSTEIN, CSTEQR,
$ CUNGTR, CUNMTR, CUPGTR, CUPMTR, $ CUNGTR, CUNMTR, CUPGTR, CUPMTR, CHETD2,
$ CHEEVD_2STAGE, CHEEVR_2STAGE, CHEEVX_2STAGE, $ CHEEVD_2STAGE, CHEEVR_2STAGE, CHEEVX_2STAGE,
$ CHEEV_2STAGE, CHBEV_2STAGE, CHBEVD_2STAGE, $ CHEEV_2STAGE, CHBEV_2STAGE, CHBEVD_2STAGE,
$ CHBEVX_2STAGE, CHETRD_2STAGE, CHETRD_HE2HB, $ CHBEVX_2STAGE, CHETRD_2STAGE, CHETRD_HE2HB,
@ -156,6 +156,20 @@
CALL CHKXER( 'CHETRD', INFOT, NOUT, LERR, OK ) CALL CHKXER( 'CHETRD', INFOT, NOUT, LERR, OK )
NT = NT + 4 NT = NT + 4
* *
* CHETD2
*
SRNAMT = 'CHETD2'
INFOT = 1
CALL CHETD2( '/', 0, A, 1, D, E, TAU, W, 1, INFO )
CALL CHKXER( 'CHETD2', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL CHETD2( 'U', -1, A, 1, D, E, TAU, W, 1, INFO )
CALL CHKXER( 'CHETD2', INFOT, NOUT, LERR, OK )
INFOT = 4
CALL CHETD2( 'U', 2, A, 1, D, E, TAU, W, 1, INFO )
CALL CHKXER( 'CHETD2', INFOT, NOUT, LERR, OK )
NT = NT + 3
*
* CHETRD_2STAGE * CHETRD_2STAGE
* *
SRNAMT = 'CHETRD_2STAGE' SRNAMT = 'CHETRD_2STAGE'

View File

@ -21,8 +21,8 @@
*> *>
*> \verbatim *> \verbatim
*> *>
*> DERRHS tests the error exits for DGEBAK, SGEBAL, SGEHRD, DORGHR, *> DERRHS tests the error exits for DGEBAK, DGEBAL, DGEHRD, DGEHD2,
*> DORMHR, DHSEQR, SHSEIN, and DTREVC. *> DORGHR, DORMHR, DHSEQR, DHSEIN, DTREVC, and DTREVC3.
*> \endverbatim *> \endverbatim
* *
* Arguments: * Arguments:
@ -86,7 +86,7 @@
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CHKXER, DGEBAK, DGEBAL, DGEHRD, DHSEIN, DHSEQR, EXTERNAL CHKXER, DGEBAK, DGEBAL, DGEHRD, DHSEIN, DHSEQR,
$ DORGHR, DORMHR, DTREVC $ DORGHR, DORMHR, DTREVC, DTREVC3, DGEHD2
* .. * ..
* .. Intrinsic Functions .. * .. Intrinsic Functions ..
INTRINSIC DBLE INTRINSIC DBLE
@ -194,6 +194,29 @@
CALL CHKXER( 'DGEHRD', INFOT, NOUT, LERR, OK ) CALL CHKXER( 'DGEHRD', INFOT, NOUT, LERR, OK )
NT = NT + 7 NT = NT + 7
* *
* DGEHD2
*
SRNAMT = 'DGEHD2'
INFOT = 1
CALL DGEHD2( -1, 1, 1, A, 1, TAU, W, INFO )
CALL CHKXER( 'DGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL DGEHD2( 0, 0, 0, A, 1, TAU, W, INFO )
CALL CHKXER( 'DGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL DGEHD2( 0, 2, 0, A, 1, TAU, W, INFO )
CALL CHKXER( 'DGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 3
CALL DGEHD2( 1, 1, 0, A, 1, TAU, W, INFO )
CALL CHKXER( 'DGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 3
CALL DGEHD2( 0, 1, 1, A, 1, TAU, W, INFO )
CALL CHKXER( 'DGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 5
CALL DGEHD2( 2, 1, 1, A, 1, TAU, W, INFO )
CALL CHKXER( 'DGEHD2', INFOT, NOUT, LERR, OK )
NT = NT + 6
*
* DORGHR * DORGHR
* *
SRNAMT = 'DORGHR' SRNAMT = 'DORGHR'
@ -328,7 +351,11 @@
CALL DHSEQR( 'E', 'V', 2, 1, 2, A, 2, WR, WI, C, 1, W, 1, CALL DHSEQR( 'E', 'V', 2, 1, 2, A, 2, WR, WI, C, 1, W, 1,
$ INFO ) $ INFO )
CALL CHKXER( 'DHSEQR', INFOT, NOUT, LERR, OK ) CALL CHKXER( 'DHSEQR', INFOT, NOUT, LERR, OK )
NT = NT + 9 INFOT = 13
CALL DHSEQR( 'E', 'N', 2, 1, 2, A, 2, WR, WI, C, 1, W, 1,
$ INFO )
CALL CHKXER( 'DHSEQR', INFOT, NOUT, LERR, OK )
NT = NT + 10
* *
* DHSEIN * DHSEIN
* *
@ -399,6 +426,43 @@
$ INFO ) $ INFO )
CALL CHKXER( 'DTREVC', INFOT, NOUT, LERR, OK ) CALL CHKXER( 'DTREVC', INFOT, NOUT, LERR, OK )
NT = NT + 7 NT = NT + 7
*
* DTREVC3
*
SRNAMT = 'DTREVC3'
INFOT = 1
CALL DTREVC3( '/', 'A', SEL, 0, A, 1, VL, 1, VR, 1, 0, M, W,
$ LW, INFO )
CALL CHKXER( 'DTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL DTREVC3( 'L', '/', SEL, 0, A, 1, VL, 1, VR, 1, 0, M, W,
$ LW, INFO )
CALL CHKXER( 'DTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 4
CALL DTREVC3( 'L', 'A', SEL, -1, A, 1, VL, 1, VR, 1, 0, M, W,
$ LW, INFO )
CALL CHKXER( 'DTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 6
CALL DTREVC3( 'L', 'A', SEL, 2, A, 1, VL, 2, VR, 1, 4, M, W,
$ LW, INFO )
CALL CHKXER( 'DTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL DTREVC3( 'L', 'A', SEL, 2, A, 2, VL, 1, VR, 1, 4, M, W,
$ LW, INFO )
CALL CHKXER( 'DTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 10
CALL DTREVC3( 'R', 'A', SEL, 2, A, 2, VL, 1, VR, 1, 4, M, W,
$ LW, INFO )
CALL CHKXER( 'DTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 11
CALL DTREVC3( 'L', 'A', SEL, 2, A, 2, VL, 2, VR, 1, 1, M, W,
$ LW, INFO )
CALL CHKXER( 'DTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 14
CALL DTREVC3( 'L', 'A', SEL, 2, A, 2, VL, 2, VR, 1, 2, M, W,
$ 2, INFO )
CALL CHKXER( 'DTREVC3', INFOT, NOUT, LERR, OK )
NT = NT + 8
END IF END IF
* *
* Print a summary line. * Print a summary line.

View File

@ -21,10 +21,10 @@
*> *>
*> \verbatim *> \verbatim
*> *>
*> DERRST tests the error exits for DSYTRD, DORGTR, DORMTR, DSPTRD, *> DERRST tests the error exits for DSYTRD, DSYTD2, DORGTR, DORMTR, DSPTRD,
*> DOPGTR, DOPMTR, DSTEQR, SSTERF, SSTEBZ, SSTEIN, DPTEQR, DSBTRD, *> DOPGTR, DOPMTR, DSTEQR, DSTERF, DSTEBZ, DSTEIN, DPTEQR, DSBTRD,
*> DSYEV, SSYEVX, SSYEVD, DSBEV, SSBEVX, SSBEVD, *> DSYEV, DSYEVX, DSYEVD, DSBEV, DSBEVX, DSBEVD,
*> DSPEV, SSPEVX, SSPEVD, DSTEV, SSTEVX, SSTEVD, and SSTEDC. *> DSPEV, DSPEVX, DSPEVD, DSTEV, DSTEVX, DSTEVD, and DSTEDC.
*> DSYEVD_2STAGE, DSYEVR_2STAGE, DSYEVX_2STAGE, *> DSYEVD_2STAGE, DSYEVR_2STAGE, DSYEVX_2STAGE,
*> DSYEV_2STAGE, DSBEV_2STAGE, DSBEVD_2STAGE, *> DSYEV_2STAGE, DSBEV_2STAGE, DSBEVD_2STAGE,
*> DSBEVX_2STAGE, DSYTRD_2STAGE, DSYTRD_SY2SB, *> DSBEVX_2STAGE, DSYTRD_2STAGE, DSYTRD_SY2SB,
@ -95,7 +95,7 @@
$ DSBEV, DSBEVD, DSBEVX, DSBTRD, DSPEV, DSPEVD, $ DSBEV, DSBEVD, DSBEVX, DSBTRD, DSPEV, DSPEVD,
$ DSPEVX, DSPTRD, DSTEBZ, DSTEDC, DSTEIN, DSTEQR, $ DSPEVX, DSPTRD, DSTEBZ, DSTEDC, DSTEIN, DSTEQR,
$ DSTERF, DSTEV, DSTEVD, DSTEVR, DSTEVX, DSYEV, $ DSTERF, DSTEV, DSTEVD, DSTEVR, DSTEVX, DSYEV,
$ DSYEVD, DSYEVR, DSYEVX, DSYTRD, $ DSYEVD, DSYEVR, DSYEVX, DSYTRD, DSYTD2,
$ DSYEVD_2STAGE, DSYEVR_2STAGE, DSYEVX_2STAGE, $ DSYEVD_2STAGE, DSYEVR_2STAGE, DSYEVX_2STAGE,
$ DSYEV_2STAGE, DSBEV_2STAGE, DSBEVD_2STAGE, $ DSYEV_2STAGE, DSBEV_2STAGE, DSBEVD_2STAGE,
$ DSBEVX_2STAGE, DSYTRD_2STAGE, DSYTRD_SY2SB, $ DSBEVX_2STAGE, DSYTRD_2STAGE, DSYTRD_SY2SB,
@ -157,6 +157,20 @@
CALL CHKXER( 'DSYTRD', INFOT, NOUT, LERR, OK ) CALL CHKXER( 'DSYTRD', INFOT, NOUT, LERR, OK )
NT = NT + 4 NT = NT + 4
* *
* DSYTD2
*
SRNAMT = 'DSYTD2'
INFOT = 1
CALL DSYTD2( '/', 0, A, 1, D, E, TAU, W, 1, INFO )
CALL CHKXER( 'DSYTD2', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL DSYTD2( 'U', -1, A, 1, D, E, TAU, W, 1, INFO )
CALL CHKXER( 'DSYTD2', INFOT, NOUT, LERR, OK )
INFOT = 4
CALL DSYTD2( 'U', 2, A, 1, D, E, TAU, W, 1, INFO )
CALL CHKXER( 'DSYTD2', INFOT, NOUT, LERR, OK )
NT = NT + 3
*
* DSYTRD_2STAGE * DSYTRD_2STAGE
* *
SRNAMT = 'DSYTRD_2STAGE' SRNAMT = 'DSYTRD_2STAGE'

View File

@ -21,8 +21,8 @@
*> *>
*> \verbatim *> \verbatim
*> *>
*> SERRHS tests the error exits for SGEBAK, SGEBAL, SGEHRD, SORGHR, *> SERRHS tests the error exits for SGEBAK, SGEBAL, SGEHRD, SGEHD2,
*> SORMHR, SHSEQR, SHSEIN, and STREVC. *> SORGHR, SORMHR, SHSEQR, SHSEIN, STREVC, and STREVC3.
*> \endverbatim *> \endverbatim
* *
* Arguments: * Arguments:
@ -85,7 +85,7 @@
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CHKXER, SGEBAK, SGEBAL, SGEHRD, SHSEIN, SHSEQR, EXTERNAL CHKXER, SGEBAK, SGEBAL, SGEHRD, SHSEIN, SHSEQR,
$ SORGHR, SORMHR, STREVC $ SORGHR, SORMHR, STREVC, STREVC3, SGEHD2
* .. * ..
* .. Intrinsic Functions .. * .. Intrinsic Functions ..
INTRINSIC REAL INTRINSIC REAL
@ -193,6 +193,29 @@
CALL CHKXER( 'SGEHRD', INFOT, NOUT, LERR, OK ) CALL CHKXER( 'SGEHRD', INFOT, NOUT, LERR, OK )
NT = NT + 7 NT = NT + 7
* *
* SGEHD2
*
SRNAMT = 'SGEHD2'
INFOT = 1
CALL SGEHD2( -1, 1, 1, A, 1, TAU, W, INFO )
CALL CHKXER( 'SGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL SGEHD2( 0, 0, 0, A, 1, TAU, W, INFO )
CALL CHKXER( 'SGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL SGEHD2( 0, 2, 0, A, 1, TAU, W, INFO )
CALL CHKXER( 'SGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 3
CALL SGEHD2( 1, 1, 0, A, 1, TAU, W, INFO )
CALL CHKXER( 'SGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 3
CALL SGEHD2( 0, 1, 1, A, 1, TAU, W, INFO )
CALL CHKXER( 'SGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 5
CALL SGEHD2( 2, 1, 1, A, 1, TAU, W, INFO )
CALL CHKXER( 'SGEHD2', INFOT, NOUT, LERR, OK )
NT = NT + 6
*
* SORGHR * SORGHR
* *
SRNAMT = 'SORGHR' SRNAMT = 'SORGHR'
@ -327,7 +350,11 @@
CALL SHSEQR( 'E', 'V', 2, 1, 2, A, 2, WR, WI, C, 1, W, 1, CALL SHSEQR( 'E', 'V', 2, 1, 2, A, 2, WR, WI, C, 1, W, 1,
$ INFO ) $ INFO )
CALL CHKXER( 'SHSEQR', INFOT, NOUT, LERR, OK ) CALL CHKXER( 'SHSEQR', INFOT, NOUT, LERR, OK )
NT = NT + 9 INFOT = 13
CALL SHSEQR( 'E', 'N', 2, 1, 2, A, 2, WR, WI, C, 1, W, 1,
$ INFO )
CALL CHKXER( 'SHSEQR', INFOT, NOUT, LERR, OK )
NT = NT + 10
* *
* SHSEIN * SHSEIN
* *
@ -398,6 +425,43 @@
$ INFO ) $ INFO )
CALL CHKXER( 'STREVC', INFOT, NOUT, LERR, OK ) CALL CHKXER( 'STREVC', INFOT, NOUT, LERR, OK )
NT = NT + 7 NT = NT + 7
*
* STREVC3
*
SRNAMT = 'STREVC3'
INFOT = 1
CALL STREVC3( '/', 'A', SEL, 0, A, 1, VL, 1, VR, 1, 0, M, W,
$ LW, INFO )
CALL CHKXER( 'STREVC3', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL STREVC3( 'L', '/', SEL, 0, A, 1, VL, 1, VR, 1, 0, M, W,
$ LW, INFO )
CALL CHKXER( 'STREVC3', INFOT, NOUT, LERR, OK )
INFOT = 4
CALL STREVC3( 'L', 'A', SEL, -1, A, 1, VL, 1, VR, 1, 0, M, W,
$ LW, INFO )
CALL CHKXER( 'STREVC3', INFOT, NOUT, LERR, OK )
INFOT = 6
CALL STREVC3( 'L', 'A', SEL, 2, A, 1, VL, 2, VR, 1, 4, M, W,
$ LW, INFO )
CALL CHKXER( 'STREVC3', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL STREVC3( 'L', 'A', SEL, 2, A, 2, VL, 1, VR, 1, 4, M, W,
$ LW, INFO )
CALL CHKXER( 'STREVC3', INFOT, NOUT, LERR, OK )
INFOT = 10
CALL STREVC3( 'R', 'A', SEL, 2, A, 2, VL, 1, VR, 1, 4, M, W,
$ LW, INFO )
CALL CHKXER( 'STREVC3', INFOT, NOUT, LERR, OK )
INFOT = 11
CALL STREVC3( 'L', 'A', SEL, 2, A, 2, VL, 2, VR, 1, 1, M, W,
$ LW, INFO )
CALL CHKXER( 'STREVC3', INFOT, NOUT, LERR, OK )
INFOT = 14
CALL STREVC3( 'L', 'A', SEL, 2, A, 2, VL, 2, VR, 1, 2, M, W,
$ 2, INFO )
CALL CHKXER( 'STREVC3', INFOT, NOUT, LERR, OK )
NT = NT + 8
END IF END IF
* *
* Print a summary line. * Print a summary line.

View File

@ -21,7 +21,7 @@
*> *>
*> \verbatim *> \verbatim
*> *>
*> SERRST tests the error exits for SSYTRD, SORGTR, SORMTR, SSPTRD, *> SERRST tests the error exits for SSYTRD, SSYTD2, SORGTR, SORMTR, SSPTRD,
*> SOPGTR, SOPMTR, SSTEQR, SSTERF, SSTEBZ, SSTEIN, SPTEQR, SSBTRD, *> SOPGTR, SOPMTR, SSTEQR, SSTERF, SSTEBZ, SSTEIN, SPTEQR, SSBTRD,
*> SSYEV, SSYEVX, SSYEVD, SSBEV, SSBEVX, SSBEVD, *> SSYEV, SSYEVX, SSYEVD, SSBEV, SSBEVX, SSBEVD,
*> SSPEV, SSPEVX, SSPEVD, SSTEV, SSTEVX, SSTEVD, and SSTEDC. *> SSPEV, SSPEVX, SSPEVD, SSTEV, SSTEVX, SSTEVD, and SSTEDC.
@ -95,7 +95,7 @@
$ SSBEV, SSBEVD, SSBEVX, SSBTRD, SSPEV, SSPEVD, $ SSBEV, SSBEVD, SSBEVX, SSBTRD, SSPEV, SSPEVD,
$ SSPEVX, SSPTRD, SSTEBZ, SSTEDC, SSTEIN, SSTEQR, $ SSPEVX, SSPTRD, SSTEBZ, SSTEDC, SSTEIN, SSTEQR,
$ SSTERF, SSTEV, SSTEVD, SSTEVR, SSTEVX, SSYEV, $ SSTERF, SSTEV, SSTEVD, SSTEVR, SSTEVX, SSYEV,
$ SSYEVD, SSYEVR, SSYEVX, SSYTRD, $ SSYEVD, SSYEVR, SSYEVX, SSYTRD, SSYTD2,
$ SSYEVD_2STAGE, SSYEVR_2STAGE, SSYEVX_2STAGE, $ SSYEVD_2STAGE, SSYEVR_2STAGE, SSYEVX_2STAGE,
$ SSYEV_2STAGE, SSBEV_2STAGE, SSBEVD_2STAGE, $ SSYEV_2STAGE, SSBEV_2STAGE, SSBEVD_2STAGE,
$ SSBEVX_2STAGE, SSYTRD_2STAGE, SSYTRD_SY2SB, $ SSBEVX_2STAGE, SSYTRD_2STAGE, SSYTRD_SY2SB,
@ -157,6 +157,20 @@
CALL CHKXER( 'SSYTRD', INFOT, NOUT, LERR, OK ) CALL CHKXER( 'SSYTRD', INFOT, NOUT, LERR, OK )
NT = NT + 4 NT = NT + 4
* *
* SSYTD2
*
SRNAMT = 'SSYTD2'
INFOT = 1
CALL SSYTD2( '/', 0, A, 1, D, E, TAU, W, 1, INFO )
CALL CHKXER( 'SSYTD2', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL SSYTD2( 'U', -1, A, 1, D, E, TAU, W, 1, INFO )
CALL CHKXER( 'SSYTD2', INFOT, NOUT, LERR, OK )
INFOT = 4
CALL SSYTD2( 'U', 2, A, 1, D, E, TAU, W, 1, INFO )
CALL CHKXER( 'SSYTD2', INFOT, NOUT, LERR, OK )
NT = NT + 3
*
* SSYTRD_2STAGE * SSYTRD_2STAGE
* *
SRNAMT = 'SSYTRD_2STAGE' SRNAMT = 'SSYTRD_2STAGE'

View File

@ -21,8 +21,8 @@
*> *>
*> \verbatim *> \verbatim
*> *>
*> ZERRHS tests the error exits for ZGEBAK, CGEBAL, CGEHRD, ZUNGHR, *> ZERRHS tests the error exits for ZGEBAK, ZGEBAL, ZGEHRD, ZGEHD2,
*> ZUNMHR, ZHSEQR, CHSEIN, and ZTREVC. *> ZUNGHR, ZUNMHR, ZHSEQR, ZHSEIN, ZTREVC, and ZTREVC3.
*> \endverbatim *> \endverbatim
* *
* Arguments: * Arguments:
@ -86,7 +86,7 @@
* .. * ..
* .. External Subroutines .. * .. External Subroutines ..
EXTERNAL CHKXER, ZGEBAK, ZGEBAL, ZGEHRD, ZHSEIN, ZHSEQR, EXTERNAL CHKXER, ZGEBAK, ZGEBAL, ZGEHRD, ZHSEIN, ZHSEQR,
$ ZTREVC, ZUNGHR, ZUNMHR $ ZUNGHR, ZUNMHR, ZTREVC, ZTREVC3
* .. * ..
* .. Intrinsic Functions .. * .. Intrinsic Functions ..
INTRINSIC DBLE INTRINSIC DBLE
@ -193,6 +193,29 @@
CALL CHKXER( 'ZGEHRD', INFOT, NOUT, LERR, OK ) CALL CHKXER( 'ZGEHRD', INFOT, NOUT, LERR, OK )
NT = NT + 7 NT = NT + 7
* *
* ZGEHD2
*
SRNAMT = 'ZGEHD2'
INFOT = 1
CALL ZGEHD2( -1, 1, 1, A, 1, TAU, W, INFO )
CALL CHKXER( 'ZGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL ZGEHD2( 0, 0, 0, A, 1, TAU, W, INFO )
CALL CHKXER( 'ZGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL ZGEHD2( 0, 2, 0, A, 1, TAU, W, INFO )
CALL CHKXER( 'ZGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 3
CALL ZGEHD2( 1, 1, 0, A, 1, TAU, W, INFO )
CALL CHKXER( 'ZGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 3
CALL ZGEHD2( 0, 1, 1, A, 1, TAU, W, INFO )
CALL CHKXER( 'ZGEHD2', INFOT, NOUT, LERR, OK )
INFOT = 5
CALL ZGEHD2( 2, 1, 1, A, 1, TAU, W, INFO )
CALL CHKXER( 'ZGEHD2', INFOT, NOUT, LERR, OK )
NT = NT + 6
*
* ZUNGHR * ZUNGHR
* *
SRNAMT = 'ZUNGHR' SRNAMT = 'ZUNGHR'
@ -389,6 +412,47 @@
$ INFO ) $ INFO )
CALL CHKXER( 'ZTREVC', INFOT, NOUT, LERR, OK ) CALL CHKXER( 'ZTREVC', INFOT, NOUT, LERR, OK )
NT = NT + 7 NT = NT + 7
*
* ZTREVC3
*
SRNAMT = 'ZTREVC3'
INFOT = 1
CALL ZTREVC3( '/', 'A', SEL, 0, A, 1, VL, 1, VR, 1, 0, M, W,
$ LW, RW, 1, INFO )
CALL CHKXER( 'ZTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL ZTREVC3( 'L', '/', SEL, 0, A, 1, VL, 1, VR, 1, 0, M, W,
$ LW, RW, 1, INFO )
CALL CHKXER( 'ZTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 4
CALL ZTREVC3( 'L', 'A', SEL, -1, A, 1, VL, 1, VR, 1, 0, M, W,
$ LW, RW, 1, INFO )
CALL CHKXER( 'ZTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 6
CALL ZTREVC3( 'L', 'A', SEL, 2, A, 1, VL, 2, VR, 1, 4, M, W,
$ LW, RW, 2, INFO )
CALL CHKXER( 'ZTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 8
CALL ZTREVC3( 'L', 'A', SEL, 2, A, 2, VL, 1, VR, 1, 4, M, W,
$ LW, RW, 2, INFO )
CALL CHKXER( 'ZTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 10
CALL ZTREVC3( 'R', 'A', SEL, 2, A, 2, VL, 1, VR, 1, 4, M, W,
$ LW, RW, 2, INFO )
CALL CHKXER( 'ZTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 11
CALL ZTREVC3( 'L', 'A', SEL, 2, A, 2, VL, 2, VR, 1, 1, M, W,
$ LW, RW, 2, INFO )
CALL CHKXER( 'ZTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 14
CALL ZTREVC3( 'L', 'A', SEL, 2, A, 2, VL, 2, VR, 1, 2, M, W,
$ 2, RW, 2, INFO )
CALL CHKXER( 'ZTREVC3', INFOT, NOUT, LERR, OK )
INFOT = 16
CALL ZTREVC3( 'L', 'A', SEL, 2, A, 2, VL, 2, VR, 1, 2, M, W,
$ LW, RW, 1, INFO )
CALL CHKXER( 'ZTREVC3', INFOT, NOUT, LERR, OK )
NT = NT + 9
END IF END IF
* *
* Print a summary line. * Print a summary line.

View File

@ -23,7 +23,7 @@
*> *>
*> \verbatim *> \verbatim
*> *>
*> ZERRST tests the error exits for ZHETRD, ZUNGTR, CUNMTR, ZHPTRD, *> ZERRST tests the error exits for ZHETRD, ZHETD2, ZUNGTR, CUNMTR, ZHPTRD,
*> ZUNGTR, ZUPMTR, ZSTEQR, CSTEIN, ZPTEQR, ZHBTRD, *> ZUNGTR, ZUPMTR, ZSTEQR, CSTEIN, ZPTEQR, ZHBTRD,
*> ZHEEV, CHEEVX, CHEEVD, ZHBEV, CHBEVX, CHBEVD, *> ZHEEV, CHEEVX, CHEEVD, ZHBEV, CHBEVX, CHBEVD,
*> ZHPEV, CHPEVX, CHPEVD, and ZSTEDC. *> ZHPEV, CHPEVX, CHPEVD, and ZSTEDC.
@ -95,7 +95,7 @@
EXTERNAL CHKXER, ZHBEV, ZHBEVD, ZHBEVX, ZHBTRD, ZHEEV, EXTERNAL CHKXER, ZHBEV, ZHBEVD, ZHBEVX, ZHBTRD, ZHEEV,
$ ZHEEVD, ZHEEVR, ZHEEVX, ZHETRD, ZHPEV, ZHPEVD, $ ZHEEVD, ZHEEVR, ZHEEVX, ZHETRD, ZHPEV, ZHPEVD,
$ ZHPEVX, ZHPTRD, ZPTEQR, ZSTEDC, ZSTEIN, ZSTEQR, $ ZHPEVX, ZHPTRD, ZPTEQR, ZSTEDC, ZSTEIN, ZSTEQR,
$ ZUNGTR, ZUNMTR, ZUPGTR, ZUPMTR, $ ZUNGTR, ZUNMTR, ZUPGTR, ZUPMTR, ZHETD2,
$ ZHEEVD_2STAGE, ZHEEVR_2STAGE, ZHEEVX_2STAGE, $ ZHEEVD_2STAGE, ZHEEVR_2STAGE, ZHEEVX_2STAGE,
$ ZHEEV_2STAGE, ZHBEV_2STAGE, ZHBEVD_2STAGE, $ ZHEEV_2STAGE, ZHBEV_2STAGE, ZHBEVD_2STAGE,
$ ZHBEVX_2STAGE, ZHETRD_2STAGE $ ZHBEVX_2STAGE, ZHETRD_2STAGE
@ -156,6 +156,20 @@
CALL CHKXER( 'ZHETRD', INFOT, NOUT, LERR, OK ) CALL CHKXER( 'ZHETRD', INFOT, NOUT, LERR, OK )
NT = NT + 4 NT = NT + 4
* *
* ZHETD2
*
SRNAMT = 'ZHETD2'
INFOT = 1
CALL ZHETD2( '/', 0, A, 1, D, E, TAU, W, 1, INFO )
CALL CHKXER( 'ZHETD2', INFOT, NOUT, LERR, OK )
INFOT = 2
CALL ZHETD2( 'U', -1, A, 1, D, E, TAU, W, 1, INFO )
CALL CHKXER( 'ZHETD2', INFOT, NOUT, LERR, OK )
INFOT = 4
CALL ZHETD2( 'U', 2, A, 1, D, E, TAU, W, 1, INFO )
CALL CHKXER( 'ZHETD2', INFOT, NOUT, LERR, OK )
NT = NT + 3
*
* ZHETRD_2STAGE * ZHETRD_2STAGE
* *
SRNAMT = 'ZHETRD_2STAGE' SRNAMT = 'ZHETRD_2STAGE'