# rocsolver_slaswp Interface Reference#

HIPFORT API Reference: hipfort_rocsolver::rocsolver_slaswp Interface Reference
hipfort_rocsolver::rocsolver_slaswp Interface Reference

LASWP performs a series of row interchanges on the matrix A. More...

## Public Member Functions

integer(kind(rocblas_status_success)) function rocsolver_slaswp_ (handle, n, A, lda, k1, k2, ipiv, incx)

integer(kind(rocblas_status_success)) function rocsolver_slaswp_full_rank (handle, n, A, lda, k1, k2, ipiv, incx)

integer(kind(rocblas_status_success)) function rocsolver_slaswp_rank_0 (handle, n, A, lda, k1, k2, ipiv, incx)

integer(kind(rocblas_status_success)) function rocsolver_slaswp_rank_1 (handle, n, A, lda, k1, k2, ipiv, incx)

## Detailed Description

LASWP performs a series of row interchanges on the matrix A.

Row interchanges are done one by one. If $$\text{ipiv}[k_1 + (j - k_1) \cdot \text{abs}(\text{incx})] = r$$, then the j-th row of A will be interchanged with the r-th row of A, for $$j = k_1,k_1+1,\dots,k_2$$. Indices $$k_1$$ and $$k_2$$ are 1-based indices.

Parameters
 [in] handle rocblas_handle. [in] n rocblas_int. n >= 0. The number of columns of the matrix A. [in,out] A pointer to type. Array on the GPU of dimension lda*n. On entry, the matrix to which the row interchanges will be applied. On exit, the resulting permuted matrix. [in] lda rocblas_int. lda > 0. The leading dimension of the array A. [in] k1 rocblas_int. k1 > 0. The k_1 index. It is the first element of ipiv for which a row interchange will be done. This is a 1-based index. [in] k2 rocblas_int. k2 > k1 > 0. The k_2 index. k_2 - k_1 + 1 is the number of elements of ipiv for which a row interchange will be done. This is a 1-based index. [in] ipiv pointer to rocblas_int. Array on the GPU of dimension at least k_1 + (k_2 - k_1)*abs(incx). The vector of pivot indices. Only the elements in positions k_1 through k_1 + (k_2 - k_1)*abs(incx) of this vector are accessed. Elements of ipiv are considered 1-based. [in] incx rocblas_int. incx != 0. The distance between successive values of ipiv. If incx is negative, the pivots are applied in reverse order.

## ◆ rocsolver_slaswp_()

 integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_slaswp::rocsolver_slaswp_ ( type(c_ptr), value handle, integer(c_int), value n, type(c_ptr), value A, integer(c_int), value lda, integer(c_int), value k1, integer(c_int), value k2, type(c_ptr), value ipiv, integer(c_int), value incx )

## ◆ rocsolver_slaswp_full_rank()

 integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_slaswp::rocsolver_slaswp_full_rank ( type(c_ptr) handle, integer(c_int) n, real(c_float), dimension(:,:), target A, integer(c_int) lda, integer(c_int) k1, integer(c_int) k2, integer(c_int), dimension(:), target ipiv, integer(c_int) incx )

## ◆ rocsolver_slaswp_rank_0()

 integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_slaswp::rocsolver_slaswp_rank_0 ( type(c_ptr) handle, integer(c_int) n, real(c_float), target A, integer(c_int) lda, integer(c_int) k1, integer(c_int) k2, integer(c_int), target ipiv, integer(c_int) incx )

## ◆ rocsolver_slaswp_rank_1()

 integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_slaswp::rocsolver_slaswp_rank_1 ( type(c_ptr) handle, integer(c_int) n, real(c_float), dimension(:), target A, integer(c_int) lda, integer(c_int) k1, integer(c_int) k2, integer(c_int), dimension(:), target ipiv, integer(c_int) incx )

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