NAME

cgttrs - solve one of the systems of equations A * X = B, A**T * X = B, or A**H * X = B,


SYNOPSIS

  SUBROUTINE CGTTRS( TRANSA, N, NRHS, LOW, DIAG, UP1, UP2, IPIVOT, B, 
 *      LDB, INFO)
  CHARACTER * 1 TRANSA
  COMPLEX LOW(*), DIAG(*), UP1(*), UP2(*), B(LDB,*)
  INTEGER N, NRHS, LDB, INFO
  INTEGER IPIVOT(*)
  SUBROUTINE CGTTRS_64( TRANSA, N, NRHS, LOW, DIAG, UP1, UP2, IPIVOT, 
 *      B, LDB, INFO)
  CHARACTER * 1 TRANSA
  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, DIMENSION(:) :: LOW, DIAG, UP1, UP2
  COMPLEX, 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, DIMENSION(:) :: LOW, DIAG, UP1, UP2
  COMPLEX, DIMENSION(:,:) :: B
  INTEGER(8) :: N, NRHS, LDB, INFO
  INTEGER(8), DIMENSION(:) :: IPIVOT

C INTERFACE

#include <sunperf.h>

void cgttrs(char transa, int n, int nrhs, complex *low, complex *diag, complex *up1, complex *up2, int *ipivot, complex *b, int ldb, int *info);

void cgttrs_64(char transa, long n, long nrhs, complex *low, complex *diag, complex *up1, complex *up2, long *ipivot, complex *b, long ldb, long *info);


PURPOSE

cgttrs solves one of the systems of equations A * X = B, A**T * X = B, or A**H * X = B, with a tridiagonal matrix A using the LU factorization computed by CGTTRF.


ARGUMENTS