CGBSL(3F)

CGBSL - CGBSL solves the complex band system A * X = B or CTRANS(A) * X = B using the factors computed by CGBCO or CGBFA.

As shipped in IRIX 6.5.22. Unchanged since IRIX 6.5.

NAME
     CGBSL   - CGBSL solves the complex band system A * X = B  or  CTRANS(A) *
     X = B using the factors computed by CGBCO or CGBFA.


SYNOPSYS
      SUBROUTINE CGBSL(ABD,LDA,N,ML,MU,IPVT,B,JOB)

DESCRIPTION
     On Entry

     ABD COMPLEX(LDA, N)
        the output from CGBCo or CGBFA.

     LDA INTEGER
        the leading dimension of the array  ABD .

     N INTEGER
        the order of the original matrix.

     ML INTEGER
        number of diagonals below the main diagonal.

     MU INTEGER
        number of diagonals above the main diagonal.

     IPVT INTEGER(N)
        the pivot vector from CGBCO or CGBFA.

     B COMPLEX(N)
        the right hand side vector.

     JOB INTEGER
        = 0         to solve  A*X = B ,
        = nonzero   to solve  CTRANS(A)*X = B , where
        CTRANS(A)  is the conjugate transpose.  On Return

     B the solution vector  X . Error Condition

     A division by zero will occur if the input factor contains a zero on the
     diagonal.  Technically this indicates singularity but it is often caused
     by improper arguments or improper setting of LDA .  It will not occur if
     the subroutines are called correctly and if CGBCO has set RCOND .GT. 0.0
     or CGBFA has set INFO .EQ. 0 .  To compute  INVERSE(A) * C  where  C  is
     a matrix with  P  columns
        CALL CGBCO(ABD,LDA,N,ML,MU,IPVT,RCOND,Z)
        IF (RCOND is too small) GO TO ...
        DO 10 J = 1, P
        CALL CGBSL(ABD,LDA,N,ML,MU,IPVT,C(1,J),0) 10 CONTINUE LINPACK.  This
     version dated 08/14/78 .  Cleve Moler, University of New Mexico, Argonne
     National Lab.  Subroutines and Functions BLAS CAXPY,CDOTC Fortran
     CONJG,MIN0