# rocsolver_sgetri_batched Interface Reference#

HIPFORT API Reference: hipfort_rocsolver::rocsolver_sgetri_batched Interface Reference
hipfort_rocsolver::rocsolver_sgetri_batched Interface Reference

GETRI_BATCHED inverts a batch of general n-by-n matrices using the LU factorization computed by GETRF_BATCHED. More...

## Public Member Functions

integer(kind(rocblas_status_success)) function rocsolver_sgetri_batched_ (handle, n, A, lda, ipiv, strideP, myInfo, batch_count)

integer(kind(rocblas_status_success)) function rocsolver_sgetri_batched_full_rank (handle, n, A, lda, ipiv, strideP, myInfo, batch_count)

integer(kind(rocblas_status_success)) function rocsolver_sgetri_batched_rank_0 (handle, n, A, lda, ipiv, strideP, myInfo, batch_count)

integer(kind(rocblas_status_success)) function rocsolver_sgetri_batched_rank_1 (handle, n, A, lda, ipiv, strideP, myInfo, batch_count)

## Detailed Description

GETRI_BATCHED inverts a batch of general n-by-n matrices using the LU factorization computed by GETRF_BATCHED.

The inverse of matrix $$A_j$$ in the batch is computed by solving the linear system

$A_j^{-1} L_j = U_j^{-1}$

where $$L_j$$ is the lower triangular factor of $$A_j$$ with unit diagonal elements, and $$U_j$$ is the upper triangular factor.

Parameters
 [in] handle rocblas_handle. [in] n rocblas_int. n >= 0. The number of rows and columns of all 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 factors L_j and U_j of the factorization A = P_j*L_j*U_j returned by GETRF_BATCHED. On exit, the inverses of A_j if info[j] = 0; otherwise undefined. [in] lda rocblas_int. lda >= n. Specifies 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). The pivot indices returned by GETRF_BATCHED. [in] strideP rocblas_stride. Stride from the start of one vector ipiv_j to the next one ipiv_(i+j). There is no restriction for the value of strideP. Normal use case is strideP >= n. [out] info pointer to rocblas_int. Array of batch_count integers on the GPU. If info[j] = 0, successful exit for inversion of A_j. If info[j] = i > 0, U_j is singular. U_j[i,i] is the first zero pivot. [in] batch_count rocblas_int. batch_count >= 0. Number of matrices in the batch.

## ◆ rocsolver_sgetri_batched_()

 integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_sgetri_batched::rocsolver_sgetri_batched_ ( type(c_ptr), value handle, 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) myInfo, integer(c_int), value batch_count )

## ◆ rocsolver_sgetri_batched_full_rank()

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

## ◆ rocsolver_sgetri_batched_rank_0()

 integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_sgetri_batched::rocsolver_sgetri_batched_rank_0 ( type(c_ptr) handle, integer(c_int) n, real(c_float), target A, integer(c_int) lda, integer(c_int), target ipiv, integer(c_int64_t) strideP, integer(c_int) myInfo, integer(c_int) batch_count )

## ◆ rocsolver_sgetri_batched_rank_1()

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

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