diff --git a/SRC/zhetf2_rk.f b/SRC/zhetf2_rk.f index fe737e631b..050c7993d0 100644 --- a/SRC/zhetf2_rk.f +++ b/SRC/zhetf2_rk.f @@ -417,7 +417,7 @@ SUBROUTINE ZHETF2_RK( UPLO, N, A, LDA, E, IPIV, INFO ) * * Case(2) * Equivalent to testing for -* ABS( REAL( W( IMAX,KW-1 ) ) ).GE.ALPHA*ROWMAX +* ABS( DBLE( W( IMAX,KW-1 ) ) ).GE.ALPHA*ROWMAX * (used to handle NaN and Inf) * IF( .NOT.( ABS( DBLE( A( IMAX, IMAX ) ) ) @@ -770,7 +770,7 @@ SUBROUTINE ZHETF2_RK( UPLO, N, A, LDA, E, IPIV, INFO ) * * Case(2) * Equivalent to testing for -* ABS( REAL( W( IMAX,KW-1 ) ) ).GE.ALPHA*ROWMAX +* ABS( DBLE( W( IMAX,KW-1 ) ) ).GE.ALPHA*ROWMAX * (used to handle NaN and Inf) * IF( .NOT.( ABS( DBLE( A( IMAX, IMAX ) ) ) diff --git a/SRC/zhetf2_rook.f b/SRC/zhetf2_rook.f index f9fd900c34..94bb297367 100644 --- a/SRC/zhetf2_rook.f +++ b/SRC/zhetf2_rook.f @@ -357,7 +357,7 @@ SUBROUTINE ZHETF2_ROOK( UPLO, N, A, LDA, IPIV, INFO ) * * Case(2) * Equivalent to testing for -* ABS( REAL( W( IMAX,KW-1 ) ) ).GE.ALPHA*ROWMAX +* ABS( DBLE( W( IMAX,KW-1 ) ) ).GE.ALPHA*ROWMAX * (used to handle NaN and Inf) * IF( .NOT.( ABS( DBLE( A( IMAX, IMAX ) ) ) @@ -669,7 +669,7 @@ SUBROUTINE ZHETF2_ROOK( UPLO, N, A, LDA, IPIV, INFO ) * * Case(2) * Equivalent to testing for -* ABS( REAL( W( IMAX,KW-1 ) ) ).GE.ALPHA*ROWMAX +* ABS( DBLE( W( IMAX,KW-1 ) ) ).GE.ALPHA*ROWMAX * (used to handle NaN and Inf) * IF( .NOT.( ABS( DBLE( A( IMAX, IMAX ) ) ) diff --git a/SRC/zlahef_rk.f b/SRC/zlahef_rk.f index 901fb25a4b..ed66e133da 100644 --- a/SRC/zlahef_rk.f +++ b/SRC/zlahef_rk.f @@ -460,7 +460,7 @@ SUBROUTINE ZLAHEF_RK( UPLO, N, NB, KB, A, LDA, E, IPIV, W, LDW, * * Case(2) * Equivalent to testing for -* ABS( REAL( W( IMAX,KW-1 ) ) ).GE.ALPHA*ROWMAX +* ABS( DBLE( W( IMAX,KW-1 ) ) ).GE.ALPHA*ROWMAX * (used to handle NaN and Inf) * IF( .NOT.( ABS( DBLE( W( IMAX,KW-1 ) ) ) @@ -599,7 +599,7 @@ SUBROUTINE ZLAHEF_RK( UPLO, N, NB, KB, A, LDA, E, IPIV, W, LDW, * A(1:k-1,k) := U(1:k-1,k) = W(1:k-1,kw)/D(k,k) * * (NOTE: No need to use for Hermitian matrix -* A( K, K ) = REAL( W( K, K) ) to separately copy diagonal +* A( K, K ) = DBLE( W( K, K) ) to separately copy diagonal * element D(k,k) from W (potentially saves only one load)) CALL ZCOPY( K, W( 1, KW ), 1, A( 1, K ), 1 ) IF( K.GT.1 ) THEN @@ -912,7 +912,7 @@ SUBROUTINE ZLAHEF_RK( UPLO, N, NB, KB, A, LDA, E, IPIV, W, LDW, * * Case(2) * Equivalent to testing for -* ABS( REAL( W( IMAX,K+1 ) ) ).GE.ALPHA*ROWMAX +* ABS( DBLE( W( IMAX,K+1 ) ) ).GE.ALPHA*ROWMAX * (used to handle NaN and Inf) * IF( .NOT.( ABS( DBLE( W( IMAX,K+1 ) ) ) @@ -1042,7 +1042,7 @@ SUBROUTINE ZLAHEF_RK( UPLO, N, NB, KB, A, LDA, E, IPIV, W, LDW, * A(k+1:N,k) := L(k+1:N,k) = W(k+1:N,k)/D(k,k) * * (NOTE: No need to use for Hermitian matrix -* A( K, K ) = REAL( W( K, K) ) to separately copy diagonal +* A( K, K ) = DBLE( W( K, K) ) to separately copy diagonal * element D(k,k) from W (potentially saves only one load)) CALL ZCOPY( N-K+1, W( K, K ), 1, A( K, K ), 1 ) IF( K.LT.N ) THEN diff --git a/SRC/zlahef_rook.f b/SRC/zlahef_rook.f index 6905a95db4..65f70a5978 100644 --- a/SRC/zlahef_rook.f +++ b/SRC/zlahef_rook.f @@ -370,7 +370,7 @@ SUBROUTINE ZLAHEF_ROOK( UPLO, N, NB, KB, A, LDA, IPIV, W, LDW, * * Case(2) * Equivalent to testing for -* ABS( REAL( W( IMAX,KW-1 ) ) ).GE.ALPHA*ROWMAX +* ABS( DBLE( W( IMAX,KW-1 ) ) ).GE.ALPHA*ROWMAX * (used to handle NaN and Inf) * IF( .NOT.( ABS( DBLE( W( IMAX,KW-1 ) ) ) @@ -509,7 +509,7 @@ SUBROUTINE ZLAHEF_ROOK( UPLO, N, NB, KB, A, LDA, IPIV, W, LDW, * A(1:k-1,k) := U(1:k-1,k) = W(1:k-1,kw)/D(k,k) * * (NOTE: No need to use for Hermitian matrix -* A( K, K ) = REAL( W( K, K) ) to separately copy diagonal +* A( K, K ) = DBLE( W( K, K) ) to separately copy diagonal * element D(k,k) from W (potentially saves only one load)) CALL ZCOPY( K, W( 1, KW ), 1, A( 1, K ), 1 ) IF( K.GT.1 ) THEN @@ -833,7 +833,7 @@ SUBROUTINE ZLAHEF_ROOK( UPLO, N, NB, KB, A, LDA, IPIV, W, LDW, * * Case(2) * Equivalent to testing for -* ABS( REAL( W( IMAX,K+1 ) ) ).GE.ALPHA*ROWMAX +* ABS( DBLE( W( IMAX,K+1 ) ) ).GE.ALPHA*ROWMAX * (used to handle NaN and Inf) * IF( .NOT.( ABS( DBLE( W( IMAX,K+1 ) ) ) @@ -963,7 +963,7 @@ SUBROUTINE ZLAHEF_ROOK( UPLO, N, NB, KB, A, LDA, IPIV, W, LDW, * A(k+1:N,k) := L(k+1:N,k) = W(k+1:N,k)/D(k,k) * * (NOTE: No need to use for Hermitian matrix -* A( K, K ) = REAL( W( K, K) ) to separately copy diagonal +* A( K, K ) = DBLE( W( K, K) ) to separately copy diagonal * element D(k,k) from W (potentially saves only one load)) CALL ZCOPY( N-K+1, W( K, K ), 1, A( K, K ), 1 ) IF( K.LT.N ) THEN diff --git a/SRC/ztrevc3.f b/SRC/ztrevc3.f index 93c833e62a..6300e80aec 100644 --- a/SRC/ztrevc3.f +++ b/SRC/ztrevc3.f @@ -286,13 +286,13 @@ SUBROUTINE ZTREVC3( SIDE, HOWMNY, SELECT, N, T, LDT, VL, LDVL, VR, $ ZGEMM, DLABAD, ZLASET, ZLACPY * .. * .. Intrinsic Functions .. - INTRINSIC ABS, DBLE, DCMPLX, CONJG, AIMAG, MAX + INTRINSIC ABS, DBLE, DCMPLX, CONJG, DIMAG, MAX * .. * .. Statement Functions .. DOUBLE PRECISION CABS1 * .. * .. Statement Function definitions .. - CABS1( CDUM ) = ABS( DBLE( CDUM ) ) + ABS( AIMAG( CDUM ) ) + CABS1( CDUM ) = ABS( DBLE( CDUM ) ) + ABS( DIMAG( CDUM ) ) * .. * .. Executable Statements .. * diff --git a/TESTING/EIG/cbdt01.f b/TESTING/EIG/cbdt01.f index edcbcbb39f..f5633bdc31 100644 --- a/TESTING/EIG/cbdt01.f +++ b/TESTING/EIG/cbdt01.f @@ -28,13 +28,13 @@ *> \verbatim *> *> CBDT01 reconstructs a general matrix A from its bidiagonal form -*> A = Q * B * P' -*> where Q (m by min(m,n)) and P' (min(m,n) by n) are unitary +*> A = Q * B * P**H +*> where Q (m by min(m,n)) and P**H (min(m,n) by n) are unitary *> matrices and B is bidiagonal. *> *> The test ratio to test the reduction is -*> RESID = norm( A - Q * B * PT ) / ( n * norm(A) * EPS ) -*> where PT = P' and EPS is the machine precision. +*> RESID = norm(A - Q * B * P**H) / ( n * norm(A) * EPS ) +*> where EPS is the machine precision. *> \endverbatim * * Arguments: @@ -49,7 +49,7 @@ *> \param[in] N *> \verbatim *> N is INTEGER -*> The number of columns of the matrices A and P'. +*> The number of columns of the matrices A and P**H. *> \endverbatim *> *> \param[in] KD @@ -78,7 +78,7 @@ *> \verbatim *> Q is COMPLEX array, dimension (LDQ,N) *> The m by min(m,n) unitary matrix Q in the reduction -*> A = Q * B * P'. +*> A = Q * B * P**H. *> \endverbatim *> *> \param[in] LDQ @@ -103,8 +103,8 @@ *> \param[in] PT *> \verbatim *> PT is COMPLEX array, dimension (LDPT,N) -*> The min(m,n) by n unitary matrix P' in the reduction -*> A = Q * B * P'. +*> The min(m,n) by n unitary matrix P**H in the reduction +*> A = Q * B * P**H. *> \endverbatim *> *> \param[in] LDPT @@ -127,7 +127,8 @@ *> \param[out] RESID *> \verbatim *> RESID is REAL -*> The test ratio: norm(A - Q * B * P') / ( n * norm(A) * EPS ) +*> The test ratio: +*> norm(A - Q * B * P**H) / ( n * norm(A) * EPS ) *> \endverbatim * * Authors: @@ -187,7 +188,7 @@ SUBROUTINE CBDT01( M, N, KD, A, LDA, Q, LDQ, D, E, PT, LDPT, WORK, RETURN END IF * -* Compute A - Q * B * P' one column at a time. +* Compute A - Q * B * P**H one column at a time. * RESID = ZERO IF( KD.NE.0 ) THEN @@ -265,7 +266,7 @@ SUBROUTINE CBDT01( M, N, KD, A, LDA, Q, LDQ, D, E, PT, LDPT, WORK, END IF END IF * -* Compute norm(A - Q * B * P') / ( n * norm(A) * EPS ) +* Compute norm(A - Q * B * P**H) / ( n * norm(A) * EPS ) * ANORM = CLANGE( '1', M, N, A, LDA, RWORK ) EPS = SLAMCH( 'Precision' ) diff --git a/TESTING/EIG/cbdt02.f b/TESTING/EIG/cbdt02.f index 87fda4a71d..6ef39a96b3 100644 --- a/TESTING/EIG/cbdt02.f +++ b/TESTING/EIG/cbdt02.f @@ -27,9 +27,10 @@ *> *> \verbatim *> -*> CBDT02 tests the change of basis C = U' * B by computing the residual +*> CBDT02 tests the change of basis C = U**H * B by computing the +*> residual *> -*> RESID = norm( B - U * C ) / ( max(m,n) * norm(B) * EPS ), +*> RESID = norm(B - U * C) / ( max(m,n) * norm(B) * EPS ), *> *> where B and C are M by N matrices, U is an M by M orthogonal matrix, *> and EPS is the machine precision. @@ -66,7 +67,7 @@ *> \param[in] C *> \verbatim *> C is COMPLEX array, dimension (LDC,N) -*> The m by n matrix C, assumed to contain U' * B. +*> The m by n matrix C, assumed to contain U**H * B. *> \endverbatim *> *> \param[in] LDC @@ -100,7 +101,7 @@ *> \param[out] RESID *> \verbatim *> RESID is REAL -*> RESID = norm( B - U * C ) / ( max(m,n) * norm(B) * EPS ), +*> RESID = norm(B - U * C) / ( max(m,n) * norm(B) * EPS ), *> \endverbatim * * Authors: @@ -161,7 +162,7 @@ SUBROUTINE CBDT02( M, N, B, LDB, C, LDC, U, LDU, WORK, RWORK, REALMN = REAL( MAX( M, N ) ) EPS = SLAMCH( 'Precision' ) * -* Compute norm( B - U * C ) +* Compute norm(B - U * C) * DO 10 J = 1, N CALL CCOPY( M, B( 1, J ), 1, WORK, 1 ) diff --git a/TESTING/EIG/clarhs.f b/TESTING/EIG/clarhs.f index e1d7ebdddc..9842df9599 100644 --- a/TESTING/EIG/clarhs.f +++ b/TESTING/EIG/clarhs.f @@ -29,9 +29,8 @@ *> *> CLARHS chooses a set of NRHS random solution vectors and sets *> up the right hand sides for the linear system -*> op( A ) * X = B, -*> where op( A ) may be A, A**T (transpose of A), or A**H (conjugate -*> transpose of A). +*> op(A) * X = B, +*> where op(A) = A, A**T or A**H, depending on TRANS. *> \endverbatim * * Arguments: @@ -85,9 +84,9 @@ *> TRANS is CHARACTER*1 *> Used only if A is nonsymmetric; specifies the operation *> applied to the matrix A. -*> = 'N': B := A * X -*> = 'T': B := A**T * X -*> = 'C': B := A**H * X +*> = 'N': B := A * X (No transpose) +*> = 'T': B := A**T * X (Transpose) +*> = 'C': B := A**H * X (Conjugate transpose) *> \endverbatim *> *> \param[in] M @@ -313,7 +312,7 @@ SUBROUTINE CLARHS( PATH, XTYPE, UPLO, TRANS, M, N, KL, KU, NRHS, 10 CONTINUE END IF * -* Multiply X by op( A ) using an appropriate +* Multiply X by op(A) using an appropriate * matrix multiply routine. * IF( LSAMEN( 2, C2, 'GE' ) .OR. LSAMEN( 2, C2, 'QR' ) .OR. diff --git a/TESTING/EIG/dbdt01.f b/TESTING/EIG/dbdt01.f index 40ac373ba8..69e0b5ffc2 100644 --- a/TESTING/EIG/dbdt01.f +++ b/TESTING/EIG/dbdt01.f @@ -27,13 +27,13 @@ *> \verbatim *> *> DBDT01 reconstructs a general matrix A from its bidiagonal form -*> A = Q * B * P' -*> where Q (m by min(m,n)) and P' (min(m,n) by n) are orthogonal +*> A = Q * B * P**T +*> where Q (m by min(m,n)) and P**T (min(m,n) by n) are orthogonal *> matrices and B is bidiagonal. *> *> The test ratio to test the reduction is -*> RESID = norm( A - Q * B * PT ) / ( n * norm(A) * EPS ) -*> where PT = P' and EPS is the machine precision. +*> RESID = norm(A - Q * B * P**T) / ( n * norm(A) * EPS ) +*> where EPS is the machine precision. *> \endverbatim * * Arguments: @@ -48,7 +48,7 @@ *> \param[in] N *> \verbatim *> N is INTEGER -*> The number of columns of the matrices A and P'. +*> The number of columns of the matrices A and P**T. *> \endverbatim *> *> \param[in] KD @@ -77,7 +77,7 @@ *> \verbatim *> Q is DOUBLE PRECISION array, dimension (LDQ,N) *> The m by min(m,n) orthogonal matrix Q in the reduction -*> A = Q * B * P'. +*> A = Q * B * P**T. *> \endverbatim *> *> \param[in] LDQ @@ -102,8 +102,8 @@ *> \param[in] PT *> \verbatim *> PT is DOUBLE PRECISION array, dimension (LDPT,N) -*> The min(m,n) by n orthogonal matrix P' in the reduction -*> A = Q * B * P'. +*> The min(m,n) by n orthogonal matrix P**T in the reduction +*> A = Q * B * P**T. *> \endverbatim *> *> \param[in] LDPT @@ -121,7 +121,8 @@ *> \param[out] RESID *> \verbatim *> RESID is DOUBLE PRECISION -*> The test ratio: norm(A - Q * B * P') / ( n * norm(A) * EPS ) +*> The test ratio: +*> norm(A - Q * B * P**T) / ( n * norm(A) * EPS ) *> \endverbatim * * Authors: @@ -180,7 +181,7 @@ SUBROUTINE DBDT01( M, N, KD, A, LDA, Q, LDQ, D, E, PT, LDPT, WORK, RETURN END IF * -* Compute A - Q * B * P' one column at a time. +* Compute A - Q * B * P**T one column at a time. * RESID = ZERO IF( KD.NE.0 ) THEN @@ -258,7 +259,7 @@ SUBROUTINE DBDT01( M, N, KD, A, LDA, Q, LDQ, D, E, PT, LDPT, WORK, END IF END IF * -* Compute norm(A - Q * B * P') / ( n * norm(A) * EPS ) +* Compute norm(A - Q * B * P**T) / ( n * norm(A) * EPS ) * ANORM = DLANGE( '1', M, N, A, LDA, WORK ) EPS = DLAMCH( 'Precision' ) diff --git a/TESTING/EIG/dbdt02.f b/TESTING/EIG/dbdt02.f index fd1b030e0c..ac0291219b 100644 --- a/TESTING/EIG/dbdt02.f +++ b/TESTING/EIG/dbdt02.f @@ -25,9 +25,10 @@ *> *> \verbatim *> -*> DBDT02 tests the change of basis C = U' * B by computing the residual +*> DBDT02 tests the change of basis C = U**H * B by computing the +*> residual *> -*> RESID = norm( B - U * C ) / ( max(m,n) * norm(B) * EPS ), +*> RESID = norm(B - U * C) / ( max(m,n) * norm(B) * EPS ), *> *> where B and C are M by N matrices, U is an M by M orthogonal matrix, *> and EPS is the machine precision. @@ -64,7 +65,7 @@ *> \param[in] C *> \verbatim *> C is DOUBLE PRECISION array, dimension (LDC,N) -*> The m by n matrix C, assumed to contain U' * B. +*> The m by n matrix C, assumed to contain U**H * B. *> \endverbatim *> *> \param[in] LDC @@ -93,7 +94,7 @@ *> \param[out] RESID *> \verbatim *> RESID is DOUBLE PRECISION -*> RESID = norm( B - U * C ) / ( max(m,n) * norm(B) * EPS ), +*> RESID = norm(B - U * C) / ( max(m,n) * norm(B) * EPS ), *> \endverbatim * * Authors: @@ -152,7 +153,7 @@ SUBROUTINE DBDT02( M, N, B, LDB, C, LDC, U, LDU, WORK, RESID ) REALMN = DBLE( MAX( M, N ) ) EPS = DLAMCH( 'Precision' ) * -* Compute norm( B - U * C ) +* Compute norm(B - U * C) * DO 10 J = 1, N CALL DCOPY( M, B( 1, J ), 1, WORK, 1 ) diff --git a/TESTING/EIG/dlarhs.f b/TESTING/EIG/dlarhs.f index 2505ae227b..bc048bbcfe 100644 --- a/TESTING/EIG/dlarhs.f +++ b/TESTING/EIG/dlarhs.f @@ -29,8 +29,8 @@ *> *> DLARHS chooses a set of NRHS random solution vectors and sets *> up the right hand sides for the linear system -*> op( A ) * X = B, -*> where op( A ) may be A or A' (transpose of A). +*> op(A) * X = B, +*> where op(A) = A or A**T, depending on TRANS. *> \endverbatim * * Arguments: @@ -79,10 +79,11 @@ *> \param[in] TRANS *> \verbatim *> TRANS is CHARACTER*1 -*> Specifies the operation applied to the matrix A. -*> = 'N': System is A * x = b -*> = 'T': System is A'* x = b -*> = 'C': System is A'* x = b +*> Used only if A is nonsymmetric; specifies the operation +*> applied to the matrix A. +*> = 'N': B := A * X (No transpose) +*> = 'T': B := A**T * X (Transpose) +*> = 'C': B := A**H * X (Conjugate transpose = Transpose) *> \endverbatim *> *> \param[in] M @@ -305,7 +306,7 @@ SUBROUTINE DLARHS( PATH, XTYPE, UPLO, TRANS, M, N, KL, KU, NRHS, 10 CONTINUE END IF * -* Multiply X by op( A ) using an appropriate +* Multiply X by op(A) using an appropriate * matrix multiply routine. * IF( LSAMEN( 2, C2, 'GE' ) .OR. LSAMEN( 2, C2, 'QR' ) .OR. diff --git a/TESTING/EIG/sbdt01.f b/TESTING/EIG/sbdt01.f index 2e4e48df33..fdc30a51ea 100644 --- a/TESTING/EIG/sbdt01.f +++ b/TESTING/EIG/sbdt01.f @@ -27,13 +27,13 @@ *> \verbatim *> *> SBDT01 reconstructs a general matrix A from its bidiagonal form -*> A = Q * B * P' -*> where Q (m by min(m,n)) and P' (min(m,n) by n) are orthogonal +*> A = Q * B * P**T +*> where Q (m by min(m,n)) and P**T (min(m,n) by n) are orthogonal *> matrices and B is bidiagonal. *> *> The test ratio to test the reduction is -*> RESID = norm( A - Q * B * PT ) / ( n * norm(A) * EPS ) -*> where PT = P' and EPS is the machine precision. +*> RESID = norm(A - Q * B * P**T) / ( n * norm(A) * EPS ) +*> where EPS is the machine precision. *> \endverbatim * * Arguments: @@ -48,7 +48,7 @@ *> \param[in] N *> \verbatim *> N is INTEGER -*> The number of columns of the matrices A and P'. +*> The number of columns of the matrices A and P**T. *> \endverbatim *> *> \param[in] KD @@ -77,7 +77,7 @@ *> \verbatim *> Q is REAL array, dimension (LDQ,N) *> The m by min(m,n) orthogonal matrix Q in the reduction -*> A = Q * B * P'. +*> A = Q * B * P**T. *> \endverbatim *> *> \param[in] LDQ @@ -102,8 +102,8 @@ *> \param[in] PT *> \verbatim *> PT is REAL array, dimension (LDPT,N) -*> The min(m,n) by n orthogonal matrix P' in the reduction -*> A = Q * B * P'. +*> The min(m,n) by n orthogonal matrix P**T in the reduction +*> A = Q * B * P**T. *> \endverbatim *> *> \param[in] LDPT @@ -121,7 +121,8 @@ *> \param[out] RESID *> \verbatim *> RESID is REAL -*> The test ratio: norm(A - Q * B * P') / ( n * norm(A) * EPS ) +*> The test ratio: +*> norm(A - Q * B * P**T) / ( n * norm(A) * EPS ) *> \endverbatim * * Authors: @@ -180,7 +181,7 @@ SUBROUTINE SBDT01( M, N, KD, A, LDA, Q, LDQ, D, E, PT, LDPT, WORK, RETURN END IF * -* Compute A - Q * B * P' one column at a time. +* Compute A - Q * B * P**T one column at a time. * RESID = ZERO IF( KD.NE.0 ) THEN @@ -258,7 +259,7 @@ SUBROUTINE SBDT01( M, N, KD, A, LDA, Q, LDQ, D, E, PT, LDPT, WORK, END IF END IF * -* Compute norm(A - Q * B * P') / ( n * norm(A) * EPS ) +* Compute norm(A - Q * B * P**T) / ( n * norm(A) * EPS ) * ANORM = SLANGE( '1', M, N, A, LDA, WORK ) EPS = SLAMCH( 'Precision' ) diff --git a/TESTING/EIG/sbdt02.f b/TESTING/EIG/sbdt02.f index cbce82ba7c..e86863f78b 100644 --- a/TESTING/EIG/sbdt02.f +++ b/TESTING/EIG/sbdt02.f @@ -25,9 +25,10 @@ *> *> \verbatim *> -*> SBDT02 tests the change of basis C = U' * B by computing the residual +*> SBDT02 tests the change of basis C = U**H * B by computing the +*> residual *> -*> RESID = norm( B - U * C ) / ( max(m,n) * norm(B) * EPS ), +*> RESID = norm(B - U * C) / ( max(m,n) * norm(B) * EPS ), *> *> where B and C are M by N matrices, U is an M by M orthogonal matrix, *> and EPS is the machine precision. @@ -64,7 +65,7 @@ *> \param[in] C *> \verbatim *> C is REAL array, dimension (LDC,N) -*> The m by n matrix C, assumed to contain U' * B. +*> The m by n matrix C, assumed to contain U**H * B. *> \endverbatim *> *> \param[in] LDC @@ -93,7 +94,7 @@ *> \param[out] RESID *> \verbatim *> RESID is REAL -*> RESID = norm( B - U * C ) / ( max(m,n) * norm(B) * EPS ), +*> RESID = norm(B - U * C) / ( max(m,n) * norm(B) * EPS ), *> \endverbatim * * Authors: @@ -152,7 +153,7 @@ SUBROUTINE SBDT02( M, N, B, LDB, C, LDC, U, LDU, WORK, RESID ) REALMN = REAL( MAX( M, N ) ) EPS = SLAMCH( 'Precision' ) * -* Compute norm( B - U * C ) +* Compute norm(B - U * C) * DO 10 J = 1, N CALL SCOPY( M, B( 1, J ), 1, WORK, 1 ) diff --git a/TESTING/EIG/slarhs.f b/TESTING/EIG/slarhs.f index 0d736f3505..bdb74724e8 100644 --- a/TESTING/EIG/slarhs.f +++ b/TESTING/EIG/slarhs.f @@ -29,8 +29,8 @@ *> *> SLARHS chooses a set of NRHS random solution vectors and sets *> up the right hand sides for the linear system -*> op( A ) * X = B, -*> where op( A ) may be A or A' (transpose of A). +*> op(A) * X = B, +*> where op(A) = A or A**T, depending on TRANS. *> \endverbatim * * Arguments: @@ -79,10 +79,11 @@ *> \param[in] TRANS *> \verbatim *> TRANS is CHARACTER*1 -*> Specifies the operation applied to the matrix A. -*> = 'N': System is A * x = b -*> = 'T': System is A'* x = b -*> = 'C': System is A'* x = b +*> Used only if A is nonsymmetric; specifies the operation +*> applied to the matrix A. +*> = 'N': B := A * X (No transpose) +*> = 'T': B := A**T * X (Transpose) +*> = 'C': B := A**H * X (Conjugate transpose = Transpose) *> \endverbatim *> *> \param[in] M @@ -305,7 +306,7 @@ SUBROUTINE SLARHS( PATH, XTYPE, UPLO, TRANS, M, N, KL, KU, NRHS, 10 CONTINUE END IF * -* Multiply X by op( A ) using an appropriate +* Multiply X by op(A) using an appropriate * matrix multiply routine. * IF( LSAMEN( 2, C2, 'GE' ) .OR. LSAMEN( 2, C2, 'QR' ) .OR. diff --git a/TESTING/EIG/zbdt01.f b/TESTING/EIG/zbdt01.f index 78d771f198..afe2fa89a5 100644 --- a/TESTING/EIG/zbdt01.f +++ b/TESTING/EIG/zbdt01.f @@ -28,13 +28,13 @@ *> \verbatim *> *> ZBDT01 reconstructs a general matrix A from its bidiagonal form -*> A = Q * B * P' -*> where Q (m by min(m,n)) and P' (min(m,n) by n) are unitary +*> A = Q * B * P**H +*> where Q (m by min(m,n)) and P**H (min(m,n) by n) are unitary *> matrices and B is bidiagonal. *> *> The test ratio to test the reduction is -*> RESID = norm( A - Q * B * PT ) / ( n * norm(A) * EPS ) -*> where PT = P' and EPS is the machine precision. +*> RESID = norm(A - Q * B * P**H) / ( n * norm(A) * EPS ) +*> where EPS is the machine precision. *> \endverbatim * * Arguments: @@ -49,7 +49,7 @@ *> \param[in] N *> \verbatim *> N is INTEGER -*> The number of columns of the matrices A and P'. +*> The number of columns of the matrices A and P**H. *> \endverbatim *> *> \param[in] KD @@ -78,7 +78,7 @@ *> \verbatim *> Q is COMPLEX*16 array, dimension (LDQ,N) *> The m by min(m,n) unitary matrix Q in the reduction -*> A = Q * B * P'. +*> A = Q * B * P**H. *> \endverbatim *> *> \param[in] LDQ @@ -103,8 +103,8 @@ *> \param[in] PT *> \verbatim *> PT is COMPLEX*16 array, dimension (LDPT,N) -*> The min(m,n) by n unitary matrix P' in the reduction -*> A = Q * B * P'. +*> The min(m,n) by n unitary matrix P**H in the reduction +*> A = Q * B * P**H. *> \endverbatim *> *> \param[in] LDPT @@ -127,7 +127,8 @@ *> \param[out] RESID *> \verbatim *> RESID is DOUBLE PRECISION -*> The test ratio: norm(A - Q * B * P') / ( n * norm(A) * EPS ) +*> The test ratio: +*> norm(A - Q * B * P**H) / ( n * norm(A) * EPS ) *> \endverbatim * * Authors: @@ -187,7 +188,7 @@ SUBROUTINE ZBDT01( M, N, KD, A, LDA, Q, LDQ, D, E, PT, LDPT, WORK, RETURN END IF * -* Compute A - Q * B * P' one column at a time. +* Compute A - Q * B * P**H one column at a time. * RESID = ZERO IF( KD.NE.0 ) THEN @@ -265,7 +266,7 @@ SUBROUTINE ZBDT01( M, N, KD, A, LDA, Q, LDQ, D, E, PT, LDPT, WORK, END IF END IF * -* Compute norm(A - Q * B * P') / ( n * norm(A) * EPS ) +* Compute norm(A - Q * B * P**H) / ( n * norm(A) * EPS ) * ANORM = ZLANGE( '1', M, N, A, LDA, RWORK ) EPS = DLAMCH( 'Precision' ) diff --git a/TESTING/EIG/zbdt02.f b/TESTING/EIG/zbdt02.f index 72fa78a37f..f0da37222b 100644 --- a/TESTING/EIG/zbdt02.f +++ b/TESTING/EIG/zbdt02.f @@ -27,9 +27,10 @@ *> *> \verbatim *> -*> ZBDT02 tests the change of basis C = U' * B by computing the residual +*> ZBDT02 tests the change of basis C = U**H * B by computing the +*> residual *> -*> RESID = norm( B - U * C ) / ( max(m,n) * norm(B) * EPS ), +*> RESID = norm(B - U * C) / ( max(m,n) * norm(B) * EPS ), *> *> where B and C are M by N matrices, U is an M by M orthogonal matrix, *> and EPS is the machine precision. @@ -66,7 +67,7 @@ *> \param[in] C *> \verbatim *> C is COMPLEX*16 array, dimension (LDC,N) -*> The m by n matrix C, assumed to contain U' * B. +*> The m by n matrix C, assumed to contain U**H * B. *> \endverbatim *> *> \param[in] LDC @@ -100,7 +101,7 @@ *> \param[out] RESID *> \verbatim *> RESID is DOUBLE PRECISION -*> RESID = norm( B - U * C ) / ( max(m,n) * norm(B) * EPS ), +*> RESID = norm(B - U * C) / ( max(m,n) * norm(B) * EPS ), *> \endverbatim * * Authors: @@ -161,7 +162,7 @@ SUBROUTINE ZBDT02( M, N, B, LDB, C, LDC, U, LDU, WORK, RWORK, REALMN = DBLE( MAX( M, N ) ) EPS = DLAMCH( 'Precision' ) * -* Compute norm( B - U * C ) +* Compute norm(B - U * C) * DO 10 J = 1, N CALL ZCOPY( M, B( 1, J ), 1, WORK, 1 ) diff --git a/TESTING/EIG/zlarhs.f b/TESTING/EIG/zlarhs.f index e3107f231e..1dc003f2e4 100644 --- a/TESTING/EIG/zlarhs.f +++ b/TESTING/EIG/zlarhs.f @@ -29,9 +29,8 @@ *> *> ZLARHS chooses a set of NRHS random solution vectors and sets *> up the right hand sides for the linear system -*> op( A ) * X = B, -*> where op( A ) may be A, A**T (transpose of A), or A**H (conjugate -*> transpose of A). +*> op(A) * X = B, +*> where op(A) = A, A**T, or A**H, depending on TRANS. *> \endverbatim * * Arguments: @@ -85,9 +84,9 @@ *> TRANS is CHARACTER*1 *> Used only if A is nonsymmetric; specifies the operation *> applied to the matrix A. -*> = 'N': B := A * X -*> = 'T': B := A**T * X -*> = 'C': B := A**H * X +*> = 'N': B := A * X (No transpose) +*> = 'T': B := A**T * X (Transpose) +*> = 'C': B := A**H * X (Conjugate transpose) *> \endverbatim *> *> \param[in] M @@ -313,7 +312,7 @@ SUBROUTINE ZLARHS( PATH, XTYPE, UPLO, TRANS, M, N, KL, KU, NRHS, 10 CONTINUE END IF * -* Multiply X by op( A ) using an appropriate +* Multiply X by op(A) using an appropriate * matrix multiply routine. * IF( LSAMEN( 2, C2, 'GE' ) .OR. LSAMEN( 2, C2, 'QR' ) .OR. diff --git a/TESTING/LIN/cchkge.f b/TESTING/LIN/cchkge.f index d970571ac3..0ee1c85c57 100644 --- a/TESTING/LIN/cchkge.f +++ b/TESTING/LIN/cchkge.f @@ -78,7 +78,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/cchkhe.f b/TESTING/LIN/cchkhe.f index 875d8e3997..1ff0257579 100644 --- a/TESTING/LIN/cchkhe.f +++ b/TESTING/LIN/cchkhe.f @@ -65,7 +65,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/cchkhe_aa.f b/TESTING/LIN/cchkhe_aa.f index 826faf7d42..487f9941e8 100644 --- a/TESTING/LIN/cchkhe_aa.f +++ b/TESTING/LIN/cchkhe_aa.f @@ -65,7 +65,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/cchkhe_aa_2stage.f b/TESTING/LIN/cchkhe_aa_2stage.f index 6ba9c309ca..30a61261f5 100644 --- a/TESTING/LIN/cchkhe_aa_2stage.f +++ b/TESTING/LIN/cchkhe_aa_2stage.f @@ -66,7 +66,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/cchkhe_rk.f b/TESTING/LIN/cchkhe_rk.f index 96a2fe1d69..4f9801f88d 100644 --- a/TESTING/LIN/cchkhe_rk.f +++ b/TESTING/LIN/cchkhe_rk.f @@ -66,7 +66,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/cchkhe_rook.f b/TESTING/LIN/cchkhe_rook.f index 52ab5db702..72a4a1d4d0 100644 --- a/TESTING/LIN/cchkhe_rook.f +++ b/TESTING/LIN/cchkhe_rook.f @@ -66,7 +66,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/cchklqt.f b/TESTING/LIN/cchklqt.f index 57b843fbc0..7ec8b2c622 100644 --- a/TESTING/LIN/cchklqt.f +++ b/TESTING/LIN/cchklqt.f @@ -76,7 +76,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/cchklqtp.f b/TESTING/LIN/cchklqtp.f index 9fd21a964b..987c0c3654 100644 --- a/TESTING/LIN/cchklqtp.f +++ b/TESTING/LIN/cchklqtp.f @@ -76,7 +76,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/cchkpb.f b/TESTING/LIN/cchkpb.f index bcfc771f77..4d1ab6f4f9 100644 --- a/TESTING/LIN/cchkpb.f +++ b/TESTING/LIN/cchkpb.f @@ -65,7 +65,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/cchkpo.f b/TESTING/LIN/cchkpo.f index 87d885bf26..8cf85bf6e4 100644 --- a/TESTING/LIN/cchkpo.f +++ b/TESTING/LIN/cchkpo.f @@ -65,7 +65,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/cchkps.f b/TESTING/LIN/cchkps.f index 45702fa692..d77ffc0262 100644 --- a/TESTING/LIN/cchkps.f +++ b/TESTING/LIN/cchkps.f @@ -64,7 +64,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the block size NB. *> \endverbatim *> diff --git a/TESTING/LIN/cchkqrt.f b/TESTING/LIN/cchkqrt.f index 5dc69dd034..7aeb6df4be 100644 --- a/TESTING/LIN/cchkqrt.f +++ b/TESTING/LIN/cchkqrt.f @@ -76,7 +76,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/cchkqrtp.f b/TESTING/LIN/cchkqrtp.f index 246e761215..6820c90042 100644 --- a/TESTING/LIN/cchkqrtp.f +++ b/TESTING/LIN/cchkqrtp.f @@ -76,7 +76,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/cchksy.f b/TESTING/LIN/cchksy.f index 3392188237..c933f0c967 100644 --- a/TESTING/LIN/cchksy.f +++ b/TESTING/LIN/cchksy.f @@ -65,7 +65,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/cchksy_aa.f b/TESTING/LIN/cchksy_aa.f index 735e79bd04..015d5a68e6 100644 --- a/TESTING/LIN/cchksy_aa.f +++ b/TESTING/LIN/cchksy_aa.f @@ -64,7 +64,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/cchksy_aa_2stage.f b/TESTING/LIN/cchksy_aa_2stage.f index 7a0dcc5673..bede7cca5e 100644 --- a/TESTING/LIN/cchksy_aa_2stage.f +++ b/TESTING/LIN/cchksy_aa_2stage.f @@ -66,7 +66,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/cchksy_rk.f b/TESTING/LIN/cchksy_rk.f index 9ba653c093..f4954054f4 100644 --- a/TESTING/LIN/cchksy_rk.f +++ b/TESTING/LIN/cchksy_rk.f @@ -66,7 +66,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/cchksy_rook.f b/TESTING/LIN/cchksy_rook.f index bbe18ebf9c..2031089801 100644 --- a/TESTING/LIN/cchksy_rook.f +++ b/TESTING/LIN/cchksy_rook.f @@ -66,7 +66,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/cchktsqr.f b/TESTING/LIN/cchktsqr.f index e71656671a..0a85d7cf1e 100644 --- a/TESTING/LIN/cchktsqr.f +++ b/TESTING/LIN/cchktsqr.f @@ -76,7 +76,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/cchkunhr_col.f b/TESTING/LIN/cchkunhr_col.f index 0d6a9063db..b2f233e258 100644 --- a/TESTING/LIN/cchkunhr_col.f +++ b/TESTING/LIN/cchkunhr_col.f @@ -82,7 +82,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/cgbt01.f b/TESTING/LIN/cgbt01.f index 277b0b1ab8..148076e9ac 100644 --- a/TESTING/LIN/cgbt01.f +++ b/TESTING/LIN/cgbt01.f @@ -26,7 +26,7 @@ *> *> \verbatim *> -*> CGBT01 reconstructs a band matrix A from its L*U factorization and +*> CGBT01 reconstructs a band matrix A from its L*U factorization and *> computes the residual: *> norm(L*U - A) / ( N * norm(A) * EPS ), *> where EPS is the machine epsilon. @@ -226,7 +226,7 @@ SUBROUTINE CGBT01( M, N, KL, KU, A, LDA, AFAC, LDAFAC, IPIV, WORK, END IF 40 CONTINUE * -* Compute norm( L*U - A ) / ( N * norm(A) * EPS ) +* Compute norm(L*U - A) / ( N * norm(A) * EPS ) * IF( ANORM.LE.ZERO ) THEN IF( RESID.NE.ZERO ) diff --git a/TESTING/LIN/cgbt02.f b/TESTING/LIN/cgbt02.f index 8c51e8b2a2..3204a89867 100644 --- a/TESTING/LIN/cgbt02.f +++ b/TESTING/LIN/cgbt02.f @@ -31,7 +31,7 @@ *> equations op(A)*X = B: *> RESID = norm(B - op(A)*X) / ( norm(op(A)) * norm(X) * EPS ), *> where op(A) = A, A**T, or A**H, depending on TRANS, and EPS is the -*> machine precision. +*> machine epsilon. *> \endverbatim * * Arguments: diff --git a/TESTING/LIN/cgbt05.f b/TESTING/LIN/cgbt05.f index 859f8b3eb2..34b81058fd 100644 --- a/TESTING/LIN/cgbt05.f +++ b/TESTING/LIN/cgbt05.f @@ -30,7 +30,7 @@ *> CGBT05 tests the error bounds from iterative refinement for the *> computed solution to a system of equations op(A)*X = B, where A is a *> general band matrix of order n with kl subdiagonals and ku -*> superdiagonals and op(A) = A or A**T, depending on TRANS. +*> superdiagonals and op(A) = A, A**T, or A**H, depending on TRANS. *> *> RESLTS(1) = test of the error bound *> = norm(X - XACT) / ( norm(X) * FERR ) @@ -50,7 +50,7 @@ *> \verbatim *> TRANS is CHARACTER*1 *> Specifies the form of the system of equations. -*> = 'N': A * X = B (No transpose) +*> = 'N': A * X = B (No transpose) *> = 'T': A**T * X = B (Transpose) *> = 'C': A**H * X = B (Conjugate transpose = Transpose) *> \endverbatim diff --git a/TESTING/LIN/cgtt02.f b/TESTING/LIN/cgtt02.f index abfdfb75a8..0d067c3378 100644 --- a/TESTING/LIN/cgtt02.f +++ b/TESTING/LIN/cgtt02.f @@ -40,7 +40,7 @@ *> \verbatim *> TRANS is CHARACTER *> Specifies the form of the residual. -*> = 'N': B - A * X (No transpose) +*> = 'N': B - A * X (No transpose) *> = 'T': B - A**T * X (Transpose) *> = 'C': B - A**H * X (Conjugate transpose) *> \endverbatim @@ -182,7 +182,7 @@ SUBROUTINE CGTT02( TRANS, N, NRHS, DL, D, DU, X, LDX, B, LDB, RETURN END IF * -* Compute B - op(A)*X. +* Compute B - op(A)*X and store in B. * CALL CLAGTM( TRANS, N, NRHS, -ONE, DL, D, DU, X, LDX, ONE, B, $ LDB ) diff --git a/TESTING/LIN/clarhs.f b/TESTING/LIN/clarhs.f index 0052d3667e..279c98f953 100644 --- a/TESTING/LIN/clarhs.f +++ b/TESTING/LIN/clarhs.f @@ -29,9 +29,8 @@ *> *> CLARHS chooses a set of NRHS random solution vectors and sets *> up the right hand sides for the linear system -*> op( A ) * X = B, -*> where op( A ) may be A, A**T (transpose of A), or A**H (conjugate -*> transpose of A). +*> op(A) * X = B, +*> where op(A) = A, A**T, or A**H, depending on TRANS. *> \endverbatim * * Arguments: @@ -85,9 +84,9 @@ *> TRANS is CHARACTER*1 *> Used only if A is nonsymmetric; specifies the operation *> applied to the matrix A. -*> = 'N': B := A * X -*> = 'T': B := A**T * X -*> = 'C': B := A**H * X +*> = 'N': B := A * X (No transpose) +*> = 'T': B := A**T * X (Transpose) +*> = 'C': B := A**H * X (Conjugate transpose) *> \endverbatim *> *> \param[in] M @@ -313,7 +312,7 @@ SUBROUTINE CLARHS( PATH, XTYPE, UPLO, TRANS, M, N, KL, KU, NRHS, 10 CONTINUE END IF * -* Multiply X by op( A ) using an appropriate +* Multiply X by op(A) using an appropriate * matrix multiply routine. * IF( LSAMEN( 2, C2, 'GE' ) .OR. LSAMEN( 2, C2, 'QR' ) .OR. diff --git a/TESTING/LIN/cpot01.f b/TESTING/LIN/cpot01.f index e9b19184f2..3c8e9a8859 100644 --- a/TESTING/LIN/cpot01.f +++ b/TESTING/LIN/cpot01.f @@ -67,10 +67,10 @@ *> \param[in,out] AFAC *> \verbatim *> AFAC is COMPLEX array, dimension (LDAFAC,N) -*> On entry, the factor L or U from the L*L' or U'*U +*> On entry, the factor L or U from the L * L**H or U**H * U *> factorization of A. -*> Overwritten with the reconstructed matrix, and then with the -*> difference L*L' - A (or U'*U - A). +*> Overwritten with the reconstructed matrix, and then with +*> the difference L * L**H - A (or U**H * U - A). *> \endverbatim *> *> \param[in] LDAFAC @@ -87,8 +87,8 @@ *> \param[out] RESID *> \verbatim *> RESID is REAL -*> If UPLO = 'L', norm(L*L' - A) / ( N * norm(A) * EPS ) -*> If UPLO = 'U', norm(U'*U - A) / ( N * norm(A) * EPS ) +*> If UPLO = 'L', norm(L * L**H - A) / ( N * norm(A) * EPS ) +*> If UPLO = 'U', norm(U**H * U - A) / ( N * norm(A) * EPS ) *> \endverbatim * * Authors: @@ -169,7 +169,7 @@ SUBROUTINE CPOT01( UPLO, N, A, LDA, AFAC, LDAFAC, RWORK, RESID ) END IF 10 CONTINUE * -* Compute the product U'*U, overwriting U. +* Compute the product U**H * U, overwriting U. * IF( LSAME( UPLO, 'U' ) ) THEN DO 20 K = N, 1, -1 @@ -186,7 +186,7 @@ SUBROUTINE CPOT01( UPLO, N, A, LDA, AFAC, LDAFAC, RWORK, RESID ) * 20 CONTINUE * -* Compute the product L*L', overwriting L. +* Compute the product L * L**H, overwriting L. * ELSE DO 30 K = N, 1, -1 @@ -206,7 +206,7 @@ SUBROUTINE CPOT01( UPLO, N, A, LDA, AFAC, LDAFAC, RWORK, RESID ) 30 CONTINUE END IF * -* Compute the difference L*L' - A (or U'*U - A). +* Compute the difference L * L**H - A (or U**H * U - A). * IF( LSAME( UPLO, 'U' ) ) THEN DO 50 J = 1, N @@ -224,7 +224,7 @@ SUBROUTINE CPOT01( UPLO, N, A, LDA, AFAC, LDAFAC, RWORK, RESID ) 70 CONTINUE END IF * -* Compute norm( L*U - A ) / ( N * norm(A) * EPS ) +* Compute norm(L*U - A) / ( N * norm(A) * EPS ) * RESID = CLANHE( '1', UPLO, N, AFAC, LDAFAC, RWORK ) * diff --git a/TESTING/LIN/cqrt17.f b/TESTING/LIN/cqrt17.f index c4e5dd6f09..85443c8387 100644 --- a/TESTING/LIN/cqrt17.f +++ b/TESTING/LIN/cqrt17.f @@ -28,12 +28,13 @@ *> *> CQRT17 computes the ratio *> -*> || R'*op(A) ||/(||A||*alpha*max(M,N,NRHS)*eps) +*> norm(R**H * op(A)) / ( norm(A) * alpha * max(M,N,NRHS) * EPS ), *> -*> where R = op(A)*X - B, op(A) is A or A', and +*> where R = B - op(A)*X, op(A) is A or A**H, depending on TRANS, EPS +*> is the machine epsilon, and *> -*> alpha = ||B|| if IRESID = 1 (zero-residual problem) -*> alpha = ||R|| if IRESID = 2 (otherwise). +*> alpha = norm(B) if IRESID = 1 (zero-residual problem) +*> alpha = norm(R) if IRESID = 2 (otherwise). *> \endverbatim * * Arguments: @@ -44,7 +45,7 @@ *> TRANS is CHARACTER*1 *> Specifies whether or not the transpose of A is used. *> = 'N': No transpose, op(A) = A. -*> = 'C': Conjugate transpose, op(A) = A'. +*> = 'C': Conjugate transpose, op(A) = A**H. *> \endverbatim *> *> \param[in] IRESID @@ -224,7 +225,7 @@ REAL FUNCTION CQRT17( TRANS, IRESID, M, N, NRHS, A, $ INFO ) END IF * -* compute R'*op(A) +* compute R**H * op(A) * CALL CGEMM( 'Conjugate transpose', TRANS, NRHS, NCOLS, NROWS, $ CMPLX( ONE ), C, LDB, A, LDA, CMPLX( ZERO ), WORK, diff --git a/TESTING/LIN/ctbt02.f b/TESTING/LIN/ctbt02.f index 8f95c95af3..359eb467f0 100644 --- a/TESTING/LIN/ctbt02.f +++ b/TESTING/LIN/ctbt02.f @@ -53,9 +53,9 @@ *> \verbatim *> TRANS is CHARACTER*1 *> Specifies the operation applied to A. -*> = 'N': A *x = b (No transpose) -*> = 'T': A**T *x = b (Transpose) -*> = 'C': A**H *x = b (Conjugate transpose) +*> = 'N': A * X = B (No transpose) +*> = 'T': A**T * X = B (Transpose) +*> = 'C': A**H * X = B (Conjugate transpose) *> \endverbatim *> *> \param[in] DIAG @@ -142,7 +142,7 @@ *> \verbatim *> RESID is REAL *> The maximum over the number of right hand sides of -*> norm(op(A)*x - b) / ( norm(op(A)) * norm(x) * EPS ). +*> norm(B - op(A)*X) / ( norm(op(A)) * norm(X) * EPS ). *> \endverbatim * * Authors: @@ -204,7 +204,7 @@ SUBROUTINE CTBT02( UPLO, TRANS, DIAG, N, KD, NRHS, AB, LDAB, X, RETURN END IF * -* Compute the 1-norm of A or A'. +* Compute the 1-norm of op(A). * IF( LSAME( TRANS, 'N' ) ) THEN ANORM = CLANTB( '1', UPLO, DIAG, N, KD, AB, LDAB, RWORK ) @@ -221,7 +221,7 @@ SUBROUTINE CTBT02( UPLO, TRANS, DIAG, N, KD, NRHS, AB, LDAB, X, END IF * * Compute the maximum over the number of right hand sides of -* norm(op(A)*x - b) / ( norm(op(A)) * norm(x) * EPS ). +* norm(B - op(A)*X) / ( norm(op(A)) * norm(X) * EPS ). * RESID = ZERO DO 10 J = 1, NRHS diff --git a/TESTING/LIN/dchkge.f b/TESTING/LIN/dchkge.f index 705a9dbbc2..467667a42b 100644 --- a/TESTING/LIN/dchkge.f +++ b/TESTING/LIN/dchkge.f @@ -77,7 +77,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/dchklqt.f b/TESTING/LIN/dchklqt.f index ba67011852..aa77d6a62e 100644 --- a/TESTING/LIN/dchklqt.f +++ b/TESTING/LIN/dchklqt.f @@ -76,7 +76,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/dchklqtp.f b/TESTING/LIN/dchklqtp.f index 8090213305..d9251b1f09 100644 --- a/TESTING/LIN/dchklqtp.f +++ b/TESTING/LIN/dchklqtp.f @@ -76,7 +76,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/dchkorhr_col.f b/TESTING/LIN/dchkorhr_col.f index 0e2d44d8d2..a849f39106 100644 --- a/TESTING/LIN/dchkorhr_col.f +++ b/TESTING/LIN/dchkorhr_col.f @@ -82,7 +82,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/dchkpb.f b/TESTING/LIN/dchkpb.f index 74b8979d65..c5d51230ed 100644 --- a/TESTING/LIN/dchkpb.f +++ b/TESTING/LIN/dchkpb.f @@ -64,7 +64,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/dchkpo.f b/TESTING/LIN/dchkpo.f index e5abd9c7a1..e9d5af1863 100644 --- a/TESTING/LIN/dchkpo.f +++ b/TESTING/LIN/dchkpo.f @@ -64,7 +64,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/dchkps.f b/TESTING/LIN/dchkps.f index 47d43d0a62..1e4a9e58de 100644 --- a/TESTING/LIN/dchkps.f +++ b/TESTING/LIN/dchkps.f @@ -64,7 +64,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the block size NB. *> \endverbatim *> diff --git a/TESTING/LIN/dchkqrt.f b/TESTING/LIN/dchkqrt.f index 690b041df7..566f273d4e 100644 --- a/TESTING/LIN/dchkqrt.f +++ b/TESTING/LIN/dchkqrt.f @@ -76,7 +76,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/dchkqrtp.f b/TESTING/LIN/dchkqrtp.f index 1e53bcded7..924ba7ea37 100644 --- a/TESTING/LIN/dchkqrtp.f +++ b/TESTING/LIN/dchkqrtp.f @@ -76,7 +76,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/dchksy.f b/TESTING/LIN/dchksy.f index 84589d8e02..8d127cd3b6 100644 --- a/TESTING/LIN/dchksy.f +++ b/TESTING/LIN/dchksy.f @@ -64,7 +64,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/dchksy_aa.f b/TESTING/LIN/dchksy_aa.f index 81139440fa..4c79ebbbf1 100644 --- a/TESTING/LIN/dchksy_aa.f +++ b/TESTING/LIN/dchksy_aa.f @@ -64,7 +64,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/dchksy_aa_2stage.f b/TESTING/LIN/dchksy_aa_2stage.f index 405f8f12d7..bc4e77a5aa 100644 --- a/TESTING/LIN/dchksy_aa_2stage.f +++ b/TESTING/LIN/dchksy_aa_2stage.f @@ -65,7 +65,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/dchksy_rk.f b/TESTING/LIN/dchksy_rk.f index 3731a3c666..701cb9ce6a 100644 --- a/TESTING/LIN/dchksy_rk.f +++ b/TESTING/LIN/dchksy_rk.f @@ -63,7 +63,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/dchksy_rook.f b/TESTING/LIN/dchksy_rook.f index 1af46409ba..03b16b78ac 100644 --- a/TESTING/LIN/dchksy_rook.f +++ b/TESTING/LIN/dchksy_rook.f @@ -65,7 +65,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/dchktsqr.f b/TESTING/LIN/dchktsqr.f index c7f06c11c7..27076b5c26 100644 --- a/TESTING/LIN/dchktsqr.f +++ b/TESTING/LIN/dchktsqr.f @@ -76,7 +76,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/dgbt01.f b/TESTING/LIN/dgbt01.f index 28f7200ddb..6a095876ed 100644 --- a/TESTING/LIN/dgbt01.f +++ b/TESTING/LIN/dgbt01.f @@ -26,7 +26,7 @@ *> *> \verbatim *> -*> DGBT01 reconstructs a band matrix A from its L*U factorization and +*> DGBT01 reconstructs a band matrix A from its L*U factorization and *> computes the residual: *> norm(L*U - A) / ( N * norm(A) * EPS ), *> where EPS is the machine epsilon. @@ -225,7 +225,7 @@ SUBROUTINE DGBT01( M, N, KL, KU, A, LDA, AFAC, LDAFAC, IPIV, WORK, END IF 40 CONTINUE * -* Compute norm( L*U - A ) / ( N * norm(A) * EPS ) +* Compute norm(L*U - A) / ( N * norm(A) * EPS ) * IF( ANORM.LE.ZERO ) THEN IF( RESID.NE.ZERO ) diff --git a/TESTING/LIN/dgbt02.f b/TESTING/LIN/dgbt02.f index ef7e00c3d6..1184587a9c 100644 --- a/TESTING/LIN/dgbt02.f +++ b/TESTING/LIN/dgbt02.f @@ -31,7 +31,7 @@ *> equations op(A)*X = B: *> RESID = norm(B - op(A)*X) / ( norm(op(A)) * norm(X) * EPS ), *> where op(A) = A or A**T, depending on TRANS, and EPS is the -*> machine precision. +*> machine epsilon. *> \endverbatim * * Arguments: diff --git a/TESTING/LIN/dgbt05.f b/TESTING/LIN/dgbt05.f index ba85eaf7d9..793e73951d 100644 --- a/TESTING/LIN/dgbt05.f +++ b/TESTING/LIN/dgbt05.f @@ -50,7 +50,7 @@ *> \verbatim *> TRANS is CHARACTER*1 *> Specifies the form of the system of equations. -*> = 'N': A * X = B (No transpose) +*> = 'N': A * X = B (No transpose) *> = 'T': A**T * X = B (Transpose) *> = 'C': A**H * X = B (Conjugate transpose = Transpose) *> \endverbatim diff --git a/TESTING/LIN/dgtt02.f b/TESTING/LIN/dgtt02.f index 1cc17215a3..e91f002249 100644 --- a/TESTING/LIN/dgtt02.f +++ b/TESTING/LIN/dgtt02.f @@ -40,9 +40,9 @@ *> \verbatim *> TRANS is CHARACTER *> Specifies the form of the residual. -*> = 'N': B - A * X (No transpose) -*> = 'T': B - A'* X (Transpose) -*> = 'C': B - A'* X (Conjugate transpose = Transpose) +*> = 'N': B - A * X (No transpose) +*> = 'T': B - A**T * X (Transpose) +*> = 'C': B - A**H * X (Conjugate transpose = Transpose) *> \endverbatim *> *> \param[in] N @@ -182,7 +182,7 @@ SUBROUTINE DGTT02( TRANS, N, NRHS, DL, D, DU, X, LDX, B, LDB, RETURN END IF * -* Compute B - op(A)*X. +* Compute B - op(A)*X and store in B. * CALL DLAGTM( TRANS, N, NRHS, -ONE, DL, D, DU, X, LDX, ONE, B, $ LDB ) diff --git a/TESTING/LIN/dlarhs.f b/TESTING/LIN/dlarhs.f index b9ce743386..48a1d54a68 100644 --- a/TESTING/LIN/dlarhs.f +++ b/TESTING/LIN/dlarhs.f @@ -29,8 +29,8 @@ *> *> DLARHS chooses a set of NRHS random solution vectors and sets *> up the right hand sides for the linear system -*> op( A ) * X = B, -*> where op( A ) may be A or A' (transpose of A). +*> op(A) * X = B, +*> where op(A) = A or A**T, depending on TRANS. *> \endverbatim * * Arguments: @@ -79,10 +79,11 @@ *> \param[in] TRANS *> \verbatim *> TRANS is CHARACTER*1 -*> Specifies the operation applied to the matrix A. -*> = 'N': System is A * x = b -*> = 'T': System is A'* x = b -*> = 'C': System is A'* x = b +*> Used only if A is nonsymmetric; specifies the operation +*> applied to the matrix A. +*> = 'N': B := A * X (No transpose) +*> = 'T': B := A**T * X (Transpose) +*> = 'C': B := A**H * X (Conjugate transpose = Transpose) *> \endverbatim *> *> \param[in] M @@ -305,7 +306,7 @@ SUBROUTINE DLARHS( PATH, XTYPE, UPLO, TRANS, M, N, KL, KU, NRHS, 10 CONTINUE END IF * -* Multiply X by op( A ) using an appropriate +* Multiply X by op(A) using an appropriate * matrix multiply routine. * IF( LSAMEN( 2, C2, 'GE' ) .OR. LSAMEN( 2, C2, 'QR' ) .OR. diff --git a/TESTING/LIN/dpot01.f b/TESTING/LIN/dpot01.f index f48a1a4fc5..b48d066101 100644 --- a/TESTING/LIN/dpot01.f +++ b/TESTING/LIN/dpot01.f @@ -65,10 +65,10 @@ *> \param[in,out] AFAC *> \verbatim *> AFAC is DOUBLE PRECISION array, dimension (LDAFAC,N) -*> On entry, the factor L or U from the L*L' or U'*U +*> On entry, the factor L or U from the L * L**T or U**T * U *> factorization of A. -*> Overwritten with the reconstructed matrix, and then with the -*> difference L*L' - A (or U'*U - A). +*> Overwritten with the reconstructed matrix, and then with +*> the difference L * L**T - A (or U**T * U - A). *> \endverbatim *> *> \param[in] LDAFAC @@ -85,8 +85,8 @@ *> \param[out] RESID *> \verbatim *> RESID is DOUBLE PRECISION -*> If UPLO = 'L', norm(L*L' - A) / ( N * norm(A) * EPS ) -*> If UPLO = 'U', norm(U'*U - A) / ( N * norm(A) * EPS ) +*> If UPLO = 'L', norm(L * L**T - A) / ( N * norm(A) * EPS ) +*> If UPLO = 'U', norm(U**T * U - A) / ( N * norm(A) * EPS ) *> \endverbatim * * Authors: @@ -154,7 +154,7 @@ SUBROUTINE DPOT01( UPLO, N, A, LDA, AFAC, LDAFAC, RWORK, RESID ) RETURN END IF * -* Compute the product U'*U, overwriting U. +* Compute the product U**T * U, overwriting U. * IF( LSAME( UPLO, 'U' ) ) THEN DO 10 K = N, 1, -1 @@ -171,7 +171,7 @@ SUBROUTINE DPOT01( UPLO, N, A, LDA, AFAC, LDAFAC, RWORK, RESID ) * 10 CONTINUE * -* Compute the product L*L', overwriting L. +* Compute the product L * L**T, overwriting L. * ELSE DO 20 K = N, 1, -1 @@ -191,7 +191,7 @@ SUBROUTINE DPOT01( UPLO, N, A, LDA, AFAC, LDAFAC, RWORK, RESID ) 20 CONTINUE END IF * -* Compute the difference L*L' - A (or U'*U - A). +* Compute the difference L * L**T - A (or U**T * U - A). * IF( LSAME( UPLO, 'U' ) ) THEN DO 40 J = 1, N @@ -207,7 +207,7 @@ SUBROUTINE DPOT01( UPLO, N, A, LDA, AFAC, LDAFAC, RWORK, RESID ) 60 CONTINUE END IF * -* Compute norm( L*U - A ) / ( N * norm(A) * EPS ) +* Compute norm(L*U - A) / ( N * norm(A) * EPS ) * RESID = DLANSY( '1', UPLO, N, AFAC, LDAFAC, RWORK ) * diff --git a/TESTING/LIN/dqrt17.f b/TESTING/LIN/dqrt17.f index 592904a497..15479f8e52 100644 --- a/TESTING/LIN/dqrt17.f +++ b/TESTING/LIN/dqrt17.f @@ -28,12 +28,13 @@ *> *> DQRT17 computes the ratio *> -*> || R'*op(A) ||/(||A||*alpha*max(M,N,NRHS)*eps) +*> norm(R**T * op(A)) / ( norm(A) * alpha * max(M,N,NRHS) * EPS ), *> -*> where R = op(A)*X - B, op(A) is A or A', and +*> where R = B - op(A)*X, op(A) is A or A**T, depending on TRANS, EPS +*> is the machine epsilon, and *> -*> alpha = ||B|| if IRESID = 1 (zero-residual problem) -*> alpha = ||R|| if IRESID = 2 (otherwise). +*> alpha = norm(B) if IRESID = 1 (zero-residual problem) +*> alpha = norm(R) if IRESID = 2 (otherwise). *> \endverbatim * * Arguments: @@ -44,7 +45,7 @@ *> TRANS is CHARACTER*1 *> Specifies whether or not the transpose of A is used. *> = 'N': No transpose, op(A) = A. -*> = 'T': Transpose, op(A) = A'. +*> = 'T': Transpose, op(A) = A**T. *> \endverbatim *> *> \param[in] IRESID @@ -225,7 +226,7 @@ DOUBLE PRECISION FUNCTION DQRT17( TRANS, IRESID, M, N, NRHS, A, $ INFO ) END IF * -* compute R'*op(A) +* compute R**T * op(A) * CALL DGEMM( 'Transpose', TRANS, NRHS, NCOLS, NROWS, ONE, C, LDB, $ A, LDA, ZERO, WORK, NRHS ) diff --git a/TESTING/LIN/dtbt02.f b/TESTING/LIN/dtbt02.f index 2870b32677..12f4ec2b5d 100644 --- a/TESTING/LIN/dtbt02.f +++ b/TESTING/LIN/dtbt02.f @@ -51,9 +51,9 @@ *> \verbatim *> TRANS is CHARACTER*1 *> Specifies the operation applied to A. -*> = 'N': A *x = b (No transpose) -*> = 'T': A'*x = b (Transpose) -*> = 'C': A'*x = b (Conjugate transpose = Transpose) +*> = 'N': A * X = B (No transpose) +*> = 'T': A**T * X = B (Transpose) +*> = 'C': A**H * X = B (Conjugate transpose = Transpose) *> \endverbatim *> *> \param[in] DIAG @@ -135,7 +135,7 @@ *> \verbatim *> RESID is DOUBLE PRECISION *> The maximum over the number of right hand sides of -*> norm(op(A)*x - b) / ( norm(op(A)) * norm(x) * EPS ). +*> norm(B - op(A)*X) / ( norm(op(A)) * norm(X) * EPS ). *> \endverbatim * * Authors: @@ -196,7 +196,7 @@ SUBROUTINE DTBT02( UPLO, TRANS, DIAG, N, KD, NRHS, AB, LDAB, X, RETURN END IF * -* Compute the 1-norm of A or A'. +* Compute the 1-norm of op(A). * IF( LSAME( TRANS, 'N' ) ) THEN ANORM = DLANTB( '1', UPLO, DIAG, N, KD, AB, LDAB, WORK ) @@ -213,7 +213,7 @@ SUBROUTINE DTBT02( UPLO, TRANS, DIAG, N, KD, NRHS, AB, LDAB, X, END IF * * Compute the maximum over the number of right hand sides of -* norm(op(A)*x - b) / ( norm(op(A)) * norm(x) * EPS ). +* norm(B - op(A)*X) / ( norm(op(A)) * norm(X) * EPS ). * RESID = ZERO DO 10 J = 1, NRHS diff --git a/TESTING/LIN/schkge.f b/TESTING/LIN/schkge.f index 6a2c0b0cfd..0921f79257 100644 --- a/TESTING/LIN/schkge.f +++ b/TESTING/LIN/schkge.f @@ -77,7 +77,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/schklqt.f b/TESTING/LIN/schklqt.f index 966142f8f2..2230583bae 100644 --- a/TESTING/LIN/schklqt.f +++ b/TESTING/LIN/schklqt.f @@ -76,7 +76,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/schklqtp.f b/TESTING/LIN/schklqtp.f index aeb3b43710..20c0dd0199 100644 --- a/TESTING/LIN/schklqtp.f +++ b/TESTING/LIN/schklqtp.f @@ -76,7 +76,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/schkorhr_col.f b/TESTING/LIN/schkorhr_col.f index f61b749028..9c91b85353 100644 --- a/TESTING/LIN/schkorhr_col.f +++ b/TESTING/LIN/schkorhr_col.f @@ -82,7 +82,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/schkpb.f b/TESTING/LIN/schkpb.f index 6a9662bdeb..fdad0d6dfd 100644 --- a/TESTING/LIN/schkpb.f +++ b/TESTING/LIN/schkpb.f @@ -64,7 +64,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/schkpo.f b/TESTING/LIN/schkpo.f index 266abcb43f..ccfb9b7b27 100644 --- a/TESTING/LIN/schkpo.f +++ b/TESTING/LIN/schkpo.f @@ -64,7 +64,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/schkps.f b/TESTING/LIN/schkps.f index 9385a5809c..7bd70c4525 100644 --- a/TESTING/LIN/schkps.f +++ b/TESTING/LIN/schkps.f @@ -64,7 +64,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the block size NB. *> \endverbatim *> diff --git a/TESTING/LIN/schkqrt.f b/TESTING/LIN/schkqrt.f index 23515d95d4..ed25a230d4 100644 --- a/TESTING/LIN/schkqrt.f +++ b/TESTING/LIN/schkqrt.f @@ -74,7 +74,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/schkqrtp.f b/TESTING/LIN/schkqrtp.f index 5be01b6cd7..eee963c472 100644 --- a/TESTING/LIN/schkqrtp.f +++ b/TESTING/LIN/schkqrtp.f @@ -76,7 +76,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/schksy.f b/TESTING/LIN/schksy.f index 39353671d3..dc94b34924 100644 --- a/TESTING/LIN/schksy.f +++ b/TESTING/LIN/schksy.f @@ -64,7 +64,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/schksy_aa.f b/TESTING/LIN/schksy_aa.f index 573b905aa8..75b895bd43 100644 --- a/TESTING/LIN/schksy_aa.f +++ b/TESTING/LIN/schksy_aa.f @@ -64,7 +64,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/schksy_aa_2stage.f b/TESTING/LIN/schksy_aa_2stage.f index 8a5ed94dec..d3c27ae561 100644 --- a/TESTING/LIN/schksy_aa_2stage.f +++ b/TESTING/LIN/schksy_aa_2stage.f @@ -65,7 +65,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/schksy_rk.f b/TESTING/LIN/schksy_rk.f index 0158ead9f5..932e6e1860 100644 --- a/TESTING/LIN/schksy_rk.f +++ b/TESTING/LIN/schksy_rk.f @@ -63,7 +63,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/schksy_rook.f b/TESTING/LIN/schksy_rook.f index c0ad39ce96..eb91eba4f0 100644 --- a/TESTING/LIN/schksy_rook.f +++ b/TESTING/LIN/schksy_rook.f @@ -65,7 +65,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/schktsqr.f b/TESTING/LIN/schktsqr.f index a3994cbed3..5d7aa2d374 100644 --- a/TESTING/LIN/schktsqr.f +++ b/TESTING/LIN/schktsqr.f @@ -76,7 +76,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/sgbt01.f b/TESTING/LIN/sgbt01.f index 0f6129240a..c5ae6b11a5 100644 --- a/TESTING/LIN/sgbt01.f +++ b/TESTING/LIN/sgbt01.f @@ -26,7 +26,7 @@ *> *> \verbatim *> -*> SGBT01 reconstructs a band matrix A from its L*U factorization and +*> SGBT01 reconstructs a band matrix A from its L*U factorization and *> computes the residual: *> norm(L*U - A) / ( N * norm(A) * EPS ), *> where EPS is the machine epsilon. @@ -225,7 +225,7 @@ SUBROUTINE SGBT01( M, N, KL, KU, A, LDA, AFAC, LDAFAC, IPIV, WORK, END IF 40 CONTINUE * -* Compute norm( L*U - A ) / ( N * norm(A) * EPS ) +* Compute norm(L*U - A) / ( N * norm(A) * EPS ) * IF( ANORM.LE.ZERO ) THEN IF( RESID.NE.ZERO ) diff --git a/TESTING/LIN/sgbt02.f b/TESTING/LIN/sgbt02.f index 2c0734d150..82a5555490 100644 --- a/TESTING/LIN/sgbt02.f +++ b/TESTING/LIN/sgbt02.f @@ -31,7 +31,7 @@ *> equations op(A)*X = B: *> RESID = norm(B - op(A)*X) / ( norm(op(A)) * norm(X) * EPS ), *> where op(A) = A or A**T, depending on TRANS, and EPS is the -*> machine precision. +*> machine epsilon. *> \endverbatim * * Arguments: diff --git a/TESTING/LIN/sgbt05.f b/TESTING/LIN/sgbt05.f index cfd6dd743e..bba80b56da 100644 --- a/TESTING/LIN/sgbt05.f +++ b/TESTING/LIN/sgbt05.f @@ -50,7 +50,7 @@ *> \verbatim *> TRANS is CHARACTER*1 *> Specifies the form of the system of equations. -*> = 'N': A * X = B (No transpose) +*> = 'N': A * X = B (No transpose) *> = 'T': A**T * X = B (Transpose) *> = 'C': A**H * X = B (Conjugate transpose = Transpose) *> \endverbatim diff --git a/TESTING/LIN/sgtt02.f b/TESTING/LIN/sgtt02.f index 52e2d443e7..0b03e7f592 100644 --- a/TESTING/LIN/sgtt02.f +++ b/TESTING/LIN/sgtt02.f @@ -40,9 +40,9 @@ *> \verbatim *> TRANS is CHARACTER *> Specifies the form of the residual. -*> = 'N': B - A * X (No transpose) -*> = 'T': B - A'* X (Transpose) -*> = 'C': B - A'* X (Conjugate transpose = Transpose) +*> = 'N': B - A * X (No transpose) +*> = 'T': B - A**T * X (Transpose) +*> = 'C': B - A**H * X (Conjugate transpose = Transpose) *> \endverbatim *> *> \param[in] N @@ -182,7 +182,7 @@ SUBROUTINE SGTT02( TRANS, N, NRHS, DL, D, DU, X, LDX, B, LDB, RETURN END IF * -* Compute B - op(A)*X. +* Compute B - op(A)*X and store in B. * CALL SLAGTM( TRANS, N, NRHS, -ONE, DL, D, DU, X, LDX, ONE, B, $ LDB ) diff --git a/TESTING/LIN/slarhs.f b/TESTING/LIN/slarhs.f index b126ca72a4..6a8a592c8c 100644 --- a/TESTING/LIN/slarhs.f +++ b/TESTING/LIN/slarhs.f @@ -29,8 +29,8 @@ *> *> SLARHS chooses a set of NRHS random solution vectors and sets *> up the right hand sides for the linear system -*> op( A ) * X = B, -*> where op( A ) may be A or A' (transpose of A). +*> op(A) * X = B, +*> where op(A) = A or A**T, depending on TRANS. *> \endverbatim * * Arguments: @@ -79,10 +79,11 @@ *> \param[in] TRANS *> \verbatim *> TRANS is CHARACTER*1 -*> Specifies the operation applied to the matrix A. -*> = 'N': System is A * x = b -*> = 'T': System is A'* x = b -*> = 'C': System is A'* x = b +*> Used only if A is nonsymmetric; specifies the operation +*> applied to the matrix A. +*> = 'N': B := A * X (No transpose) +*> = 'T': B := A**T * X (Transpose) +*> = 'C': B := A**H * X (Conjugate transpose = Transpose) *> \endverbatim *> *> \param[in] M @@ -305,7 +306,7 @@ SUBROUTINE SLARHS( PATH, XTYPE, UPLO, TRANS, M, N, KL, KU, NRHS, 10 CONTINUE END IF * -* Multiply X by op( A ) using an appropriate +* Multiply X by op(A) using an appropriate * matrix multiply routine. * IF( LSAMEN( 2, C2, 'GE' ) .OR. LSAMEN( 2, C2, 'QR' ) .OR. diff --git a/TESTING/LIN/spot01.f b/TESTING/LIN/spot01.f index a0176c822e..5f14b3f0ff 100644 --- a/TESTING/LIN/spot01.f +++ b/TESTING/LIN/spot01.f @@ -65,10 +65,10 @@ *> \param[in,out] AFAC *> \verbatim *> AFAC is REAL array, dimension (LDAFAC,N) -*> On entry, the factor L or U from the L*L' or U'*U +*> On entry, the factor L or U from the L * L**T or U**T * U *> factorization of A. -*> Overwritten with the reconstructed matrix, and then with the -*> difference L*L' - A (or U'*U - A). +*> Overwritten with the reconstructed matrix, and then with +*> the difference L * L**T - A (or U**T * U - A). *> \endverbatim *> *> \param[in] LDAFAC @@ -85,8 +85,8 @@ *> \param[out] RESID *> \verbatim *> RESID is REAL -*> If UPLO = 'L', norm(L*L' - A) / ( N * norm(A) * EPS ) -*> If UPLO = 'U', norm(U'*U - A) / ( N * norm(A) * EPS ) +*> If UPLO = 'L', norm(L * L**T - A) / ( N * norm(A) * EPS ) +*> If UPLO = 'U', norm(U**T * U - A) / ( N * norm(A) * EPS ) *> \endverbatim * * Authors: @@ -154,7 +154,7 @@ SUBROUTINE SPOT01( UPLO, N, A, LDA, AFAC, LDAFAC, RWORK, RESID ) RETURN END IF * -* Compute the product U'*U, overwriting U. +* Compute the product U**T * U, overwriting U. * IF( LSAME( UPLO, 'U' ) ) THEN DO 10 K = N, 1, -1 @@ -171,7 +171,7 @@ SUBROUTINE SPOT01( UPLO, N, A, LDA, AFAC, LDAFAC, RWORK, RESID ) * 10 CONTINUE * -* Compute the product L*L', overwriting L. +* Compute the product L * L**T, overwriting L. * ELSE DO 20 K = N, 1, -1 @@ -191,7 +191,7 @@ SUBROUTINE SPOT01( UPLO, N, A, LDA, AFAC, LDAFAC, RWORK, RESID ) 20 CONTINUE END IF * -* Compute the difference L*L' - A (or U'*U - A). +* Compute the difference L * L**T - A (or U**T * U - A). * IF( LSAME( UPLO, 'U' ) ) THEN DO 40 J = 1, N @@ -207,7 +207,7 @@ SUBROUTINE SPOT01( UPLO, N, A, LDA, AFAC, LDAFAC, RWORK, RESID ) 60 CONTINUE END IF * -* Compute norm( L*U - A ) / ( N * norm(A) * EPS ) +* Compute norm(L*U - A) / ( N * norm(A) * EPS ) * RESID = SLANSY( '1', UPLO, N, AFAC, LDAFAC, RWORK ) * diff --git a/TESTING/LIN/sqrt17.f b/TESTING/LIN/sqrt17.f index 1a80b8c784..83c3ca98fd 100644 --- a/TESTING/LIN/sqrt17.f +++ b/TESTING/LIN/sqrt17.f @@ -28,12 +28,13 @@ *> *> SQRT17 computes the ratio *> -*> || R'*op(A) ||/(||A||*alpha*max(M,N,NRHS)*eps) +*> norm(R**T * op(A)) / ( norm(A) * alpha * max(M,N,NRHS) * EPS ), *> -*> where R = op(A)*X - B, op(A) is A or A', and +*> where R = B - op(A)*X, op(A) is A or A**T, depending on TRANS, EPS +*> is the machine epsilon, and *> -*> alpha = ||B|| if IRESID = 1 (zero-residual problem) -*> alpha = ||R|| if IRESID = 2 (otherwise). +*> alpha = norm(B) if IRESID = 1 (zero-residual problem) +*> alpha = norm(R) if IRESID = 2 (otherwise). *> \endverbatim * * Arguments: @@ -44,7 +45,7 @@ *> TRANS is CHARACTER*1 *> Specifies whether or not the transpose of A is used. *> = 'N': No transpose, op(A) = A. -*> = 'T': Transpose, op(A) = A'. +*> = 'T': Transpose, op(A) = A**T. *> \endverbatim *> *> \param[in] IRESID @@ -225,7 +226,7 @@ REAL FUNCTION SQRT17( TRANS, IRESID, M, N, NRHS, A, $ INFO ) END IF * -* compute R'*op(A) +* compute R**T * op(A) * CALL SGEMM( 'Transpose', TRANS, NRHS, NCOLS, NROWS, ONE, C, LDB, $ A, LDA, ZERO, WORK, NRHS ) diff --git a/TESTING/LIN/stbt02.f b/TESTING/LIN/stbt02.f index 96ca3b6baa..5c3932c711 100644 --- a/TESTING/LIN/stbt02.f +++ b/TESTING/LIN/stbt02.f @@ -28,10 +28,9 @@ *> \verbatim *> *> STBT02 computes the residual for the computed solution to a -*> triangular system of linear equations A*x = b or A' *x = b when -*> A is a triangular band matrix. Here A' is the transpose of A and -*> x and b are N by NRHS matrices. The test ratio is the maximum over -*> the number of right hand sides of +*> triangular system of linear equations op(A)*X = B when A is a +*> triangular band matrix. The test ratio is the maximum over the +*> number of right hand sides of *> norm(b - op(A)*x) / ( norm(op(A)) * norm(x) * EPS ), *> where op(A) denotes A or A' and EPS is the machine epsilon. *> \endverbatim @@ -51,9 +50,9 @@ *> \verbatim *> TRANS is CHARACTER*1 *> Specifies the operation applied to A. -*> = 'N': A *x = b (No transpose) -*> = 'T': A'*x = b (Transpose) -*> = 'C': A'*x = b (Conjugate transpose = Transpose) +*> = 'N': A * X = B (No transpose) +*> = 'T': A**T * X = B (Transpose) +*> = 'C': A**H * X = B (Conjugate transpose = Transpose) *> \endverbatim *> *> \param[in] DIAG @@ -135,7 +134,7 @@ *> \verbatim *> RESID is REAL *> The maximum over the number of right hand sides of -*> norm(op(A)*x - b) / ( norm(op(A)) * norm(x) * EPS ). +*> norm(B - op(A)*X) / ( norm(op(A)) * norm(X) * EPS ). *> \endverbatim * * Authors: @@ -196,7 +195,7 @@ SUBROUTINE STBT02( UPLO, TRANS, DIAG, N, KD, NRHS, AB, LDAB, X, RETURN END IF * -* Compute the 1-norm of A or A'. +* Compute the 1-norm of op(A). * IF( LSAME( TRANS, 'N' ) ) THEN ANORM = SLANTB( '1', UPLO, DIAG, N, KD, AB, LDAB, WORK ) @@ -213,7 +212,7 @@ SUBROUTINE STBT02( UPLO, TRANS, DIAG, N, KD, NRHS, AB, LDAB, X, END IF * * Compute the maximum over the number of right hand sides of -* norm(op(A)*x - b) / ( norm(op(A)) * norm(x) * EPS ). +* norm(B - op(A)*X) / ( norm(op(A)) * norm(X) * EPS ). * RESID = ZERO DO 10 J = 1, NRHS diff --git a/TESTING/LIN/zchkgb.f b/TESTING/LIN/zchkgb.f index d4d261d93a..3b0cd707ab 100644 --- a/TESTING/LIN/zchkgb.f +++ b/TESTING/LIN/zchkgb.f @@ -78,7 +78,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/zchkge.f b/TESTING/LIN/zchkge.f index df46a3fc8a..d87759df5c 100644 --- a/TESTING/LIN/zchkge.f +++ b/TESTING/LIN/zchkge.f @@ -78,7 +78,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/zchkhe.f b/TESTING/LIN/zchkhe.f index f0e746890a..e443eab04f 100644 --- a/TESTING/LIN/zchkhe.f +++ b/TESTING/LIN/zchkhe.f @@ -65,7 +65,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/zchkhe_aa.f b/TESTING/LIN/zchkhe_aa.f index acb0dd31cf..1c4ee88e0e 100644 --- a/TESTING/LIN/zchkhe_aa.f +++ b/TESTING/LIN/zchkhe_aa.f @@ -65,7 +65,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/zchkhe_aa_2stage.f b/TESTING/LIN/zchkhe_aa_2stage.f index f4d9585f33..726e1fea6d 100644 --- a/TESTING/LIN/zchkhe_aa_2stage.f +++ b/TESTING/LIN/zchkhe_aa_2stage.f @@ -66,7 +66,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/zchkhe_rk.f b/TESTING/LIN/zchkhe_rk.f index e670bf3279..63697d33a1 100644 --- a/TESTING/LIN/zchkhe_rk.f +++ b/TESTING/LIN/zchkhe_rk.f @@ -66,7 +66,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/zchkhe_rook.f b/TESTING/LIN/zchkhe_rook.f index c18528b3c6..84f5a84220 100644 --- a/TESTING/LIN/zchkhe_rook.f +++ b/TESTING/LIN/zchkhe_rook.f @@ -66,7 +66,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/zchklqt.f b/TESTING/LIN/zchklqt.f index 1e941f0bcb..680c1135e2 100644 --- a/TESTING/LIN/zchklqt.f +++ b/TESTING/LIN/zchklqt.f @@ -76,7 +76,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/zchklqtp.f b/TESTING/LIN/zchklqtp.f index a3ad56ed63..75e3ddfb1d 100644 --- a/TESTING/LIN/zchklqtp.f +++ b/TESTING/LIN/zchklqtp.f @@ -76,7 +76,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/zchkpb.f b/TESTING/LIN/zchkpb.f index a935d10c89..1ce8c3b88f 100644 --- a/TESTING/LIN/zchkpb.f +++ b/TESTING/LIN/zchkpb.f @@ -65,7 +65,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/zchkpo.f b/TESTING/LIN/zchkpo.f index 7ceb65f7c5..93ea721633 100644 --- a/TESTING/LIN/zchkpo.f +++ b/TESTING/LIN/zchkpo.f @@ -65,7 +65,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/zchkps.f b/TESTING/LIN/zchkps.f index 8cf05ccd26..79fc951e22 100644 --- a/TESTING/LIN/zchkps.f +++ b/TESTING/LIN/zchkps.f @@ -64,7 +64,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the block size NB. *> \endverbatim *> diff --git a/TESTING/LIN/zchkqrt.f b/TESTING/LIN/zchkqrt.f index cf096ef4eb..cb07af72ce 100644 --- a/TESTING/LIN/zchkqrt.f +++ b/TESTING/LIN/zchkqrt.f @@ -75,7 +75,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/zchkqrtp.f b/TESTING/LIN/zchkqrtp.f index 54cb9ab725..9337a68375 100644 --- a/TESTING/LIN/zchkqrtp.f +++ b/TESTING/LIN/zchkqrtp.f @@ -76,7 +76,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/zchksy.f b/TESTING/LIN/zchksy.f index 2232497b6f..7877eb7e2d 100644 --- a/TESTING/LIN/zchksy.f +++ b/TESTING/LIN/zchksy.f @@ -65,7 +65,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/zchksy_aa.f b/TESTING/LIN/zchksy_aa.f index 3f0c52173a..9f53593d57 100644 --- a/TESTING/LIN/zchksy_aa.f +++ b/TESTING/LIN/zchksy_aa.f @@ -65,7 +65,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/zchksy_aa_2stage.f b/TESTING/LIN/zchksy_aa_2stage.f index 8671d09796..4c8ff94f78 100644 --- a/TESTING/LIN/zchksy_aa_2stage.f +++ b/TESTING/LIN/zchksy_aa_2stage.f @@ -66,7 +66,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/zchksy_rk.f b/TESTING/LIN/zchksy_rk.f index 276fa569e3..3a206b30d8 100644 --- a/TESTING/LIN/zchksy_rk.f +++ b/TESTING/LIN/zchksy_rk.f @@ -66,7 +66,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/zchksy_rook.f b/TESTING/LIN/zchksy_rook.f index 4daac3f951..dcb5b6edd1 100644 --- a/TESTING/LIN/zchksy_rook.f +++ b/TESTING/LIN/zchksy_rook.f @@ -66,7 +66,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/zchktsqr.f b/TESTING/LIN/zchktsqr.f index 151a925aef..ca7828f1ad 100644 --- a/TESTING/LIN/zchktsqr.f +++ b/TESTING/LIN/zchktsqr.f @@ -76,7 +76,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/zchkunhr_col.f b/TESTING/LIN/zchkunhr_col.f index 395ea178af..a6ec2f0f81 100644 --- a/TESTING/LIN/zchkunhr_col.f +++ b/TESTING/LIN/zchkunhr_col.f @@ -82,7 +82,7 @@ *> *> \param[in] NBVAL *> \verbatim -*> NBVAL is INTEGER array, dimension (NBVAL) +*> NBVAL is INTEGER array, dimension (NNB) *> The values of the blocksize NB. *> \endverbatim *> diff --git a/TESTING/LIN/zgbt01.f b/TESTING/LIN/zgbt01.f index 9219193713..e041ab9fa0 100644 --- a/TESTING/LIN/zgbt01.f +++ b/TESTING/LIN/zgbt01.f @@ -26,7 +26,7 @@ *> *> \verbatim *> -*> ZGBT01 reconstructs a band matrix A from its L*U factorization and +*> ZGBT01 reconstructs a band matrix A from its L*U factorization and *> computes the residual: *> norm(L*U - A) / ( N * norm(A) * EPS ), *> where EPS is the machine epsilon. @@ -226,7 +226,7 @@ SUBROUTINE ZGBT01( M, N, KL, KU, A, LDA, AFAC, LDAFAC, IPIV, WORK, END IF 40 CONTINUE * -* Compute norm( L*U - A ) / ( N * norm(A) * EPS ) +* Compute norm(L*U - A) / ( N * norm(A) * EPS ) * IF( ANORM.LE.ZERO ) THEN IF( RESID.NE.ZERO ) diff --git a/TESTING/LIN/zgbt02.f b/TESTING/LIN/zgbt02.f index 3547ea0b5e..0d13b571ad 100644 --- a/TESTING/LIN/zgbt02.f +++ b/TESTING/LIN/zgbt02.f @@ -31,7 +31,7 @@ *> equations op(A)*X = B: *> RESID = norm(B - op(A)*X) / ( norm(op(A)) * norm(X) * EPS ), *> where op(A) = A, A**T, or A**H, depending on TRANS, and EPS is the -*> machine precision. +*> machine epsilon. *> \endverbatim * * Arguments: diff --git a/TESTING/LIN/zgbt05.f b/TESTING/LIN/zgbt05.f index f74287f421..0dc6852118 100644 --- a/TESTING/LIN/zgbt05.f +++ b/TESTING/LIN/zgbt05.f @@ -30,7 +30,7 @@ *> ZGBT05 tests the error bounds from iterative refinement for the *> computed solution to a system of equations op(A)*X = B, where A is a *> general band matrix of order n with kl subdiagonals and ku -*> superdiagonals and op(A) = A or A**T, depending on TRANS. +*> superdiagonals and op(A) = A, A**T, or A**H, depending on TRANS. *> *> RESLTS(1) = test of the error bound *> = norm(X - XACT) / ( norm(X) * FERR ) @@ -50,7 +50,7 @@ *> \verbatim *> TRANS is CHARACTER*1 *> Specifies the form of the system of equations. -*> = 'N': A * X = B (No transpose) +*> = 'N': A * X = B (No transpose) *> = 'T': A**T * X = B (Transpose) *> = 'C': A**H * X = B (Conjugate transpose = Transpose) *> \endverbatim diff --git a/TESTING/LIN/zgtt02.f b/TESTING/LIN/zgtt02.f index ded2256064..72cc9ea712 100644 --- a/TESTING/LIN/zgtt02.f +++ b/TESTING/LIN/zgtt02.f @@ -40,7 +40,7 @@ *> \verbatim *> TRANS is CHARACTER *> Specifies the form of the residual. -*> = 'N': B - A * X (No transpose) +*> = 'N': B - A * X (No transpose) *> = 'T': B - A**T * X (Transpose) *> = 'C': B - A**H * X (Conjugate transpose) *> \endverbatim @@ -182,7 +182,7 @@ SUBROUTINE ZGTT02( TRANS, N, NRHS, DL, D, DU, X, LDX, B, LDB, RETURN END IF * -* Compute B - op(A)*X. +* Compute B - op(A)*X and store in B. * CALL ZLAGTM( TRANS, N, NRHS, -ONE, DL, D, DU, X, LDX, ONE, B, $ LDB ) diff --git a/TESTING/LIN/zlarhs.f b/TESTING/LIN/zlarhs.f index 92d746fc45..210a4a3c14 100644 --- a/TESTING/LIN/zlarhs.f +++ b/TESTING/LIN/zlarhs.f @@ -29,9 +29,8 @@ *> *> ZLARHS chooses a set of NRHS random solution vectors and sets *> up the right hand sides for the linear system -*> op( A ) * X = B, -*> where op( A ) may be A, A**T (transpose of A), or A**H (conjugate -*> transpose of A). +*> op(A) * X = B, +*> where op(A) = A, A**T, or A**H, depending on TRANS. *> \endverbatim * * Arguments: @@ -85,9 +84,9 @@ *> TRANS is CHARACTER*1 *> Used only if A is nonsymmetric; specifies the operation *> applied to the matrix A. -*> = 'N': B := A * X -*> = 'T': B := A**T * X -*> = 'C': B := A**H * X +*> = 'N': B := A * X (No transpose) +*> = 'T': B := A**T * X (Transpose) +*> = 'C': B := A**H * X (Conjugate transpose) *> \endverbatim *> *> \param[in] M @@ -313,7 +312,7 @@ SUBROUTINE ZLARHS( PATH, XTYPE, UPLO, TRANS, M, N, KL, KU, NRHS, 10 CONTINUE END IF * -* Multiply X by op( A ) using an appropriate +* Multiply X by op(A) using an appropriate * matrix multiply routine. * IF( LSAMEN( 2, C2, 'GE' ) .OR. LSAMEN( 2, C2, 'QR' ) .OR. diff --git a/TESTING/LIN/zpot01.f b/TESTING/LIN/zpot01.f index c08a27bf71..b083856211 100644 --- a/TESTING/LIN/zpot01.f +++ b/TESTING/LIN/zpot01.f @@ -67,10 +67,10 @@ *> \param[in,out] AFAC *> \verbatim *> AFAC is COMPLEX*16 array, dimension (LDAFAC,N) -*> On entry, the factor L or U from the L*L' or U'*U +*> On entry, the factor L or U from the L * L**H or U**H * U *> factorization of A. -*> Overwritten with the reconstructed matrix, and then with the -*> difference L*L' - A (or U'*U - A). +*> Overwritten with the reconstructed matrix, and then with +*> the difference L * L**H - A (or U**H * U - A). *> \endverbatim *> *> \param[in] LDAFAC @@ -87,8 +87,8 @@ *> \param[out] RESID *> \verbatim *> RESID is DOUBLE PRECISION -*> If UPLO = 'L', norm(L*L' - A) / ( N * norm(A) * EPS ) -*> If UPLO = 'U', norm(U'*U - A) / ( N * norm(A) * EPS ) +*> If UPLO = 'L', norm(L * L**H - A) / ( N * norm(A) * EPS ) +*> If UPLO = 'U', norm(U**H * U - A) / ( N * norm(A) * EPS ) *> \endverbatim * * Authors: @@ -169,7 +169,7 @@ SUBROUTINE ZPOT01( UPLO, N, A, LDA, AFAC, LDAFAC, RWORK, RESID ) END IF 10 CONTINUE * -* Compute the product U'*U, overwriting U. +* Compute the product U**H * U, overwriting U. * IF( LSAME( UPLO, 'U' ) ) THEN DO 20 K = N, 1, -1 @@ -186,7 +186,7 @@ SUBROUTINE ZPOT01( UPLO, N, A, LDA, AFAC, LDAFAC, RWORK, RESID ) * 20 CONTINUE * -* Compute the product L*L', overwriting L. +* Compute the product L * L**H, overwriting L. * ELSE DO 30 K = N, 1, -1 @@ -206,7 +206,7 @@ SUBROUTINE ZPOT01( UPLO, N, A, LDA, AFAC, LDAFAC, RWORK, RESID ) 30 CONTINUE END IF * -* Compute the difference L*L' - A (or U'*U - A). +* Compute the difference L * L**H - A (or U**H * U - A). * IF( LSAME( UPLO, 'U' ) ) THEN DO 50 J = 1, N @@ -224,7 +224,7 @@ SUBROUTINE ZPOT01( UPLO, N, A, LDA, AFAC, LDAFAC, RWORK, RESID ) 70 CONTINUE END IF * -* Compute norm( L*U - A ) / ( N * norm(A) * EPS ) +* Compute norm(L*U - A) / ( N * norm(A) * EPS ) * RESID = ZLANHE( '1', UPLO, N, AFAC, LDAFAC, RWORK ) * diff --git a/TESTING/LIN/zqrt17.f b/TESTING/LIN/zqrt17.f index 77dd77b417..060d46cb9a 100644 --- a/TESTING/LIN/zqrt17.f +++ b/TESTING/LIN/zqrt17.f @@ -28,12 +28,13 @@ *> *> ZQRT17 computes the ratio *> -*> || R'*op(A) ||/(||A||*alpha*max(M,N,NRHS)*eps) +*> norm(R**H * op(A)) / ( norm(A) * alpha * max(M,N,NRHS) * EPS ), *> -*> where R = op(A)*X - B, op(A) is A or A', and +*> where R = B - op(A)*X, op(A) is A or A**H, depending on TRANS, EPS +*> is the machine epsilon, and *> -*> alpha = ||B|| if IRESID = 1 (zero-residual problem) -*> alpha = ||R|| if IRESID = 2 (otherwise). +*> alpha = norm(B) if IRESID = 1 (zero-residual problem) +*> alpha = norm(R) if IRESID = 2 (otherwise). *> \endverbatim * * Arguments: @@ -44,7 +45,7 @@ *> TRANS is CHARACTER*1 *> Specifies whether or not the transpose of A is used. *> = 'N': No transpose, op(A) = A. -*> = 'C': Conjugate transpose, op(A) = A'. +*> = 'C': Conjugate transpose, op(A) = A**H. *> \endverbatim *> *> \param[in] IRESID @@ -225,7 +226,7 @@ DOUBLE PRECISION FUNCTION ZQRT17( TRANS, IRESID, M, N, NRHS, A, $ INFO ) END IF * -* compute R'*op(A) +* compute R**H * op(A) * CALL ZGEMM( 'Conjugate transpose', TRANS, NRHS, NCOLS, NROWS, $ DCMPLX( ONE ), C, LDB, A, LDA, DCMPLX( ZERO ), WORK, diff --git a/TESTING/LIN/ztbt02.f b/TESTING/LIN/ztbt02.f index fdfa35e6be..9943d94672 100644 --- a/TESTING/LIN/ztbt02.f +++ b/TESTING/LIN/ztbt02.f @@ -53,9 +53,9 @@ *> \verbatim *> TRANS is CHARACTER*1 *> Specifies the operation applied to A. -*> = 'N': A *x = b (No transpose) -*> = 'T': A**T *x = b (Transpose) -*> = 'C': A**H *x = b (Conjugate transpose) +*> = 'N': A * X = B (No transpose) +*> = 'T': A**T * X = B (Transpose) +*> = 'C': A**H * X = B (Conjugate transpose) *> \endverbatim *> *> \param[in] DIAG @@ -142,7 +142,7 @@ *> \verbatim *> RESID is DOUBLE PRECISION *> The maximum over the number of right hand sides of -*> norm(op(A)*x - b) / ( norm(op(A)) * norm(x) * EPS ). +*> norm(B - op(A)*X) / ( norm(op(A)) * norm(X) * EPS ). *> \endverbatim * * Authors: @@ -204,7 +204,7 @@ SUBROUTINE ZTBT02( UPLO, TRANS, DIAG, N, KD, NRHS, AB, LDAB, X, RETURN END IF * -* Compute the 1-norm of A or A'. +* Compute the 1-norm of op(A). * IF( LSAME( TRANS, 'N' ) ) THEN ANORM = ZLANTB( '1', UPLO, DIAG, N, KD, AB, LDAB, RWORK ) @@ -221,7 +221,7 @@ SUBROUTINE ZTBT02( UPLO, TRANS, DIAG, N, KD, NRHS, AB, LDAB, X, END IF * * Compute the maximum over the number of right hand sides of -* norm(op(A)*x - b) / ( norm(op(A)) * norm(x) * EPS ). +* norm(B - op(A)*X) / ( norm(op(A)) * norm(X) * EPS ). * RESID = ZERO DO 10 J = 1, NRHS