Contents


NAME

     zsptrs - solve a system of linear equations A*X = B  with  a
     complex symmetric matrix A stored in packed format using the
     factorization A = U*D*U**T  or  A  =  L*D*L**T  computed  by
     ZSPTRF

SYNOPSIS

     SUBROUTINE ZSPTRS(UPLO, N, NRHS, AP, IPIVOT, B, LDB, INFO)

     CHARACTER * 1 UPLO
     DOUBLE COMPLEX AP(*), B(LDB,*)
     INTEGER N, NRHS, LDB, INFO
     INTEGER IPIVOT(*)

     SUBROUTINE ZSPTRS_64(UPLO, N, NRHS, AP, IPIVOT, B, LDB, INFO)

     CHARACTER * 1 UPLO
     DOUBLE COMPLEX AP(*), B(LDB,*)
     INTEGER*8 N, NRHS, LDB, INFO
     INTEGER*8 IPIVOT(*)

  F95 INTERFACE
     SUBROUTINE SPTRS(UPLO, [N], [NRHS], AP, IPIVOT, B, [LDB], [INFO])

     CHARACTER(LEN=1) :: UPLO
     COMPLEX(8), DIMENSION(:) :: AP
     COMPLEX(8), DIMENSION(:,:) :: B
     INTEGER :: N, NRHS, LDB, INFO
     INTEGER, DIMENSION(:) :: IPIVOT

     SUBROUTINE SPTRS_64(UPLO, [N], [NRHS], AP, IPIVOT, B, [LDB], [INFO])

     CHARACTER(LEN=1) :: UPLO
     COMPLEX(8), DIMENSION(:) :: AP
     COMPLEX(8), DIMENSION(:,:) :: B
     INTEGER(8) :: N, NRHS, LDB, INFO
     INTEGER(8), DIMENSION(:) :: IPIVOT

  C INTERFACE
     #include <sunperf.h>

     void zsptrs(char uplo, int n, int nrhs,  doublecomplex  *ap,
               int   *ipivot,  doublecomplex  *b,  int  ldb,  int
               *info);

     void zsptrs_64(char uplo, long n, long  nrhs,  doublecomplex
               *ap,  long  *ipivot,  doublecomplex  *b, long ldb,
               long *info);

PURPOSE

     zsptrs solves a system of linear equations A*X =  B  with  a
     complex symmetric matrix A stored in packed format using the
     factorization A = U*D*U**T  or  A  =  L*D*L**T  computed  by
     ZSPTRF.

ARGUMENTS

     UPLO (input)
               Specifies whether the details of the factorization
               are stored as an upper or lower triangular matrix.
               = 'U':  Upper triangular, form is A = U*D*U**T;
               = 'L':  Lower triangular, form is A = L*D*L**T.

     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.

     AP (input)
               Double complex array,  dimension  (N*(N+1)/2)  The
               block  diagonal  matrix D and the multipliers used
               to obtain the factor U or L as computed by ZSPTRF,
               stored as a packed triangular matrix.

     IPIVOT (input)
               Integer array, dimension (N) Details of the inter-
               changes and the block structure of D as determined
               by ZSPTRF.

     B (input/output)
               Double  complex  array,  dimension  (LDB,NRHS)  On
               entry, the right hand side matrix B.  On exit, the
               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