# rocsolver_sgetrs_batched Interface Reference#

HIPFORT API Reference: hipfort_rocsolver::rocsolver_sgetrs_batched Interface Reference
hipfort_rocsolver::rocsolver_sgetrs_batched Interface Reference

GETRS_BATCHED solves a batch of systems of n linear equations on n variables in its factorized forms. More...

## Public Member Functions

integer(kind(rocblas_status_success)) function rocsolver_sgetrs_batched_ (handle, trans, n, nrhs, A, lda, ipiv, strideP, B, ldb, batch_count)

integer(kind(rocblas_status_success)) function rocsolver_sgetrs_batched_full_rank (handle, trans, n, nrhs, A, lda, ipiv, strideP, B, ldb, batch_count)

integer(kind(rocblas_status_success)) function rocsolver_sgetrs_batched_rank_0 (handle, trans, n, nrhs, A, lda, ipiv, strideP, B, ldb, batch_count)

integer(kind(rocblas_status_success)) function rocsolver_sgetrs_batched_rank_1 (handle, trans, n, nrhs, A, lda, ipiv, strideP, B, ldb, batch_count)

## Detailed Description

GETRS_BATCHED solves a batch of systems of n linear equations on n variables in its factorized forms.

For each instance j in the batch, it solves one of the following systems, depending on the value of trans:

$\begin{array}{cl} A_j X_j = B_j & \: \text{not transposed,}\newline A_j^T X_j = B_j & \: \text{transposed, or}\newline A_j^H X_j = B_j & \: \text{conjugate transposed.} \end{array}$

Matrix $$A_j$$ is defined by its triangular factors as returned by GETRF_BATCHED.

Parameters
 [in] handle rocblas_handle. [in] trans rocblas_operation. Specifies the form of the system of equations of each instance in the batch. [in] n rocblas_int. n >= 0. The order of the system, i.e. the number of columns and rows of all A_j matrices. [in] nrhs rocblas_int. nrhs >= 0. The number of right hand sides, i.e., the number of columns of all the matrices B_j. [in] A Array of pointers to type. Each pointer points to an array on the GPU of dimension lda*n. The factors L_j and U_j of the factorization A_j = P_j*L_j*U_j returned by GETRF_BATCHED. [in] lda rocblas_int. lda >= n. The leading dimension of matrices A_j. [in] ipiv pointer to rocblas_int. Array on the GPU (the size depends on the value of strideP). Contains the vectors ipiv_j of pivot indices returned by GETRF_BATCHED. [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 case is strideP >= n. [in,out] B Array of pointers to type. Each pointer points to an array on the GPU of dimension ldb*nrhs. On entry, the right hand side matrices B_j. On exit, the solution matrix X_j of each system in the batch. [in] ldb rocblas_int. ldb >= n. The leading dimension of matrices B_j. [in] batch_count rocblas_int. batch_count >= 0. Number of instances (systems) in the batch.

## ◆ rocsolver_sgetrs_batched_()

 integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_sgetrs_batched::rocsolver_sgetrs_batched_ ( type(c_ptr), value handle, integer(kind(rocblas_operation_none)), value trans, integer(c_int), value n, integer(c_int), value nrhs, type(c_ptr) A, integer(c_int), value lda, type(c_ptr), value ipiv, integer(c_int64_t), value strideP, type(c_ptr) B, integer(c_int), value ldb, integer(c_int), value batch_count )

## ◆ rocsolver_sgetrs_batched_full_rank()

 integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_sgetrs_batched::rocsolver_sgetrs_batched_full_rank ( type(c_ptr) handle, integer(kind(rocblas_operation_none)) trans, integer(c_int) n, integer(c_int) nrhs, real(c_float), dimension(:,:,:), target A, integer(c_int) lda, integer(c_int), dimension(:), target ipiv, integer(c_int64_t) strideP, real(c_float), dimension(:,:,:), target B, integer(c_int) ldb, integer(c_int) batch_count )

## ◆ rocsolver_sgetrs_batched_rank_0()

 integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_sgetrs_batched::rocsolver_sgetrs_batched_rank_0 ( type(c_ptr) handle, integer(kind(rocblas_operation_none)) trans, integer(c_int) n, integer(c_int) nrhs, real(c_float), target A, integer(c_int) lda, integer(c_int), target ipiv, integer(c_int64_t) strideP, real(c_float), target B, integer(c_int) ldb, integer(c_int) batch_count )

## ◆ rocsolver_sgetrs_batched_rank_1()

 integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_sgetrs_batched::rocsolver_sgetrs_batched_rank_1 ( type(c_ptr) handle, integer(kind(rocblas_operation_none)) trans, integer(c_int) n, integer(c_int) nrhs, real(c_float), dimension(:), target A, integer(c_int) lda, integer(c_int), dimension(:), target ipiv, integer(c_int64_t) strideP, real(c_float), dimension(:), target B, integer(c_int) ldb, integer(c_int) batch_count )

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