diff --git a/TESTING/LIN/cdrvrf3.f b/TESTING/LIN/cdrvrf3.f index 19358acd2..61d60d49f 100644 --- a/TESTING/LIN/cdrvrf3.f +++ b/TESTING/LIN/cdrvrf3.f @@ -150,7 +150,7 @@ SUBROUTINE CDRVRF3( NOUT, NN, NVAL, THRESH, A, LDA, ARF, B1, B2, INTEGER I, IFORM, IIM, IIN, INFO, IUPLO, J, M, N, NA, + NFAIL, NRUN, ISIDE, IDIAG, IALPHA, ITRANS COMPLEX ALPHA - REAL EPS + REAL EPS, SOLNRM * .. * .. Local Arrays .. CHARACTER UPLOS( 2 ), FORMS( 2 ), TRANSS( 2 ), @@ -361,6 +361,9 @@ SUBROUTINE CDRVRF3( NOUT, NN, NVAL, THRESH, A, LDA, ARF, B1, B2, + LDA ) * * Check that the result agrees. +* + SOLNRM = CLANGE( 'I', M, N, B1, LDA, + + S_WORK_CLANGE ) * DO J = 1, N DO I = 1, M @@ -373,6 +376,7 @@ SUBROUTINE CDRVRF3( NOUT, NN, NVAL, THRESH, A, LDA, ARF, B1, B2, * RESULT( 1 ) = RESULT( 1 ) / SQRT( EPS ) + / REAL( MAX( M, N, 1 ) ) + + / MAX( SOLNRM, 1.0E+0 ) * IF( RESULT( 1 ).GE.THRESH ) THEN IF( NFAIL.EQ.0 ) THEN diff --git a/TESTING/LIN/ddrvrf3.f b/TESTING/LIN/ddrvrf3.f index bf493f5ca..730f91dc3 100644 --- a/TESTING/LIN/ddrvrf3.f +++ b/TESTING/LIN/ddrvrf3.f @@ -146,7 +146,7 @@ SUBROUTINE DDRVRF3( NOUT, NN, NVAL, THRESH, A, LDA, ARF, B1, B2, CHARACTER UPLO, CFORM, DIAG, TRANS, SIDE INTEGER I, IFORM, IIM, IIN, INFO, IUPLO, J, M, N, NA, + NFAIL, NRUN, ISIDE, IDIAG, IALPHA, ITRANS - DOUBLE PRECISION EPS, ALPHA + DOUBLE PRECISION EPS, ALPHA, SOLNRM * .. * .. Local Arrays .. CHARACTER UPLOS( 2 ), FORMS( 2 ), TRANSS( 2 ), @@ -346,6 +346,9 @@ SUBROUTINE DDRVRF3( NOUT, NN, NVAL, THRESH, A, LDA, ARF, B1, B2, + LDA ) * * Check that the result agrees. +* + SOLNRM = DLANGE( 'I', M, N, B1, LDA, + + D_WORK_DLANGE ) * DO J = 1, N DO I = 1, M @@ -358,6 +361,7 @@ SUBROUTINE DDRVRF3( NOUT, NN, NVAL, THRESH, A, LDA, ARF, B1, B2, * RESULT( 1 ) = RESULT( 1 ) / SQRT( EPS ) + / MAX ( MAX( M, N ), 1 ) + + / MAX( SOLNRM, 1.0D+0 ) * IF( RESULT( 1 ).GE.THRESH ) THEN IF( NFAIL.EQ.0 ) THEN diff --git a/TESTING/LIN/sdrvrf3.f b/TESTING/LIN/sdrvrf3.f index 6b9be58f8..ea3fb6d44 100644 --- a/TESTING/LIN/sdrvrf3.f +++ b/TESTING/LIN/sdrvrf3.f @@ -146,7 +146,7 @@ SUBROUTINE SDRVRF3( NOUT, NN, NVAL, THRESH, A, LDA, ARF, B1, B2, CHARACTER UPLO, CFORM, DIAG, TRANS, SIDE INTEGER I, IFORM, IIM, IIN, INFO, IUPLO, J, M, N, NA, + NFAIL, NRUN, ISIDE, IDIAG, IALPHA, ITRANS - REAL EPS, ALPHA + REAL EPS, ALPHA, SOLNRM * .. * .. Local Arrays .. CHARACTER UPLOS( 2 ), FORMS( 2 ), TRANSS( 2 ), @@ -346,6 +346,9 @@ SUBROUTINE SDRVRF3( NOUT, NN, NVAL, THRESH, A, LDA, ARF, B1, B2, + LDA ) * * Check that the result agrees. +* + SOLNRM = SLANGE( 'I', M, N, B1, LDA, + + S_WORK_SLANGE ) * DO J = 1, N DO I = 1, M @@ -358,6 +361,7 @@ SUBROUTINE SDRVRF3( NOUT, NN, NVAL, THRESH, A, LDA, ARF, B1, B2, * RESULT( 1 ) = RESULT( 1 ) / SQRT( EPS ) + / REAL( MAX( M, N, 1 ) ) + + / MAX( SOLNRM, 1.0E+0 ) * IF( RESULT( 1 ).GE.THRESH ) THEN IF( NFAIL.EQ.0 ) THEN diff --git a/TESTING/LIN/zdrvrf3.f b/TESTING/LIN/zdrvrf3.f index 8ff14e9c7..748c7240d 100644 --- a/TESTING/LIN/zdrvrf3.f +++ b/TESTING/LIN/zdrvrf3.f @@ -150,7 +150,7 @@ SUBROUTINE ZDRVRF3( NOUT, NN, NVAL, THRESH, A, LDA, ARF, B1, B2, INTEGER I, IFORM, IIM, IIN, INFO, IUPLO, J, M, N, NA, + NFAIL, NRUN, ISIDE, IDIAG, IALPHA, ITRANS COMPLEX*16 ALPHA - DOUBLE PRECISION EPS + DOUBLE PRECISION EPS, SOLNRM * .. * .. Local Arrays .. CHARACTER UPLOS( 2 ), FORMS( 2 ), TRANSS( 2 ), @@ -361,6 +361,9 @@ SUBROUTINE ZDRVRF3( NOUT, NN, NVAL, THRESH, A, LDA, ARF, B1, B2, + LDA ) * * Check that the result agrees. +* + SOLNRM = ZLANGE( 'I', M, N, B1, LDA, + + D_WORK_ZLANGE ) * DO J = 1, N DO I = 1, M @@ -373,6 +376,7 @@ SUBROUTINE ZDRVRF3( NOUT, NN, NVAL, THRESH, A, LDA, ARF, B1, B2, * RESULT( 1 ) = RESULT( 1 ) / SQRT( EPS ) + / MAX ( MAX( M, N ), 1 ) + + / MAX( SOLNRM, 1.0D+0 ) * IF( RESULT( 1 ).GE.THRESH ) THEN IF( NFAIL.EQ.0 ) THEN