orgqr_batch¶
Generates the orthogonal/unitary matrix Q
i of the QR
factorizations for a group of general matrices.
orgqr_batch
supports the following precisions.
T
float
double
std::complex<float>
std::complex<double>
Description
The routine generates the whole or part of the orthogonal/unitary
matrices Q
1, Q
2, …,
Q
batch_size of the QR factorizations formed by the
routine
geqrf_batch.
Use this routine after a call to
geqrf_batch.
Usually Q
i is determined from the QR factorization of
an m
i-by-p
i matrix A
i with
m
i≥p
i. To compute the whole matrix
Q
i, use:
|
|
---|---|
|
|
|
|
To compute the leading pi columns of Q
i (which form
an orthonormal basis in the space spanned by the columns of
A
i):
|
|
---|---|
|
|
|
|
To compute the matrix Qk
i of the QR factorization of
the leading k
i columns of the matrix A
i:
|
|
---|---|
|
|
|
|
To compute the leading k
i columns of Qk
i
(which form an orthonormal basis in the space spanned by the
leading k
i columns of the matrix A
i):
|
|
---|---|
|
|
|
|
orgqr_batch (BUFFER Version)¶
Syntax
-
void
onemkl::lapack
::
orgqr_batch
(cl::sycl::queue &queue, std::vector<std::int64_t> const &m, std::vector<std::int64_t> const &n, std::vector<std::int64_t> const &k, std::vector<cl::sycl::buffer<T, 1>> &a, std::vector<std::int64_t> const &lda, std::vector<cl::sycl::buffer<T, 1>> &tau, std::vector<cl::sycl::buffer<std::int64_t, 1>> &info)¶
Input Parameters
- queue
The queue where the routine should be executed.
- m
A vector,
m[i]
is the order of the unitary matrixQ
i(0≤m[i])
.- n
A vector,
n[i]
is the number of columns ofQ
i to be computed(0≤n[i]≤m[i])
.- k
A vector,
k[i]
is the number of elementary reflectors whose product defines the matrixQ
i(0≤k[i]≤n[i])
.- a
A vector of buffers as returned by geqrf_batch.
a[i]
must be of size at leastlda[i]*max(1, n[i])
.- lda
A vector,
lda[i]
is the leading dimension ofa[i] (m[i]≤lda[i])
.- tau
A vector of buffers tau for storing scalars defining elementary reflectors, as returned by geqrf_batch.
Output Parameters
- a
a[i]
is overwritten byn[i]
leading columns of them[i]
-by-m[i]
orthogonal matrixQ
i.- info
Vector of buffers containing error information.
If
info[i]=0
, the execution is successful.If
info[i]=-k
, thek
-th parameter had an illegal value.
Parent topic: LAPACK-like Extensions Routines