Contents


NAME

     cptsv - compute the solution to a complex system  of  linear
     equations  A*X  = B, where A is an N-by-N Hermitian positive
     definite tridiagonal matrix,  and  X  and  B  are  N-by-NRHS
     matrices.

SYNOPSIS

     SUBROUTINE CPTSV(N, NRHS, D, E, B, LDB, INFO)

     COMPLEX E(*), B(LDB,*)
     INTEGER N, NRHS, LDB, INFO
     REAL D(*)

     SUBROUTINE CPTSV_64(N, NRHS, D, E, B, LDB, INFO)

     COMPLEX E(*), B(LDB,*)
     INTEGER*8 N, NRHS, LDB, INFO
     REAL D(*)

  F95 INTERFACE
     SUBROUTINE PTSV([N], [NRHS], D, E, B, [LDB], [INFO])

     COMPLEX, DIMENSION(:) :: E
     COMPLEX, DIMENSION(:,:) :: B
     INTEGER :: N, NRHS, LDB, INFO
     REAL, DIMENSION(:) :: D

     SUBROUTINE PTSV_64([N], [NRHS], D, E, B, [LDB], [INFO])

     COMPLEX, DIMENSION(:) :: E
     COMPLEX, DIMENSION(:,:) :: B
     INTEGER(8) :: N, NRHS, LDB, INFO
     REAL, DIMENSION(:) :: D

  C INTERFACE
     #include <sunperf.h>

     void cptsv(int n, int nrhs, float *d,  complex  *e,  complex
               *b, int ldb, int *info);

     void cptsv_64(long n, long nrhs, float *d, complex *e,  com-
               plex *b, long ldb, long *info);

PURPOSE

     cptsv computes the solution to a complex  system  of  linear
     equations  A*X  = B, where A is an N-by-N Hermitian positive
     definite tridiagonal matrix,  and  X  and  B  are  N-by-NRHS
     matrices.

     A is factored as A = L*D*L**H, and the factored form of A is
     then used to solve the system of equations.

ARGUMENTS

     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.

     D (input/output)
               On entry, the n diagonal elements of the tridiago-
               nal matrix A.  On exit, the n diagonal elements of
               the diagonal matrix D from the factorization  A  =
               L*D*L**H.

     E (input/output)
               On entry, the (n-1) subdiagonal  elements  of  the
               tridiagonal matrix A.  On exit, the (n-1) subdiag-
               onal elements of the unit bidiagonal factor L from
               the  L*D*L**H  factorization  of A.  E can also be
               regarded as the superdiagonal of the unit bidiago-
               nal factor U from the U**H*D*U factorization of A.

     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, the leading minor of order i is
               not  positive  definite,  and the solution has not
               been computed.  The  factorization  has  not  been
               completed unless i = N.