158 SUBROUTINE zlaqgb( M, N, KL, KU, AB, LDAB, R, C, ROWCND, COLCND,
167 INTEGER KL, KU, LDAB, M, N
168 DOUBLE PRECISION AMAX, COLCND, ROWCND
171 DOUBLE PRECISION C( * ), R( * )
172 COMPLEX*16 AB( LDAB, * )
178 DOUBLE PRECISION ONE, THRESH
179 parameter( one = 1.0d+0, thresh = 0.1d+0 )
183 DOUBLE PRECISION CJ, LARGE, SMALL
186 DOUBLE PRECISION DLAMCH
196 IF( m.LE.0 .OR. n.LE.0 )
THEN
203 small = dlamch(
'Safe minimum' ) / dlamch(
'Precision' )
206 IF( rowcnd.GE.thresh .AND. amax.GE.small .AND. amax.LE.large )
211 IF( colcnd.GE.thresh )
THEN
222 DO 10 i = max( 1, j-ku ), min( m, j+kl )
223 ab( ku+1+i-j, j ) = cj*ab( ku+1+i-j, j )
228 ELSE IF( colcnd.GE.thresh )
THEN
233 DO 30 i = max( 1, j-ku ), min( m, j+kl )
234 ab( ku+1+i-j, j ) = r( i )*ab( ku+1+i-j, j )
244 DO 50 i = max( 1, j-ku ), min( m, j+kl )
245 ab( ku+1+i-j, j ) = cj*r( i )*ab( ku+1+i-j, j )
subroutine zlaqgb(m, n, kl, ku, ab, ldab, r, c, rowcnd, colcnd, amax, equed)
ZLAQGB scales a general band matrix, using row and column scaling factors computed by sgbequ.