CGBTRS(3f)

NAME
CGBTRS - a system of linear equations A * X = B, A**T * X = B, or A**H * X = B with a general band matrix A using the LU factorization computed by CGBTRF

SYNOPSIS

SUBROUTINE CGBTRS(
    TRANS, N, KL, KU, NRHS, AB, LDAB, IPIV, B, LDB, INFO )

CHARACTER
    TRANS

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

INTEGER
    IPIV( * )

COMPLEX
    AB( LDAB, * ), B( LDB, * )

PURPOSE
CGBTRS solves a system of linear equations
   A * X = B, A**T * X = B, or A**H * X = B with a general band matrix A using the LU factorization computed by CGBTRF.

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 matrix B. NRHS >= 0.

AB      (input) COMPLEX array, dimension (LDAB,N)
    Details of the LU factorization of the band matrix A, as computed by CGBTRF. 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.

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

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

B       (input/output) COMPLEX array, dimension (LDB,NRHS)
    On entry, the right hand side matrix B. On exit, the solution matrix X.

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

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