Go to main content
Oracle Developer Studio 12.5 Man Pages

Exit Print View

Updated: June 2017
 
 

zsttrs (3p)

Name

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

Synopsis

SUBROUTINE ZSTTRS(N, NRHS, L, D, SUBL, B, LDB, IPIV, INFO)

DOUBLE COMPLEX L(*), D(*), SUBL(*), B(LDB,*)
INTEGER N, NRHS, LDB, INFO
INTEGER IPIV(*)

SUBROUTINE ZSTTRS_64(N, NRHS, L, D, SUBL, B, LDB, IPIV, INFO)

DOUBLE COMPLEX L(*), D(*), SUBL(*), B(LDB,*)
INTEGER*8 N, NRHS, LDB, INFO
INTEGER*8 IPIV(*)




F95 INTERFACE
SUBROUTINE STTRS(N, NRHS, L, D, SUBL, B, LDB, IPIV, INFO)

COMPLEX(8), DIMENSION(:) :: L, D, SUBL
COMPLEX(8), DIMENSION(:,:) :: B
INTEGER :: N, NRHS, LDB, INFO
INTEGER, DIMENSION(:) :: IPIV

SUBROUTINE STTRS_64(N, NRHS, L, D, SUBL, B, LDB, IPIV, INFO)

COMPLEX(8), DIMENSION(:) :: L, D, SUBL
COMPLEX(8), DIMENSION(:,:) :: B
INTEGER(8) :: N, NRHS, LDB, INFO
INTEGER(8), DIMENSION(:) :: IPIV




C INTERFACE
#include <sunperf.h>

void  zsttrs(int  n, int nrhs, doublecomplex *l, doublecomplex *d, dou-
blecomplex *subl, doublecomplex *b, int ldb, int  *ipiv,  int
*info);

void  zsttrs_64(long  n, long nrhs, doublecomplex *l, doublecomplex *d,
doublecomplex *subl, doublecomplex *b, long ldb, long  *ipiv,
long *info);

Description

Oracle Solaris Studio Performance Library                           zsttrs(3P)



NAME
       zsttrs  -  compute the solution to a complex system of linear equations
       A*X = B, where A is an N-by-N symmetric tridiagonal matrix and X and  B
       are N-by-NRHS matrices


SYNOPSIS
       SUBROUTINE ZSTTRS(N, NRHS, L, D, SUBL, B, LDB, IPIV, INFO)

       DOUBLE COMPLEX L(*), D(*), SUBL(*), B(LDB,*)
       INTEGER N, NRHS, LDB, INFO
       INTEGER IPIV(*)

       SUBROUTINE ZSTTRS_64(N, NRHS, L, D, SUBL, B, LDB, IPIV, INFO)

       DOUBLE COMPLEX L(*), D(*), SUBL(*), B(LDB,*)
       INTEGER*8 N, NRHS, LDB, INFO
       INTEGER*8 IPIV(*)




   F95 INTERFACE
       SUBROUTINE STTRS(N, NRHS, L, D, SUBL, B, LDB, IPIV, INFO)

       COMPLEX(8), DIMENSION(:) :: L, D, SUBL
       COMPLEX(8), DIMENSION(:,:) :: B
       INTEGER :: N, NRHS, LDB, INFO
       INTEGER, DIMENSION(:) :: IPIV

       SUBROUTINE STTRS_64(N, NRHS, L, D, SUBL, B, LDB, IPIV, INFO)

       COMPLEX(8), DIMENSION(:) :: L, D, SUBL
       COMPLEX(8), DIMENSION(:,:) :: B
       INTEGER(8) :: N, NRHS, LDB, INFO
       INTEGER(8), DIMENSION(:) :: IPIV




   C INTERFACE
       #include <sunperf.h>

       void  zsttrs(int  n, int nrhs, doublecomplex *l, doublecomplex *d, dou-
                 blecomplex *subl, doublecomplex *b, int ldb, int  *ipiv,  int
                 *info);

       void  zsttrs_64(long  n, long nrhs, doublecomplex *l, doublecomplex *d,
                 doublecomplex *subl, doublecomplex *b, long ldb, long  *ipiv,
                 long *info);



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


ARGUMENTS
       N (input)
                  INTEGER
                 The order of the matrix A.  N >= 0.


       NRHS (input)
                  INTEGER
                 The  number  of right hand sides, i.e., the number of columns
                 of the matrix B. NRHS >= 0.


       L (input)
                  COMPLEX array, dimension (N-1)
                 On entry, the subdiagonal elements of L.


       D (input)
                  COMPLEX array, dimension (N)
                 On entry, the diagonal elements of D.


       SUBL (input)
                  COMPLEX array, dimension (N-2)
                 On entry, the second subdiagonal elements of L.


       B (input/output)
                  COMPLEX array, dimension (LDB, NRHS)
                 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)
                  INTEGER
                 The leading dimension of the array B.  LDB >= max(1, N)


       IPIV (input)
                 INTEGER array, dimension (N)
                 Details of the interchanges and block pivot. IPIV is provided
                 by ZSTTRF. If IPIV(K) > 0, 1 by 1 pivot, and if IPIV(K) = K +
                 1  an  interchange  done;   If  IPIV(K) < 0, 2 by 2 pivot, no
                 interchange required.


       INFO (output)
                  INTEGER
                 = 0:  successful exit
                 < 0:  if INFO = -k, the k-th argument had an illegal value




                                  7 Nov 2015                        zsttrs(3P)