trtri (USM Version)¶
Computes the inverse of a triangular matrix.
This routine belongs to the oneapi::mkl::lapack
namespace.
Description¶
This routine computes the inverse inv(A)
of an upper or lower triangular matrix A
.
API¶
Syntax¶
namespace oneapi::mkl::lapack {
sycl::event trtri(sycl::queue &queue,
mkl::uplo uplo,
mkl::diag diag,
std::int64_t n,
T *a,
std::int64_t lda,
T *scratchpad,
std::int64_t scratchpad_size,
const std::vector<sycl::event> &events = {})
}
trtri
(USM version) supports the following precisions and
devices:
T |
Devices supported |
---|---|
|
CPU and GPU |
|
CPU and GPU |
|
CPU and GPU |
|
CPU and GPU |
Input Parameters¶
- queue
Device queue where calculations will be performed.
- uplo
Indicates whether
A
is upper or lower triangular:If uplo =
uplo::upper
, then the arraya
stores the upper triangular part of the matrixA
, and the strictly lower triangular part of the matrix is not referenced.If uplo =
uplo::lower
, then the arraya
stores the lower triangular part of the matrixA
, and the strictly upper triangular part of the matrix is not referenced.- diag
If diag =
diag::nonunit
, then the matrixA
is not a unit triangular matrix.If diag =
diag::unit
, then the matrixA
is unit triangular: the diagonal elements are assumed to be 1 and are not referenced.- n
The order of the matrix
A
(n ≥ 0)
.- a
Pointer to the input array, which contains either the upper or lower triangular matrix,
A
(see uplo). The array must be of size at leastlda * max(1, n)
.- lda
The leading dimension of
a
;lda ≥ max(1, n)
.- scratchpad
Pointer to scratchpad memory to be used by the routine for storing intermediate results.
- scratchpad_size
Size of scratchpad memory as a number of floating point elements of type
T
. Size should not be less than the value returned by the trtri_scratchpad_size function.- events
List of events to wait for before starting computation. Defaults to empty list.
Output Parameters¶
- a
If uplo =
uplo::upper
, the upper triangular part ofA
is overwritten by its inverse.If uplo =
uplo::lower
, the lower triangular part ofA
is overwritten by its inverse.
Exceptions¶
Exception |
Description |
---|---|
|
This exception is thrown when problems occur during the calculations. You can obtain the info code of the problem using the info() method of the exception object: If If If |
Return Values¶
Output event to wait on to ensure computation is complete.