DGTSV - solve the equation  A*X = B,


SYNOPSIS

       SUBROUTINE DGTSV( N, NRHS, DL, D, DU, B, LDB, INFO )

           INTEGER       INFO, LDB, N, NRHS

           DOUBLE        PRECISION  B( LDB, * ), D( * ), DL( * ),
                         DU( * )


PURPOSE

       DGTSV solves the equation A*X = B, where A is an  n  by  n
       tridiagonal  matrix,  by Gaussian elimination with partial
       pivoting.

       Note that the equation  A'*X = B  may be solved by  inter­
       changing the order of the arguments DU and DL.


ARGUMENTS

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

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

       DL      (input/output) DOUBLE PRECISION array, dimension
               (N-1)
               On  entry,  DL must contain the (n-1) sub-diagonal
               elements of A.

               On exit, DL is overwritten by the  (n-2)  elements
               of the second super-diagonal of the upper triangu­
               lar matrix U from the LU factorization  of  A,  in
               DL(1), ..., DL(n-2).

       D       (input/output) DOUBLE PRECISION array, dimension
               (N)
               On entry, D must contain the diagonal elements  of
               A.

               On  exit,  D is overwritten by the n diagonal ele­
               ments of U.

       DU      (input/output) DOUBLE PRECISION array, dimension
               (N-1)
               On entry, DU must contain the (n-1) super-diagonal
               elements of A.

               On exit, DU is overwritten by the  (n-1)  elements
               of the first super-diagonal of U.

               dimension (LDB,NRHS)
               On  entry, the N by NRHS matrix of right hand side
               matrix B.  On exit, if INFO = 0,  the  N  by  NRHS
               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  ille­
               gal value
               >  0: if INFO = i, U(i,i) is exactly zero, and the
               solution has not been computed.  The factorization
               has not been completed unless i = N.


Man(1) output converted with man2html