---
name: "stftri"
section: "3lapack"
platform: "linux"
package: "liblapack-doc"
version: "3.2.1-8"
release: "Debian 6.0 (Squeeze)"
platforms: ["linux"]
url: "https://new.carta.tech/stftri/3lapack"
---

# stftri(3lapack)

computes the inverse of a triangular matrix A stored in RFP format

## NAME

STFTRI - computes the inverse of a triangular matrix A stored in RFP format

## SYNOPSIS

- SUBROUTINE STFTRI(

  TRANSR, UPLO, DIAG, N, A, INFO )

- CHARACTER

  TRANSR, UPLO, DIAG

- INTEGER

  INFO, N

- REAL

  A( 0: \* )

## PURPOSE

STFTRI computes the inverse of a triangular matrix A stored in RFP format. This is a Level 3 BLAS version of the algorithm.\

## ARGUMENTS

- TRANSR (input) CHARACTER

  \= 'N':  The Normal TRANSR of RFP A is stored;\
   \= 'T':  The Transpose TRANSR of RFP A is stored.

- UPLO (input) CHARACTER

  \= 'U':  A is upper triangular;\
   \= 'L':  A is lower triangular.

- DIAG (input) CHARACTER

  \= 'N':  A is non-unit triangular;\
   \= 'U':  A is unit triangular.

- N (input) INTEGER

  The order of the matrix A.  N \>= 0.

- A (input/output) REAL array, dimension (NT);

  NT=N\*(N+1)/2. On entry, the triangular factor of a Hermitian Positive Definite matrix A in RFP format. RFP format is described by TRANSR, UPLO, and N as follows: If TRANSR = 'N'\
   then RFP A is (0:N,0:k-1) when N is even; k=N/2. RFP A is\
   (0:N-1,0:k) when N is odd; k=N/2. IF TRANSR = 'T' then RFP is the transpose of RFP A as defined when TRANSR = 'N'. The contents of RFP A are defined by UPLO as follows: If UPLO = 'U' the RFP A contains the nt elements of upper packed A; If UPLO = 'L' the RFP A contains the nt elements of lower packed A. The LDA of RFP A is (N+1)/2 when TRANSR = 'T'. When TRANSR is 'N' the LDA is N+1 when N is even and N is odd. See the Note below for more details. On exit, the (triangular) inverse of the original matrix, in the same 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

We first consider Rectangular Full Packed (RFP) Format when N is even. We give an example where N = 6.\
\
     AP is Upper             AP is Lower\
\
  00 01 02 03 04 05       00\
\
     11 12 13 14 15       10 11\
\
        22 23 24 25       20 21 22\
\
           33 34 35       30 31 32 33\
\
              44 45       40 41 42 43 44\
\
                 55       50 51 52 53 54 55\
 Let TRANSR = 'N'. RFP holds AP as follows:\
 For UPLO = 'U' the upper trapezoid A(0:5,0:2) consists of the last three columns of AP upper. The lower triangle A(4:6,0:2) consists of the transpose of the first three columns of AP upper.\
 For UPLO = 'L' the lower trapezoid A(1:6,0:2) consists of the first three columns of AP lower. The upper triangle A(0:2,0:2) consists of the transpose of the last three columns of AP lower.\
 This covers the case N even and TRANSR = 'N'.\
\
        RFP A                   RFP A\
\
       03 04 05                33 43 53\
\
       13 14 15                00 44 54\
\
       23 24 25                10 11 55\
\
       33 34 35                20 21 22\
\
       00 44 45                30 31 32\
\
       01 11 55                40 41 42\
\
       02 12 22                50 51 52\
 Now let TRANSR = 'T'. RFP A in both UPLO cases is just the transpose of RFP A above. One therefore gets:\
\
          RFP A                   RFP A\
\
    03 13 23 33 00 01 02    33 00 10 20 30 40 50\
\
    04 14 24 34 44 11 12    43 44 11 21 31 41 51\
\
    05 15 25 35 45 55 22    53 54 55 22 32 42 52\
 We first consider Rectangular Full Packed (RFP) Format when N is odd. We give an example where N = 5.\
\
    AP is Upper                 AP is Lower\
\
  00 01 02 03 04              00\
\
     11 12 13 14              10 11\
\
        22 23 24              20 21 22\
\
           33 34              30 31 32 33\
\
              44              40 41 42 43 44\
 Let TRANSR = 'N'. RFP holds AP as follows:\
 For UPLO = 'U' the upper trapezoid A(0:4,0:2) consists of the last three columns of AP upper. The lower triangle A(3:4,0:1) consists of the transpose of the first two columns of AP upper.\
 For UPLO = 'L' the lower trapezoid A(0:4,0:2) consists of the first three columns of AP lower. The upper triangle A(0:1,1:2) consists of the transpose of the last two columns of AP lower.\
 This covers the case N odd and TRANSR = 'N'.\
\
        RFP A                   RFP A\
\
       02 03 04                00 33 43\
\
       12 13 14                10 11 44\
\
       22 23 24                20 21 22\
\
       00 33 34                30 31 32\
\
       01 11 44                40 41 42\
 Now let TRANSR = 'T'. RFP A in both UPLO cases is just the transpose of RFP A above. One therefore gets:\
\
          RFP A                   RFP A\
\
    02 12 22 00 01             00 10 20 30 40 50\
\
    03 13 23 33 11             33 11 21 31 41 51\
\
    04 14 24 34 44             43 44 22 32 42 52\
