| 
DTPTRI(3F)							    DTPTRI(3F)
      DTPTRI - compute the inverse of a real upper or lower triangular matrix A
     stored in packed format
     SUBROUTINE	DTPTRI(	UPLO, DIAG, N, AP, INFO	)
	 CHARACTER	DIAG, UPLO
	 INTEGER	INFO, N
	 DOUBLE		PRECISION AP( *	)
      DTPTRI computes the inverse of a real upper or lower triangular matrix A
     stored in packed format.
     UPLO    (input) CHARACTER*1
	     = 'U':  A is upper	triangular;
	     = 'L':  A is lower	triangular.
     DIAG    (input) CHARACTER*1
	     = 'N':  A is non-unit triangular;
	     = 'U':  A is unit triangular.
     N	     (input) INTEGER
	     The order of the matrix A.	 N >= 0.
     AP	     (input/output) DOUBLE PRECISION array, dimension (N*(N+1)/2)
	     On	entry, the upper or lower triangular matrix A, stored
	     columnwise	in a linear array.  The	j-th column of A is stored in
	     the array AP as follows:  if UPLO = 'U', AP(i + (j-1)*j/2)	=
	     A(i,j) for	1<=i<=j; if UPLO = 'L',	AP(i + (j-1)*((2*n-j)/2) =
	     A(i,j) for	j<=i<=n.  See below for	further	details.  On exit, the
	     (triangular) inverse of the original matrix, in the same packed
	     storage format.
     INFO    (output) INTEGER
	     = 0:  successful exit
	     < 0:  if INFO = -i, the i-th argument had an illegal value
	     > 0:  if INFO = i,	A(i,i) is exactly zero.	 The triangular	matrix
	     is	singular and its inverse can not be computed.
FURTHER	DETAILS
     A triangular matrix A can be transferred to packed	storage	using one of
     the following program segments:
     UPLO = 'U':		      UPLO = 'L':
	   JC =	1			    JC = 1
									Page 1
DTPTRI(3F)							    DTPTRI(3F)
	   DO 2	J = 1, N		    DO 2 J = 1,	N
	      DO 1 I = 1, J		       DO 1 I =	J, N
		 AP(JC+I-1) = A(I,J)		  AP(JC+I-J) = A(I,J)
	 1    CONTINUE			  1    CONTINUE
	      JC = JC +	J		       JC = JC + N - J + 1
	 2 CONTINUE			  2 CONTINUE
DTPTRI(3F)							    DTPTRI(3F)
     DTPTRI - compute the inverse of a real upper or lower triangular matrix A
     stored in packed format
     SUBROUTINE	DTPTRI(	UPLO, DIAG, N, AP, INFO	)
	 CHARACTER	DIAG, UPLO
	 INTEGER	INFO, N
	 DOUBLE		PRECISION AP( *	)
      DTPTRI computes the inverse of a real upper or lower triangular matrix A
     stored in packed format.
     UPLO    (input) CHARACTER*1
	     = 'U':  A is upper	triangular;
	     = 'L':  A is lower	triangular.
     DIAG    (input) CHARACTER*1
	     = 'N':  A is non-unit triangular;
	     = 'U':  A is unit triangular.
     N	     (input) INTEGER
	     The order of the matrix A.	 N >= 0.
     AP	     (input/output) DOUBLE PRECISION array, dimension (N*(N+1)/2)
	     On	entry, the upper or lower triangular matrix A, stored
	     columnwise	in a linear array.  The	j-th column of A is stored in
	     the array AP as follows:  if UPLO = 'U', AP(i + (j-1)*j/2)	=
	     A(i,j) for	1<=i<=j; if UPLO = 'L',	AP(i + (j-1)*((2*n-j)/2) =
	     A(i,j) for	j<=i<=n.  See below for	further	details.  On exit, the
	     (triangular) inverse of the original matrix, in the same packed
	     storage format.
     INFO    (output) INTEGER
	     = 0:  successful exit
	     < 0:  if INFO = -i, the i-th argument had an illegal value
	     > 0:  if INFO = i,	A(i,i) is exactly zero.	 The triangular	matrix
	     is	singular and its inverse can not be computed.
FURTHER	DETAILS
     A triangular matrix A can be transferred to packed	storage	using one of
     the following program segments:
     UPLO = 'U':		      UPLO = 'L':
	   JC =	1			    JC = 1
									Page 1
DTPTRI(3F)							    DTPTRI(3F)
	   DO 2	J = 1, N		    DO 2 J = 1,	N
	      DO 1 I = 1, J		       DO 1 I =	J, N
		 AP(JC+I-1) = A(I,J)		  AP(JC+I-J) = A(I,J)
	 1    CONTINUE			  1    CONTINUE
	      JC = JC +	J		       JC = JC + N - J + 1
	 2 CONTINUE			  2 CONTINUE
									PPPPaaaaggggeeee 2222[ Back ] |