Previous: dtprfs Up: ../lapack-d.html Next: dtptrs


dtptri


 NAME
      DTPTRI - compute the inverse of a real upper or lower tri-
      angular matrix A stored in packed format

 SYNOPSIS
      SUBROUTINE DTPTRI( UPLO, DIAG, N, AP, INFO )

          CHARACTER      DIAG, UPLO

          INTEGER        INFO, N

          DOUBLE         PRECISION AP( * )

 PURPOSE
      DTPTRI computes the inverse of a real upper or lower tri-
      angular matrix A stored in packed format.

 ARGUMENTS
      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.

 (N*(N+1)/2)
      AP      (input/output) DOUBLE PRECISION array, dimension
              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((j-1)*j/2 + i) = A(i,j) for 1<=i<=j;
              if UPLO = 'L', AP((j-1)*(n-j) + j*(j+1)/2 + i-j) =
              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 tri-
              angular 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
            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