unmtr_scratchpad_size¶
Computes size of scratchpad memory required for unmtr function.
unmtr_scratchpad_size
supports the following precisions.
T
std::complex<float>
std::complex<double>
Description
Computes the number of elements of type T the scratchpad memory to be passed to unmtr function should be able to hold. Calls to this routine must specify the template parameter explicitly.
unmtr_scratchpad_size¶
Syntax
-
template<typename
T
>
std::int64_tonemkl::lapack
::
unmtr_scratchpad_size
(cl::sycl::queue &queue, onemkl::side left_right, onemkl::uplo upper_lower, onemkl::transpose trans, std::int64_t m, std::int64_t n, std::int64_t lda, std::int64_t ldc)¶
Input Parameters
- queue
Device queue where calculations by unmtr function will be performed.
- left_right
Must be either
side::left
orside::right
.If
left_right=side::left
,Q
orQ
H is applied toC
from the left.If
left_right=side::right
,Q
orQ
H is applied toC
from the right.- upper_lower
Must be either
uplo::upper
oruplo::lower
. Uses the same upper_lower as supplied to hetrd.- trans
Must be either
transpose::nontrans
ortranspose::conjtrans
.If
trans=transpose::nontrans
, the routine multipliesC
byQ
.If
trans=transpose::conjtrans
, the routine multipliesC
byQ
H.- m
The number of rows in the matrix
C
(m≥0
).- n
The number of columns the matrix
C
(n≥0
).- k
The number of elementary reflectors whose product defines the matrix
Q
(0≤k≤n
).- lda
The leading dimension of a
(max(1,r)≤lda)
.- ldc
The leading dimension of c
(max(1,n)≤ldc)
.
Throws
- onemkl::lapack::exception
Exception is thrown in case of incorrect argument value is supplied. Position of wrong argument can be determined by get_info() method of exception object.
Return Value
The number of elements of type T the scratchpad memory to be passed to unmtr function should be able to hold.
Parent topic: LAPACK Singular Value and Eigenvalue Problem Routines