NAME

cpttrs - solve a tridiagonal system of the form A * X = B using the factorization A = U'*D*U or A = L*D*L' computed by CPTTRF


SYNOPSIS

  SUBROUTINE CPTTRS( UPLO, N, NRHS, DIAG, OFFD, B, LDB, INFO)
  CHARACTER * 1 UPLO
  COMPLEX OFFD(*), B(LDB,*)
  INTEGER N, NRHS, LDB, INFO
  REAL DIAG(*)
  SUBROUTINE CPTTRS_64( UPLO, N, NRHS, DIAG, OFFD, B, LDB, INFO)
  CHARACTER * 1 UPLO
  COMPLEX OFFD(*), B(LDB,*)
  INTEGER*8 N, NRHS, LDB, INFO
  REAL DIAG(*)

F95 INTERFACE

  SUBROUTINE PTTRS( UPLO, [N], [NRHS], DIAG, OFFD, B, [LDB], [INFO])
  CHARACTER(LEN=1) :: UPLO
  COMPLEX, DIMENSION(:) :: OFFD
  COMPLEX, DIMENSION(:,:) :: B
  INTEGER :: N, NRHS, LDB, INFO
  REAL, DIMENSION(:) :: DIAG
  SUBROUTINE PTTRS_64( UPLO, [N], [NRHS], DIAG, OFFD, B, [LDB], [INFO])
  CHARACTER(LEN=1) :: UPLO
  COMPLEX, DIMENSION(:) :: OFFD
  COMPLEX, DIMENSION(:,:) :: B
  INTEGER(8) :: N, NRHS, LDB, INFO
  REAL, DIMENSION(:) :: DIAG

C INTERFACE

#include <sunperf.h>

void cpttrs(char uplo, int n, int nrhs, float *diag, complex *offd, complex *b, int ldb, int *info);

void cpttrs_64(char uplo, long n, long nrhs, float *diag, complex *offd, complex *b, long ldb, long *info);


PURPOSE

cpttrs solves a tridiagonal system of the form A * X = B using the factorization A = U'*D*U or A = L*D*L' computed by CPTTRF. D is a diagonal matrix specified in the vector D, U (or L) is a unit bidiagonal matrix whose superdiagonal (subdiagonal) is specified in the vector E, and X and B are N by NRHS matrices.


ARGUMENTS