Contents
zgtsv - solve the equation A*X = B,
SUBROUTINE ZGTSV(N, NRHS, LOW, DIAG, UP, B, LDB, INFO)
DOUBLE COMPLEX LOW(*), DIAG(*), UP(*), B(LDB,*)
INTEGER N, NRHS, LDB, INFO
SUBROUTINE ZGTSV_64(N, NRHS, LOW, DIAG, UP, B, LDB, INFO)
DOUBLE COMPLEX LOW(*), DIAG(*), UP(*), B(LDB,*)
INTEGER*8 N, NRHS, LDB, INFO
F95 INTERFACE
SUBROUTINE GTSV([N], [NRHS], LOW, DIAG, UP, B, [LDB], [INFO])
COMPLEX(8), DIMENSION(:) :: LOW, DIAG, UP
COMPLEX(8), DIMENSION(:,:) :: B
INTEGER :: N, NRHS, LDB, INFO
SUBROUTINE GTSV_64([N], [NRHS], LOW, DIAG, UP, B, [LDB], [INFO])
COMPLEX(8), DIMENSION(:) :: LOW, DIAG, UP
COMPLEX(8), DIMENSION(:,:) :: B
INTEGER(8) :: N, NRHS, LDB, INFO
C INTERFACE
#include <sunperf.h>
void zgtsv(int n, int nrhs, doublecomplex *low, doublecom-
plex *diag, doublecomplex *up, doublecomplex *b,
int ldb, int *info);
void zgtsv_64(long n, long nrhs, doublecomplex *low, doub-
lecomplex *diag, doublecomplex *up, doublecomplex
*b, long ldb, long *info);
zgtsv solves the equation
where A is an N-by-N tridiagonal matrix, by Gaussian elimi-
nation with partial pivoting.
Note that the equation A'*X = B may be solved by inter-
changing the order of the arguments DU and DL.
N (input) The order of the matrix A. N >= 0.
NRHS (input)
The number of right hand sides, i.e., the number
of columns of the matrix B. NRHS >= 0.
LOW (input/output)
On entry, LOW must contain the (n-1) subdiagonal
elements of A. On exit, LOW is overwritten by the
(n-2) elements of the second superdiagonal of the
upper triangular matrix U from the LU factoriza-
tion of A, in LOW(1), ..., LOW(n-2).
DIAG (input/output)
On entry, DIAG must contain the diagonal elements
of A. On exit, DIAG is overwritten by the n diag-
onal elements of U.
UP (input/output)
On entry, UP must contain the (n-1) superdiagonal
elements of A. On exit, UP is overwritten by the
(n-1) elements of the first superdiagonal of U.
B (input/output)
On entry, the N-by-NRHS right hand side matrix B.
On exit, if INFO = 0, the N-by-NRHS solution
matrix X.
LDB (input)
The leading dimension of the array B. LDB >=
max(1,N).
INFO (output)
= 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.