125 SUBROUTINE dgttrf( N, DL, D, DU, DU2, IPIV, INFO )
137 DOUBLE PRECISION D( * ), DL( * ), DU( * ), DU2( * )
143 DOUBLE PRECISION ZERO
144 parameter ( zero = 0.0d+0 )
148 DOUBLE PRECISION FACT, TEMP
161 CALL xerbla(
'DGTTRF', -info )
180 IF( abs( d( i ) ).GE.abs( dl( i ) ) )
THEN
184 IF( d( i ).NE.zero )
THEN
185 fact = dl( i ) / d( i )
187 d( i+1 ) = d( i+1 ) - fact*du( i )
193 fact = d( i ) / dl( i )
198 d( i+1 ) = temp - fact*d( i+1 )
200 du( i+1 ) = -fact*du( i+1 )
206 IF( abs( d( i ) ).GE.abs( dl( i ) ) )
THEN
207 IF( d( i ).NE.zero )
THEN
208 fact = dl( i ) / d( i )
210 d( i+1 ) = d( i+1 ) - fact*du( i )
213 fact = d( i ) / dl( i )
218 d( i+1 ) = temp - fact*d( i+1 )
226 IF( d( i ).EQ.zero )
THEN
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine dgttrf(N, DL, D, DU, DU2, IPIV, INFO)
DGTTRF