137 SUBROUTINE dlaqsb( UPLO, N, KD, AB, LDAB, S, SCOND, AMAX,
145 CHARACTER EQUED, UPLO
147 DOUBLE PRECISION AMAX, SCOND
150 DOUBLE PRECISION AB( LDAB, * ), S( * )
156 DOUBLE PRECISION ONE, THRESH
157 parameter( one = 1.0d+0, thresh = 0.1d+0 )
161 DOUBLE PRECISION CJ, LARGE, SMALL
165 DOUBLE PRECISION DLAMCH
166 EXTERNAL lsame, dlamch
182 small = dlamch(
'Safe minimum' ) / dlamch(
'Precision' )
185 IF( scond.GE.thresh .AND. amax.GE.small .AND. amax.LE.large )
THEN
194 IF( lsame( uplo,
'U' ) )
THEN
200 DO 10 i = max( 1, j-kd ), j
201 ab( kd+1+i-j, j ) = cj*s( i )*ab( kd+1+i-j, j )
210 DO 30 i = j, min( n, j+kd )
211 ab( 1+i-j, j ) = cj*s( i )*ab( 1+i-j, j )
subroutine dlaqsb(uplo, n, kd, ab, ldab, s, scond, amax, equed)
DLAQSB scales a symmetric/Hermitian band matrix, using scaling factors computed by spbequ.