zptsvx man page on OpenIndiana

Man page or keyword search:  
man Server   20441 pages
apropos Keyword Search (all sections)
Output format
OpenIndiana logo
[printable version]

zptsvx(3P)		    Sun Performance Library		    zptsvx(3P)

NAME
       zptsvx  - use the factorization A = L*D*L**H to compute the solution to
       a complex system of linear equations A*X = B, where A is an N-by-N Her‐
       mitian  positive	 definite tridiagonal matrix and X and B are N-by-NRHS
       matrices

SYNOPSIS
       SUBROUTINE ZPTSVX(FACT, N, NRHS, D, E, DF, EF, B, LDB, X,
	     LDX, RCOND, FERR, BERR, WORK, WORK2, INFO)

       CHARACTER * 1 FACT
       DOUBLE COMPLEX E(*), EF(*), B(LDB,*), X(LDX,*), WORK(*)
       INTEGER N, NRHS, LDB, LDX, INFO
       DOUBLE PRECISION RCOND
       DOUBLE PRECISION D(*), DF(*), FERR(*), BERR(*), WORK2(*)

       SUBROUTINE ZPTSVX_64(FACT, N, NRHS, D, E, DF, EF, B, LDB,
	     X, LDX, RCOND, FERR, BERR, WORK, WORK2, INFO)

       CHARACTER * 1 FACT
       DOUBLE COMPLEX E(*), EF(*), B(LDB,*), X(LDX,*), WORK(*)
       INTEGER*8 N, NRHS, LDB, LDX, INFO
       DOUBLE PRECISION RCOND
       DOUBLE PRECISION D(*), DF(*), FERR(*), BERR(*), WORK2(*)

   F95 INTERFACE
       SUBROUTINE PTSVX(FACT, [N], [NRHS], D, E, DF, EF, B, [LDB],
	      X, [LDX], RCOND, FERR, BERR, [WORK], [WORK2], [INFO])

       CHARACTER(LEN=1) :: FACT
       COMPLEX(8), DIMENSION(:) :: E, EF, WORK
       COMPLEX(8), DIMENSION(:,:) :: B, X
       INTEGER :: N, NRHS, LDB, LDX, INFO
       REAL(8) :: RCOND
       REAL(8), DIMENSION(:) :: D, DF, FERR, BERR, WORK2

       SUBROUTINE PTSVX_64(FACT, [N], [NRHS], D, E, DF, EF, B,
	      [LDB], X, [LDX], RCOND, FERR, BERR, [WORK], [WORK2], [INFO])

       CHARACTER(LEN=1) :: FACT
       COMPLEX(8), DIMENSION(:) :: E, EF, WORK
       COMPLEX(8), DIMENSION(:,:) :: B, X
       INTEGER(8) :: N, NRHS, LDB, LDX, INFO
       REAL(8) :: RCOND
       REAL(8), DIMENSION(:) :: D, DF, FERR, BERR, WORK2

   C INTERFACE
       #include <sunperf.h>

       void zptsvx(char fact, int n, int nrhs, double  *d,  doublecomplex  *e,
		 double	 *df,  doublecomplex  *ef,  doublecomplex *b, int ldb,
		 doublecomplex *x, int ldx, double *rcond, double *ferr,  dou‐
		 ble *berr, int *info);

       void  zptsvx_64(char  fact, long n, long nrhs, double *d, doublecomplex
		 *e, double *df, doublecomplex	*ef,  doublecomplex  *b,  long
		 ldb, doublecomplex *x, long ldx, double *rcond, double *ferr,
		 double *berr, long *info);

