Developer Reference

  • 2021.1
  • 12/04/2020
  • Public Content
Contents

p?trtri

Computes the inverse of a triangular distributed matrix.

Syntax

void
pstrtri
(
char
*uplo
,
char
*diag
,
MKL_INT
*n
,
float
*a
,
MKL_INT
*ia
,
MKL_INT
*ja
,
MKL_INT
*desca
,
MKL_INT
*info
);
void
pdtrtri
(
char
*uplo
,
char
*diag
,
MKL_INT
*n
,
double
*a
,
MKL_INT
*ia
,
MKL_INT
*ja
,
MKL_INT
*desca
,
MKL_INT
*info
);
void
pctrtri
(
char
*uplo
,
char
*diag
,
MKL_INT
*n
,
MKL_Complex8
*a
,
MKL_INT
*ia
,
MKL_INT
*ja
,
MKL_INT
*desca
,
MKL_INT
*info
);
void
pztrtri
(
char
*uplo
,
char
*diag
,
MKL_INT
*n
,
MKL_Complex16
*a
,
MKL_INT
*ia
,
MKL_INT
*ja
,
MKL_INT
*desca
,
MKL_INT
*info
);
Include Files
  • mkl_scalapack.h
Description
The
p?trtri
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) 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
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) The number of rows and columns to be operated on, that is, the order of the distributed matrix sub(
A
)
(
n
0)
.
a
(local)
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) 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) 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) If
info
=0
, the execution is successful.
info
< 0
:
If the
i
-th argument is an array and the
j-
th entry
, indexed
j
- 1,
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
,
the matrix element
A
(
ia
+
k
-1,
ja
+
k
-1) is exactly zero. The triangular matrix sub(
A
) is singular and its inverse cannot be computed.

Product and Performance Information

1

Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex.