unmtr_scratchpad_size#
Computes size of scratchpad memory required for unmtr function.
Description
unmtr_scratchpad_size
supports the following precisions.
T
std::complex<float>
std::complex<double>
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
namespace oneapi::mkl::lapack {
template <typename T>
std::int64_t unmtr_scratchpad_size(cl::sycl::queue &queue, oneapi::mkl::side side, oneapi::mkl::uplo upper_lower, oneapi::mkl::transpose trans, std::int64_t m, std::int64_t n, std::int64_t lda, std::int64_t ldc)
}
Input Parameters
In the descriptions below, r
denotes the order of \(Q\):
\(r = m\) |
if |
\(r = n\) |
if |
- queue
Device queue where calculations by unmtr function will be performed.
- side
Must be either
side::left
orside::right
.If
side=side::left
, \(Q\) or \(Q^{H}\) is applied to \(C\) from the left.If
side=side::right
, \(Q\) or \(Q^{H}\) is applied to \(C\) from the right.- upper_lower
Must be either
uplo::upper
oruplo::lower
. Uses the sameupper_lower
as supplied to hetrd.- trans
Must be either
transpose::nontrans
ortranspose::conjtrans
.If
trans=transpose::nontrans
, the routine multiplies \(C\) by \(Q\).If
trans=transpose::conjtrans
, the routine multiplies \(C\) by \(Q^{H}\).- m
The number of rows in the matrix \(C\) (\(m \ge 0\)).
- n
The number of columns the matrix \(C\) (\(n \ge 0\)).
- k
The number of elementary reflectors whose product defines the matrix \(Q\) (\(0 \le k \le n\)).
- lda
The leading dimension of \(a\) \((\text{lda} \ge \max(1,r))\).
- ldc
The leading dimension of \(c\) \((\text{ldc} \ge \max(1,m))\).
Throws
This routine shall throw the following exceptions if the associated condition is detected. An implementation may throw additional implementation-specific exception(s) in case of error conditions not covered here.
oneapi::mkl::unsupported_device
oneapi::mkl::lapack::invalid_argument
Exception is thrown in case of incorrect supplied argument value. Position of wrong argument can be determined by 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