NAME

dtptri - compute the inverse of a real upper or lower triangular matrix A stored in packed format


SYNOPSIS

  SUBROUTINE DTPTRI( UPLO, DIAG, N, A, INFO)
  CHARACTER * 1 UPLO, DIAG
  INTEGER N, INFO
  DOUBLE PRECISION A(*)
  SUBROUTINE DTPTRI_64( UPLO, DIAG, N, A, INFO)
  CHARACTER * 1 UPLO, DIAG
  INTEGER*8 N, INFO
  DOUBLE PRECISION A(*)

F95 INTERFACE

  SUBROUTINE TPTRI( UPLO, DIAG, N, A, [INFO])
  CHARACTER(LEN=1) :: UPLO, DIAG
  INTEGER :: N, INFO
  REAL(8), DIMENSION(:) :: A
  SUBROUTINE TPTRI_64( UPLO, DIAG, N, A, [INFO])
  CHARACTER(LEN=1) :: UPLO, DIAG
  INTEGER(8) :: N, INFO
  REAL(8), DIMENSION(:) :: A

C INTERFACE

#include <sunperf.h>

void dtptri(char uplo, char diag, int n, double *a, int *info);

void dtptri_64(char uplo, char diag, long n, double *a, long *info);


PURPOSE

dtptri computes the inverse of a real upper or lower triangular matrix A stored in packed format.


ARGUMENTS


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
            A(JC+I-1)  = A(I,J)              A(JC+I-J)  = A(I,J)
    1    CONTINUE                    1    CONTINUE
         JC  = JC + J                      JC  = JC + N - J + 1
    2 CONTINUE                       2 CONTINUE