136 SUBROUTINE spbt02( UPLO, N, KD, NRHS, A, LDA, X, LDX, B, LDB,
146 INTEGER kd, lda, ldb, ldx, n, nrhs
150 REAL a( lda, * ),
b( ldb, * ), rwork( * ),
158 parameter( zero = 0.0e+0, one = 1.0e+0 )
162 REAL anorm, bnorm, eps, xnorm
178 IF( n.LE.0 .OR. nrhs.LE.0 )
THEN
186 anorm =
slansb(
'1', uplo, n, kd, a, lda, rwork )
187 IF( anorm.LE.zero )
THEN
195 CALL
ssbmv( uplo, n, kd, -one, a, lda,
x( 1,
j ), 1, one,
204 bnorm =
sasum( n,
b( 1,
j ), 1 )
205 xnorm =
sasum( n,
x( 1,
j ), 1 )
206 IF( xnorm.LE.zero )
THEN
209 resid = max( resid, ( ( bnorm / anorm ) / xnorm ) / eps )
REAL function slamch(CMACH)
SLAMCH
REAL function slansb(NORM, UPLO, N, K, AB, LDAB, WORK)
SLANSB returns the value of the 1-norm, or the Frobenius norm, or the infinity norm, or the element of largest absolute value of a symmetric band matrix.
set ue cd $ADTTMP cat<< EOF > tmp f Program LinearEquations Implicit none Real b(3) integer i
subroutine ssbmv(UPLO, N, K, ALPHA, A, LDA, X, INCX, BETA, Y, INCY)
SSBMV
subroutine spbt02(UPLO, N, KD, NRHS, A, LDA, X, LDX, B, LDB, RWORK, RESID)
SPBT02
set ue cd $ADTTMP cat<< EOF > tmp f Program LinearEquations Implicit none Real j
REAL function sasum(N, SX, INCX)
SASUM