# rocsolver_sgelq2_batched Interface Reference#

HIPFORT API Reference: hipfort_rocsolver::rocsolver_sgelq2_batched Interface Reference
hipfort_rocsolver::rocsolver_sgelq2_batched Interface Reference

GELQ2_BATCHED computes the LQ factorization of a batch of general m-by-n matrices. More...

## Public Member Functions

integer(kind(rocblas_status_success)) function rocsolver_sgelq2_batched_ (handle, m, n, A, lda, ipiv, strideP, batch_count)

integer(kind(rocblas_status_success)) function rocsolver_sgelq2_batched_full_rank (handle, m, n, A, lda, ipiv, strideP, batch_count)

integer(kind(rocblas_status_success)) function rocsolver_sgelq2_batched_rank_0 (handle, m, n, A, lda, ipiv, strideP, batch_count)

integer(kind(rocblas_status_success)) function rocsolver_sgelq2_batched_rank_1 (handle, m, n, A, lda, ipiv, strideP, batch_count)

## Detailed Description

GELQ2_BATCHED computes the LQ factorization of a batch of general m-by-n matrices.

(This is the unblocked version of the algorithm).

The factorization of matrix $$A_j$$ in the batch has the form

$A_j = \left[\begin{array}{cc} L_j & 0 \end{array}\right] Q_j$

where $$L_j$$ is lower triangular (lower trapezoidal if m > n), and $$Q_j$$ is a n-by-n orthogonal/unitary matrix represented as the product of Householder matrices

$Q_j = H_{j_k}'H_{j_{k-1}}' \cdots H_{j_1}', \quad \text{with} \: k = \text{min}(m,n).$

Each Householder matrices $$H_{j_i}$$ is given by

$H_{j_i} = I - \text{ipiv}_j[i] \cdot v_{j_i}' v_{j_i}$

where the first i-1 elements of Householder vector $$v_{j_i}$$ are zero, and $$v_{j_i}[i] = 1$$.

Parameters
 [in] handle rocblas_handle. [in] m rocblas_int. m >= 0. The number of rows of all the matrices A_j in the batch. [in] n rocblas_int. n >= 0. The number of columns of all the matrices A_j in the batch. [in,out] A Array of pointers to type. Each pointer points to an array on the GPU of dimension lda*n. On entry, the m-by-n matrices A_j to be factored. On exit, the elements on and below the diagonal contain the factor L_j. The elements above the diagonal are the last n - i elements of Householder vector v_(j_i). [in] lda rocblas_int. lda >= m. Specifies the leading dimension of matrices A_j. [out] ipiv pointer to type. Array on the GPU (the size depends on the value of strideP). Contains the vectors ipiv_j of corresponding Householder scalars. [in] strideP rocblas_stride. Stride from the start of one vector ipiv_j to the next one ipiv_(j+1). There is no restriction for the value of strideP. Normal use is strideP >= min(m,n). [in] batch_count rocblas_int. batch_count >= 0. Number of matrices in the batch.

## ◆ rocsolver_sgelq2_batched_()

 integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_sgelq2_batched::rocsolver_sgelq2_batched_ ( type(c_ptr), value handle, integer(c_int), value m, integer(c_int), value n, type(c_ptr) A, integer(c_int), value lda, type(c_ptr), value ipiv, integer(c_int64_t), value strideP, integer(c_int), value batch_count )

## ◆ rocsolver_sgelq2_batched_full_rank()

 integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_sgelq2_batched::rocsolver_sgelq2_batched_full_rank ( type(c_ptr) handle, integer(c_int) m, integer(c_int) n, real(c_float), dimension(:,:,:), target A, integer(c_int) lda, real(c_float), dimension(:), target ipiv, integer(c_int64_t) strideP, integer(c_int) batch_count )

## ◆ rocsolver_sgelq2_batched_rank_0()

 integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_sgelq2_batched::rocsolver_sgelq2_batched_rank_0 ( type(c_ptr) handle, integer(c_int) m, integer(c_int) n, real(c_float), target A, integer(c_int) lda, real(c_float), target ipiv, integer(c_int64_t) strideP, integer(c_int) batch_count )

## ◆ rocsolver_sgelq2_batched_rank_1()

 integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_sgelq2_batched::rocsolver_sgelq2_batched_rank_1 ( type(c_ptr) handle, integer(c_int) m, integer(c_int) n, real(c_float), dimension(:), target A, integer(c_int) lda, real(c_float), dimension(:), target ipiv, integer(c_int64_t) strideP, integer(c_int) batch_count )

The documentation for this interface was generated from the following file: