CLAQGB  -  equilibrate a general M by N band matrix A with
       KL subdiagonals and KU superdiagonals using  the  row  and
       scaling factors in the vectors R and C


SYNOPSIS

       SUBROUTINE CLAQGB( M,  N,  KL, KU, AB, LDAB, R, C, ROWCND,
                          COLCND, AMAX, EQUED )

           CHARACTER      EQUED

           INTEGER        KL, KU, LDAB, M, N

           REAL           AMAX, COLCND, ROWCND

           REAL           C( * ), R( * )

           COMPLEX        AB( LDAB, * )


PURPOSE

       CLAQGB equilibrates a general M by N band matrix A with KL
       subdiagonals and KU superdiagonals using the row and scal­
       ing factors in the vectors R and C.


ARGUMENTS

       M       (input) INTEGER
               The number of rows of the matrix A.  M >= 0.

       N       (input) INTEGER
               The number of columns of the matrix A.  N >= 0.

       KL      (input) INTEGER
               The number of subdiagonals within the band  of  A.
               KL >= 0.

       KU      (input) INTEGER
               The number of superdiagonals within the band of A.
               KU >= 0.

       AB      (input/output) COMPLEX array, dimension (LDAB,N)
               On entry, the matrix A in band storage, in rows  1
               to KL+KU+1.  The j-th column of A is stored in the
               j-th column of the array AB as follows: AB(ku+1+i-
               j,j) = A(i,j) for max(1,j-ku)<=i<=min(m,j+kl)

               On  exit,  the  equilibrated  matrix,  in the same
               storage format as A.  See EQUED for  the  form  of
               the equilibrated matrix.

       LDAB    (input) INTEGER
               The  leading  dimension  of  the array AB.  LDA >=
               KL+KU+1.

               The row scale factors for A.

       C       (output) REAL array, dimension (N)
               The column scale factors for A.

       ROWCND  (output) REAL
               Ratio of the smallest R(i) to the largest R(i).

       COLCND  (output) REAL
               Ratio of the smallest C(i) to the largest C(i).

       AMAX    (input) REAL
               Absolute value of largest matrix entry.

       EQUED   (output) CHARACTER*1
               Specifies the form of equilibration that was done.
               = 'N':  No equilibration
               =  'R':   Row equilibration, i.e., A has been pre­
               multiplied by diag(R).  = 'C':  Column  equilibra­
               tion,  i.e., A has been postmultiplied by diag(C).
               = 'B':  Both row and column equilibration, i.e., A
               has been replaced by diag(R) * A * diag(C).


PARAMETERS

       THRESH  is a threshold value used to decide if row or col­
       umn scaling should be done based on the ratio of  the  row
       or  column scaling factors.  If ROWCND < THRESH, row scal­
       ing is done, and if COLCND <  THRESH,  column  scaling  is
       done.

       LARGE and SMALL are threshold values used to decide if row
       scaling should be done based on the absolute size  of  the
       largest  matrix element.  If AMAX > LARGE or AMAX < SMALL,
       row scaling is done.


Man(1) output converted with man2html