Contents
zgttrs - solve one of the systems of equations A * X = B,
A**T * X = B, or A**H * X = B,
SUBROUTINE ZGTTRS(TRANSA, N, NRHS, LOW, DIAG, UP1, UP2, IPIVOT, B,
LDB, INFO)
CHARACTER * 1 TRANSA
DOUBLE COMPLEX LOW(*), DIAG(*), UP1(*), UP2(*), B(LDB,*)
INTEGER N, NRHS, LDB, INFO
INTEGER IPIVOT(*)
SUBROUTINE ZGTTRS_64(TRANSA, N, NRHS, LOW, DIAG, UP1, UP2, IPIVOT, B,
LDB, INFO)
CHARACTER * 1 TRANSA
DOUBLE COMPLEX LOW(*), DIAG(*), UP1(*), UP2(*), B(LDB,*)
INTEGER*8 N, NRHS, LDB, INFO
INTEGER*8 IPIVOT(*)
F95 INTERFACE
SUBROUTINE GTTRS([TRANSA], [N], [NRHS], LOW, DIAG, UP1, UP2, IPIVOT,
B, [LDB], [INFO])
CHARACTER(LEN=1) :: TRANSA
COMPLEX(8), DIMENSION(:) :: LOW, DIAG, UP1, UP2
COMPLEX(8), DIMENSION(:,:) :: B
INTEGER :: N, NRHS, LDB, INFO
INTEGER, DIMENSION(:) :: IPIVOT
SUBROUTINE GTTRS_64([TRANSA], [N], [NRHS], LOW, DIAG, UP1, UP2,
IPIVOT, B, [LDB], [INFO])
CHARACTER(LEN=1) :: TRANSA
COMPLEX(8), DIMENSION(:) :: LOW, DIAG, UP1, UP2
COMPLEX(8), DIMENSION(:,:) :: B
INTEGER(8) :: N, NRHS, LDB, INFO
INTEGER(8), DIMENSION(:) :: IPIVOT
C INTERFACE
#include <sunperf.h>
void zgttrs(char transa, int n, int nrhs, doublecomplex
*low, doublecomplex *diag, doublecomplex *up1,
doublecomplex *up2, int *ipivot, doublecomplex *b,
int ldb, int *info);
void zgttrs_64(char transa, long n, long nrhs, doublecomplex
*low, doublecomplex *diag, doublecomplex *up1,
doublecomplex *up2, long *ipivot, doublecomplex
*b, long ldb, long *info);
zgttrs solves one of the systems of equations
A * X = B, A**T * X = B, or A**H * X = B, with a tri-
diagonal matrix A using the LU factorization computed by
CGTTRF.
TRANSA (input)
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)
TRANSA is defaulted to 'N' for F95 INTERFACE.
N (input) The order of the matrix A.
NRHS (input)
The number of right hand sides, i.e., the number
of columns of the matrix B. NRHS >= 0.
LOW (input)
The (n-1) multipliers that define the matrix L
from the LU factorization of A.
DIAG (input)
The n diagonal elements of the upper triangular
matrix U from the LU factorization of A.
UP1 (input)
The (n-1) elements of the first super-diagonal of
U.
UP2 (input)
The (n-2) elements of the second super-diagonal of
U.
IPIVOT (input)
The pivot indices; for 1 <= i <= n, row i of the
matrix was interchanged with row IPIVOT(i).
IPIVOT(i) will always be either i or i+1;
IPIVOT(i) = i indicates a row interchange was not
required.
B (input/output)
On entry, the matrix of right hand side vectors B.
On exit, B is overwritten by the solution vectors
X.
LDB (input)
The leading dimension of the array B. LDB >=
max(1,N).
INFO (output)
= 0: successful exit
< 0: if INFO = -k, the k-th argument had an ille-
gal value