Developer Reference for Intel® oneAPI Math Kernel Library for Fortran
p?trtri
Computes the inverse of a triangular distributed matrix.
Syntax
call pstrtri ( uplo , diag , n , a , ia , ja , desca , info )
call pdtrtri ( uplo , diag , n , a , ia , ja , desca , info )
call pctrtri ( uplo , diag , n , a , ia , ja , desca , info )
call pztrtri ( uplo , diag , n , a , ia , ja , desca , info )
Include Files
mkl_scalapack.h
Description
pstrtri pdtrtri pctrtri pztrtri The p?trtri routine function computes the inverse of a real or complex upper or lower triangular distributed matrix sub( A ) = A ( ia : ia + n -1, ja : ja + n -1).
Input Parameters
uplo
(global) CHARACTER*1 . Must be ‘U’ or ‘L’ .
Specifies whether the distributed matrix sub( A ) is upper or lower triangular. If uplo = 'U' , sub( A ) is upper triangular. If uplo = 'L' , sub( A ) is lower triangular.
diag
CHARACTER*1 . Must be ‘N’ or ‘U’ .
Specifies whether or not the distributed matrix sub( A ) is unit triangular. If diag = 'N' , then sub( A ) is non-unit triangular. If diag = 'U' , then sub( A ) is unit triangular.
n
(global) INTEGER . The number of rows and columns to be operated on, that is, the order of the distributed matrix sub( A ) (n≥0) .
- a
-
(local) REAL for pstrtri DOUBLE PRECISION for pdtrtri COMPLEX for pctrtri DOUBLE COMPLEX for pztrtri .
Pointer into the local memory to an array of local size (lld_a,LOCc(ja+n-1)) .
The array a contains the local pieces of the triangular distributed matrix sub( A ). If uplo = 'U' , the leading n -by- n upper triangular part of sub( A ) contains the upper triangular matrix to be inverted, and the strictly lower triangular part of sub( A ) is not referenced. If uplo = 'L' , the leading n -by- n lower triangular part of sub( A ) contains the lower triangular matrix, and the strictly upper triangular part of sub( A ) is not referenced.
ia , ja
(global) INTEGER . The row and column indices in the global matrix A indicating the first row and the first column of the matrix sub( A ), respectively.
desca
(global and local) INTEGER array of size dlen_ . The array descriptor for the distributed matrix A .
Output Parameters
- a
-
On exit, overwritten by the (triangular) inverse of the original matrix.
info
(global) INTEGER . If info=0 , the execution is successful.
info < 0 :
If the i -th argument is an array and the j- th entry had an illegal value, then info = -( i *100+ j ); if the i- th argument is a scalar and had an illegal value, then info = -i .
info> 0 :
If info = k , A ( ia + k -1, ja + k -1) is exactly zero. The triangular matrix sub( A ) is singular and its inverse cannot be computed.