134 SUBROUTINE sgtt01( N, DL, D, DU, DLF, DF, DUF, DU2, IPIV, WORK,
135 $ ldwork, rwork, resid )
148 REAL d( * ), df( * ), dl( * ), dlf( * ), du( * ),
149 $ du2( * ), duf( * ), rwork( * ),
157 parameter( one = 1.0e+0, zero = 0.0e+0 )
160 INTEGER i, ip,
j, lastj
193 work( i, i ) = df( i )
195 $ work( i, i+1 ) = duf( i )
197 $ work( i, i+2 ) = du2( i )
198 ELSE IF( i.EQ.n )
THEN
199 work( i, i ) = df( i )
201 work( i, i ) = df( i )
202 work( i, i+1 ) = duf( i )
204 $ work( i, i+2 ) = du2( i )
211 DO 40 i = n - 1, 1, -1
213 CALL
saxpy( lastj-i+1, li, work( i, i ), ldwork,
214 $ work( i+1, i ), ldwork )
217 lastj = min( i+2, n )
219 CALL
sswap( lastj-i+1, work( i, i ), ldwork, work( i+1, i ),
226 work( 1, 1 ) = work( 1, 1 ) - d( 1 )
228 work( 1, 2 ) = work( 1, 2 ) - du( 1 )
229 work( n, n-1 ) = work( n, n-1 ) - dl( n-1 )
230 work( n, n ) = work( n, n ) - d( n )
232 work( i, i-1 ) = work( i, i-1 ) - dl( i-1 )
233 work( i, i ) = work( i, i ) - d( i )
234 work( i, i+1 ) = work( i, i+1 ) - du( i )
240 anorm =
slangt(
'1', n, dl, d, du )
245 resid =
slanhs(
'1', n, work, ldwork, rwork )
249 IF( anorm.LE.zero )
THEN
253 resid = ( resid / anorm ) / eps
REAL function slangt(NORM, N, DL, D, DU)
SLANGT returns the value of the 1-norm, Frobenius norm, infinity-norm, or the largest absolute value ...
subroutine sswap(N, SX, INCX, SY, INCY)
SSWAP
REAL function slamch(CMACH)
SLAMCH
subroutine sgtt01(N, DL, D, DU, DLF, DF, DUF, DU2, IPIV, WORK, LDWORK, RWORK, RESID)
SGTT01
subroutine saxpy(N, SA, SX, INCX, SY, INCY)
SAXPY
set ue cd $ADTTMP cat<< EOF > tmp f Program LinearEquations Implicit none Real j
REAL function slanhs(NORM, N, A, LDA, WORK)
SLANHS returns the value of the 1-norm, Frobenius norm, infinity-norm, or the largest absolute value ...