138 SUBROUTINE zlaqsb( UPLO, N, KD, AB, LDAB, S, SCOND, AMAX,
146 CHARACTER EQUED, UPLO
148 DOUBLE PRECISION AMAX, SCOND
151 DOUBLE PRECISION S( * )
152 COMPLEX*16 AB( LDAB, * )
158 DOUBLE PRECISION ONE, THRESH
159 parameter( one = 1.0d+0, thresh = 0.1d+0 )
163 DOUBLE PRECISION CJ, LARGE, SMALL
167 DOUBLE PRECISION DLAMCH
168 EXTERNAL lsame, dlamch
184 small = dlamch(
'Safe minimum' ) / dlamch(
'Precision' )
187 IF( scond.GE.thresh .AND. amax.GE.small .AND. amax.LE.large )
THEN
196 IF( lsame( uplo,
'U' ) )
THEN
202 DO 10 i = max( 1, j-kd ), j
203 ab( kd+1+i-j, j ) = cj*s( i )*ab( kd+1+i-j, j )
212 DO 30 i = j, min( n, j+kd )
213 ab( 1+i-j, j ) = cj*s( i )*ab( 1+i-j, j )
subroutine zlaqsb(uplo, n, kd, ab, ldab, s, scond, amax, equed)
ZLAQSB scales a symmetric/Hermitian band matrix, using scaling factors computed by spbequ.