KokkosLapack::geqrf¶
Defined in header: KokkosLapack_geqrf.hpp
template <class ExecutionSpace, class AMatrix, class TauArray, class InfoArray>
void geqrf(const ExecutionSpace& space, const AMatrix& A, const TauArray& Tau, const InfoArray& Info);
template <class AMatrix, class TauArray, class InfoArray>
void geqrf(const AMatrix& A, const TauArray& Tau, const InfoArray& Info);
Performs the QR factorization of matrix \(A\)
where \(A\) is the input coefficient matrix on entry and the resulting \(R\) factor and scaled Householder vectors on exit. \(Tau\) stores the scaling factors associated with the Householder vectors.
Overwrites \(A\) with the \(QR\) factors using the resources of
space.Same as 1. but uses the resources of the default execution space from
AMatrix::execution_space.
The function will throw a runtime exception if Tau.extent(0) < Kokkos::min(A.extent(0), A.extent(1)) or if Info.extent(0) < 1.
Parameters¶
- space:
execution space instance.
- A:
The input matrix on entry and the \(QR\) factors on return.
- Tau:
rank-1 view of size min(M,N) that contains the scaling factors of the elementary reflectors.
- Info:
rank-1 view of integers and of size 1: Info[0] = 0: successful exit; Info[0] < 0: if equal to ‘-i’, the i-th argument had an illegal value.
Type Requirements¶
ExecutionSpace must be a Kokkos execution space
AMatrix must be a Kokkos View of rank 2 that satisfies
Kokkos::SpaceAccessibility<ExecutionSpace, typename AMatrix::memory_space>::accessible
Tau must be a Kokkos View of rank 1 that satisfies
Kokkos::SpaceAccessibility<ExecutionSpace, typename Tau::memory_space>::accessible
Info must be a Kokkos View of rank 1 that satisfies
Kokkos::SpaceAccessibility<ExecutionSpace, typename Info::memory_space>::accessible
Example¶
TBD