zgbtrf(3S)

ZGBTRF - compute an LU factorization of a complex m-by-n band matrix A using partial pivoting with row interchanges

As shipped in IRIX 6.5.30. Added in IRIX 6.5.15.

NAME
     ZGBTRF - compute an LU factorization of a complex m-by-n band matrix A
     using partial pivoting with row interchanges

SYNOPSIS
     SUBROUTINE ZGBTRF( M, N, KL, KU, AB, LDAB, IPIV, INFO )

         INTEGER        INFO, KL, KU, LDAB, M, N

         INTEGER        IPIV( * )

         COMPLEX*16     AB( LDAB, * )

IMPLEMENTATION
     These routines are part of the SCSL Scientific Library and can be loaded
     using either the -lscs or the -lscs_mp option.  The -lscs_mp option
     directs the linker to use the multi-processor version of the library.

     When linking to SCSL with -lscs or -lscs_mp, the default integer size is
     4 bytes (32 bits). Another version of SCSL is available in which integers
     are 8 bytes (64 bits).  This version allows the user access to larger
     memory sizes and helps when porting legacy Cray codes.  It can be loaded
     by using the -lscs_i8 option or the -lscs_i8_mp option. A program may use
     only one of the two versions; 4-byte integer and 8-byte integer library
     calls cannot be mixed.

PURPOSE
     ZGBTRF computes an LU factorization of a complex m-by-n band matrix A
     using partial pivoting with row interchanges. This is the blocked version
     of the algorithm, calling Level 3 BLAS.


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*16 array, dimension (LDAB,N)
             On entry, the matrix A in band storage, in rows KL+1 to
             2*KL+KU+1; rows 1 to KL of the array need not be set.  The j-th
             column of A is stored in the j-th column of the array AB as
             follows:  AB(kl+ku+1+i-j,j) = A(i,j) for max(1,j-
             ku)<=i<=min(m,j+kl)
             On exit, details of the factorization: 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.  See below for further
             details.

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

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

     INFO    (output) INTEGER
             = 0: successful exit
             < 0: if INFO = -i, the i-th argument had an illegal value
             > 0: if INFO = +i, U(i,i) is exactly zero. The factorization has
             been completed, but the factor U is exactly singular, and
             division by zero will occur if it is used to solve a system of
             equations.

FURTHER DETAILS
     The band storage scheme is illustrated by the following example, when M =
     N = 6, KL = 2, KU = 1:

     On entry:                       On exit:

         *    *    *    +    +    +       *    *    *   u14  u25  u36
         *    *    +    +    +    +       *    *   u13  u24  u35  u46
         *   a12  a23  a34  a45  a56      *   u12  u23  u34  u45  u56
        a11  a22  a33  a44  a55  a66     u11  u22  u33  u44  u55  u66
        a21  a32  a43  a54  a65   *      m21  m32  m43  m54  m65   *
        a31  a42  a53  a64   *    *      m31  m42  m53  m64   *    *

     Array elements marked * are not used by the routine; elements marked +
     need not be set on entry, but are required by the routine to store
     elements of U because of fill-in resulting from the row interchanges.


SEE ALSO
     INTRO_LAPACK(3S), INTRO_SCSL(3S)

     This man page is available only online.