rocsolver_chegs2 Interface Reference#
HEGS2 reduces a hermitian-definite generalized eigenproblem to standard form. More...
Public Member Functions | |
integer(kind(rocblas_status_success)) function | rocsolver_chegs2_ (handle, itype, uplo, n, A, lda, B, ldb) |
integer(kind(rocblas_status_success)) function | rocsolver_chegs2_full_rank (handle, itype, uplo, n, A, lda, B, ldb) |
integer(kind(rocblas_status_success)) function | rocsolver_chegs2_rank_0 (handle, itype, uplo, n, A, lda, B, ldb) |
integer(kind(rocblas_status_success)) function | rocsolver_chegs2_rank_1 (handle, itype, uplo, n, A, lda, B, ldb) |
Detailed Description
HEGS2 reduces a hermitian-definite generalized eigenproblem to standard form.
(This is the unblocked version of the algorithm).
The problem solved by this function is either of the form
\[ \begin{array}{cl} A X = \lambda B X & \: \text{1st form,}\newline A B X = \lambda X & \: \text{2nd form, or}\newline B A X = \lambda X & \: \text{3rd form,} \end{array} \]
depending on the value of itype.
If the problem is of the 1st form, then A is overwritten with
\[ \begin{array}{cl} U^{-H} A U^{-1}, & \: \text{or}\newline L^{-1} A L^{-H}, \end{array} \]
where the hermitian-definite matrix B has been factorized as either \(U^H U\) or \(L L^H\) as returned by POTRF, depending on the value of uplo.
If the problem is of the 2nd or 3rd form, then A is overwritten with
\[ \begin{array}{cl} U A U^H, & \: \text{or}\newline L^H A L, \end{array} \]
also depending on the value of uplo.
- Parameters
-
[in] handle rocblas_handle. [in] itype rocblas_eform.
Specifies the form of the generalized eigenproblem.[in] uplo rocblas_fill.
Specifies whether the upper or lower part of the matrix A is stored, and whether the factorization applied to B was upper or lower triangular. If uplo indicates lower (or upper), then the upper (or lower) parts of A and B are not used.[in] n rocblas_int. n >= 0.
The matrix dimensions.[in,out] A pointer to type. Array on the GPU of dimension lda*n.
On entry, the matrix A. On exit, the transformed matrix associated with the equivalent standard eigenvalue problem.[in] lda rocblas_int. lda >= n.
Specifies the leading dimension of A.[out] B pointer to type. Array on the GPU of dimension ldb*n.
The triangular factor of the matrix B, as returned by POTRF.[in] ldb rocblas_int. ldb >= n.
Specifies the leading dimension of B.
Member Function/Subroutine Documentation
◆ rocsolver_chegs2_()
integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_chegs2::rocsolver_chegs2_ | ( | type(c_ptr), value | handle, |
integer(kind(rocblas_eform_ax)), value | itype, | ||
integer(kind(rocblas_fill_upper)), value | uplo, | ||
integer(c_int), value | n, | ||
type(c_ptr), value | A, | ||
integer(c_int), value | lda, | ||
type(c_ptr), value | B, | ||
integer(c_int), value | ldb | ||
) |
◆ rocsolver_chegs2_full_rank()
integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_chegs2::rocsolver_chegs2_full_rank | ( | type(c_ptr) | handle, |
integer(kind(rocblas_eform_ax)) | itype, | ||
integer(kind(rocblas_fill_upper)) | uplo, | ||
integer(c_int) | n, | ||
complex(c_float_complex), dimension(:,:), target | A, | ||
integer(c_int) | lda, | ||
complex(c_float_complex), dimension(:,:), target | B, | ||
integer(c_int) | ldb | ||
) |
◆ rocsolver_chegs2_rank_0()
integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_chegs2::rocsolver_chegs2_rank_0 | ( | type(c_ptr) | handle, |
integer(kind(rocblas_eform_ax)) | itype, | ||
integer(kind(rocblas_fill_upper)) | uplo, | ||
integer(c_int) | n, | ||
complex(c_float_complex), target | A, | ||
integer(c_int) | lda, | ||
complex(c_float_complex), target | B, | ||
integer(c_int) | ldb | ||
) |
◆ rocsolver_chegs2_rank_1()
integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_chegs2::rocsolver_chegs2_rank_1 | ( | type(c_ptr) | handle, |
integer(kind(rocblas_eform_ax)) | itype, | ||
integer(kind(rocblas_fill_upper)) | uplo, | ||
integer(c_int) | n, | ||
complex(c_float_complex), dimension(:), target | A, | ||
integer(c_int) | lda, | ||
complex(c_float_complex), dimension(:), target | B, | ||
integer(c_int) | ldb | ||
) |
The documentation for this interface was generated from the following file: