dptsvx man page on OpenIndiana

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

dptsvx(3P)		    Sun Performance Library		    dptsvx(3P)

NAME
       dptsvx  - use the factorization A = L*D*L**T to compute the solution to
       a real system of linear equations A*X = B, where A is an N-by-N symmet‐
       ric  positive  definite	tridiagonal  matrix  and X and B are N-by-NRHS
       matrices

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

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

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

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

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

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

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

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

   C INTERFACE
       #include <sunperf.h>

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

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

PURPOSE
       dptsvx uses the factorization A = L*D*L**T to compute the solution to a
       real system of linear equations A*X = B, where A is an N-by-N symmetric
       positive definite tridiagonal matrix and X and B are  N-by-NRHS	matri‐
       ces.

       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**T, where L
	  is a unit lower bidiagonal matrix and D is diagonal.	The
	  factorization can also be regarded as having the form
	  A = U**T*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 A has been sup‐
		 plied on entry.  = 'F':  On entry, DF and EF contain the fac‐
		 tored form of A.  D, E, DF, and EF will not be	 modified.   =
		 'N':  The matrix A will be copied to DF and EF and factored.

       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**T 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**T  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**T 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**T factorization of A.

       B (input) The N-by-NRHS right hand side matrix B.

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

       X (output)
		 If INFO = 0 of 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(2*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			    dptsvx(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