146 SUBROUTINE ssgt01( ITYPE, UPLO, N, M, A, LDA, B, LDB, Z, LDZ, D,
156 INTEGER itype, lda, ldb, ldz, m, n
159 REAL a( lda, * ),
b( ldb, * ), d( * ), result( * ),
160 $ work( * ), z( ldz, * )
167 parameter( zero = 0.0e0, one = 1.0e0 )
190 anorm =
slansy(
'1', uplo, n, a, lda, work )*
191 $
slange(
'1', n, m, z, ldz, work )
195 IF( itype.EQ.1 )
THEN
199 CALL
ssymm(
'Left', uplo, n, m, one, a, lda, z, ldz, zero,
202 CALL
sscal( n, d( i ), z( 1, i ), 1 )
204 CALL
ssymm(
'Left', uplo, n, m, one,
b, ldb, z, ldz, -one,
207 result( 1 ) = (
slange(
'1', n, m, work, n, work ) / anorm ) /
210 ELSE IF( itype.EQ.2 )
THEN
214 CALL
ssymm(
'Left', uplo, n, m, one,
b, ldb, z, ldz, zero,
217 CALL
sscal( n, d( i ), z( 1, i ), 1 )
219 CALL
ssymm(
'Left', uplo, n, m, one, a, lda, work, n, -one, z,
222 result( 1 ) = (
slange(
'1', n, m, z, ldz, work ) / anorm ) /
225 ELSE IF( itype.EQ.3 )
THEN
229 CALL
ssymm(
'Left', uplo, n, m, one, a, lda, z, ldz, zero,
232 CALL
sscal( n, d( i ), z( 1, i ), 1 )
234 CALL
ssymm(
'Left', uplo, n, m, one,
b, ldb, work, n, -one, z,
237 result( 1 ) = (
slange(
'1', n, m, z, ldz, work ) / anorm ) /
REAL function slansy(NORM, UPLO, N, A, LDA, WORK)
SLANSY returns the value of the 1-norm, or the Frobenius norm, or the infinity norm, or the element of largest absolute value of a real symmetric matrix.
subroutine ssymm(SIDE, UPLO, M, N, ALPHA, A, LDA, B, LDB, BETA, C, LDC)
SSYMM
REAL function slamch(CMACH)
SLAMCH
subroutine ssgt01(ITYPE, UPLO, N, M, A, LDA, B, LDB, Z, LDZ, D, WORK, RESULT)
SSGT01
set ue cd $ADTTMP cat<< EOF > tmp f Program LinearEquations Implicit none Real b(3) integer i
REAL function slange(NORM, M, N, A, LDA, WORK)
SLANGE returns the value of the 1-norm, Frobenius norm, infinity-norm, or the largest absolute value ...
subroutine sscal(N, SA, SX, INCX)
SSCAL