ZGBRFS - improve the computed solution to a system of lin­
       ear equations when the coefficient matrix is  banded,  and
       provides error bounds and backward error estimates for the
       solution


SYNOPSIS

       SUBROUTINE ZGBRFS( TRANS, N, KL, KU, NRHS, AB, LDAB,  AFB,
                          LDAFB,  IPIV,  B,  LDB,  X,  LDX, FERR,
                          BERR, WORK, RWORK, INFO )

           CHARACTER      TRANS

           INTEGER        INFO, KL, KU, LDAB, LDAFB, LDB, LDX, N,
                          NRHS

           INTEGER        IPIV( * )

           DOUBLE         PRECISION  BERR( * ), FERR( * ), RWORK(
                          * )

           COMPLEX*16     AB( LDAB, * ), AFB( LDAFB, * ), B( LDB,
                          * ), WORK( * ), X( LDX, * )


PURPOSE

       ZGBRFS  improves the computed solution to a system of lin­
       ear equations when the coefficient matrix is  banded,  and
       provides error bounds and backward error estimates for the
       solution.


ARGUMENTS

       TRANS   (input) CHARACTER*1
               Specifies the form of the system of equations:
               = 'N':  A * X = B     (No transpose)
               = 'T':  A**T * X = B  (Transpose)
               = 'C':  A**H * X = B  (Conjugate transpose)

       N       (input) INTEGER
               The order 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.

       NRHS    (input) INTEGER
               The number of right hand sides, i.e.,  the  number
               of columns of the matrices B and X.  NRHS >= 0.

       AB      (input) COMPLEX*16 array, dimension (LDAB,N)
               The  original  band  matrix A, stored in rows 1 to

               th  column  of the array AB as follows: AB(ku+1+i-
               j,j) = A(i,j) for max(1,j-ku)<=i<=min(n,j+kl).

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

       AFB     (input) COMPLEX*16 array, dimension (LDAFB,N)
               Details of the LU factorization of the band matrix
               A, as computed by ZGBTRF.  U is stored as an upper
               triangular  band  matrix with KL+KU superdiagonals
               in rows 1 to KL+KU+1,  and  the  multipliers  used
               during   the  factorization  are  stored  in  rows
               KL+KU+2 to 2*KL+KU+1.

       LDAFB   (input) INTEGER
               The leading dimension of the array AFB.  LDAFB  >=
               2*KL*KU+1.

       IPIV    (input) INTEGER array, dimension (N)
               The  pivot indices from ZGBTRF; for 1<=i<=N, row i
               of the matrix was interchanged with row IPIV(i).

       B       (input) COMPLEX*16 array, dimension (LDB,NRHS)
               The right hand side matrix B.

       LDB     (input) INTEGER
               The leading dimension of  the  array  B.   LDB  >=
               max(1,N).

       X       (input/output) COMPLEX*16 array, dimension
               (LDX,NRHS)
               On entry, the solution matrix X,  as  computed  by
               ZGBTRS.   On exit, the improved solution matrix X.

       LDX     (input) INTEGER
               The leading dimension of  the  array  X.   LDX  >=
               max(1,N).

       FERR    (output) DOUBLE PRECISION array, dimension (NRHS)
               The  estimated  forward error bound for each solu­
               tion vector X(j) (the j-th column of the  solution
               matrix  X).   If XTRUE is the true solution corre­
               sponding to X(j), FERR(j) is  an  estimated  upper
               bound  for the magnitude of the largest element in
               (X(j) - XTRUE) divided by  the  magnitude  of  the
               largest element in X(j).  The estimate is as reli­
               able as the estimate  for  RCOND,  and  is  almost
               always a slight overestimate of the true error.

       BERR    (output) DOUBLE PRECISION array, dimension (NRHS)
               The  componentwise relative backward error of each
               solution vector X(j) (i.e., the smallest  relative

               exact solution).

       WORK    (workspace) COMPLEX*16 array, dimension (2*N)

       RWORK   (workspace) DOUBLE PRECISION array, dimension (N)

       INFO    (output) INTEGER
               = 0:  successful exit
               < 0:  if INFO = -i, the i-th argument had an ille­
               gal value


PARAMETERS

       ITMAX  is the maximum number of steps of iterative refine­
       ment.


Man(1) output converted with man2html