# ?trti2

Computes the inverse of a triangular matrix (unblocked algorithm).

## Syntax

call strti2( uplo, diag, n, a, lda, info )

call dtrti2( uplo, diag, n, a, lda, info )

call ctrti2( uplo, diag, n, a, lda, info )

call ztrti2( uplo, diag, n, a, lda, info )

## Include Files

• Fortran: mkl.fi
• C: mkl.h

## Description

The routine ?trti2 computes the inverse of a real/complex upper or lower triangular matrix.

This is the Level 2 BLAS version of the algorithm.

## Input Parameters

uplo

CHARACTER*1.

Specifies whether the matrix A is upper or lower triangular.

= 'U': upper triangular

= 'L': lower triangular

diag

CHARACTER*1.

Specifies whether or not the matrix A is unit triangular.

= 'N': non-unit triangular

= 'N': non-unit triangular

n

INTEGER. The order of the matrix A. `n ≥ 0`.

a

REAL for strti2

DOUBLE PRECISION for dtrti2

COMPLEX for ctrti2

DOUBLE COMPLEX for ztrti2.

Array, DIMENSION (lda, n).

On entry, the triangular matrix A.

If `uplo = 'U'`, the leading n-by-n upper triangular part of the array a contains the upper triangular matrix, and the strictly lower triangular part of a is not referenced.

If `uplo = 'L'`, the leading n-by-n lower triangular part of the array a contains the lower triangular matrix, and the strictly upper triangular part of a is not referenced.

If `diag = 'U'`, the diagonal elements of a are also not referenced and are assumed to be 1.

lda

INTEGER. The leading dimension of the array a. `lda ≥ max(1,n)`.

## Output Parameters

a

On exit, the (triangular) inverse of the original matrix, in the same storage format.

info

INTEGER.

`= 0`: successful exit

`< 0`: if `info = -k`, the k-th argument had an illegal value

For more complete information about compiler optimizations, see our Optimization Notice.