PURPOSE
       zptsvx uses the factorization A = L*D*L**H to compute the solution to a
       complex	system	of linear equations A*X = B, where A is an N-by-N Her‐
       mitian positive definite tridiagonal matrix and X and B	are  N-by-NRHS
       matrices.

       Error  bounds  on  the  solution and a condition estimate are also pro‐
       vided.

       The following steps are performed:

       1. If FACT = 'N', the matrix A is factored as A = L*D*L**H, where L
	  is a unit lower bidiagonal matrix and D is diagonal.	The
	  factorization can also be regarded as having the form
	  A = U**H*D*U.

       2. If the leading i-by-i principal minor is not positive definite,
	  then the routine returns with INFO = i. Otherwise, the factored
	  form of A is used to estimate the condition number of the matrix
	  A.  If the reciprocal of the condition number is less than machine
	  precision, INFO = N+1 is returned as a warning, but the routine
	  still goes on to solve for X and compute error bounds as
	  described below.

       3. The system of equations is solved for X using the factored form
	  of A.

       4. Iterative refinement is applied to improve the computed solution
	  matrix and calculate error bounds and backward error estimates
	  for it.

ARGUMENTS
       FACT (input)
		 Specifies whether or not the factored form of the matrix A is
		 supplied  on  entry.  = 'F':  On entry, DF and EF contain the
		 factored form of A.  D, E, DF, and EF will not	 be  modified.
		 =  'N':   The	matrix	A will be copied to DF and EF and fac‐
		 tored.

       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 matrices B and X.  NRHS >= 0.

       D (input) The n diagonal elements of the tridiagonal matrix A.

       E (input) The (n-1) subdiagonal elements of the tridiagonal matrix A.

       DF (input or output)
		 If FACT = 'F', then DF is an input argument and on entry con‐
		 tains the n diagonal elements of the diagonal matrix  D  from
		 the  L*D*L**H	factorization of A.  If FACT = 'N', then DF is
		 an output argument and on exit contains the n	diagonal  ele‐
		 ments	of  the diagonal matrix D from the L*D*L**H factoriza‐
		 tion of A.

       EF (input or output)
		 If FACT = 'F', then EF is an input argument and on entry con‐
		 tains	the  (n-1) subdiagonal elements of the unit bidiagonal
		 factor L from the L*D*L**H factorization of  A.   If  FACT  =
		 'N',  then  EF is an output argument and on exit contains the
		 (n-1) subdiagonal elements of the unit	 bidiagonal  factor  L
		 from the L*D*L**H factorization of A.

       B (input) On  entry, the N-by-NRHS right hand side matrix B.  Unchanged
		 on exit.

       LDB (input)
		 The leading dimension of the array B.	LDB >= max(1,N).

       X (output)
		 If INFO = 0 or INFO = N+1, the N-by-NRHS solution matrix X.

       LDX (input)
		 The leading dimension of the array X.	LDX >= max(1,N).

       RCOND (output)
		 The reciprocal condition number of the matrix A.  If RCOND is
		 less  than  the  machine precision (in particular, if RCOND =
		 0), the matrix is singular to working precision.  This condi‐
		 tion is indicated by a return code of INFO > 0.

       FERR (output)
		 The forward error bound for each solution vector X(j) (the j-
		 th column of the solution matrix X).  If XTRUE	 is  the  true
		 solution corresponding to X(j), FERR(j) is an estimated upper
		 bound for the magnitude of the largest	 element  in  (X(j)  -
		 XTRUE)	 divided  by  the  magnitude of the largest element in
		 X(j).

       BERR (output)
		 The componentwise relative backward error  of	each  solution
		 vector	 X(j)  (i.e., the smallest relative change in any ele‐
		 ment of A or B that makes X(j) an exact solution).

       WORK (workspace)
		 dimension(N)

       WORK2 (workspace)
		 dimension(N)

       INFO (output)
		 = 0:  successful exit
		 < 0:  if INFO = -i, the i-th argument had an illegal value
		 > 0:  if INFO = i, and i is
		 <= N:	the leading minor of order i of A is not positive def‐
		 inite,	 so  the factorization could not be completed, and the
		 solution has not been computed. RCOND =  0  is	 returned.   =
		 N+1:  U is nonsingular, but RCOND is less than machine preci‐
		 sion, meaning that the matrix is singular to  working	preci‐
		 sion.	 Nevertheless,	the solution and error bounds are com‐
		 puted because there are a number of situations where the com‐
		 puted	solution  can be more accurate than the value of RCOND
		 would suggest.

				  6 Mar 2009			    zptsvx(3P)
[top]

List of man pages available for OpenIndiana

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net