rocsolver_ssteqr Interface Reference#
hipfort_rocsolver::rocsolver_ssteqr Interface Reference
STEQR computes the eigenvalues and (optionally) eigenvectors of a symmetric tridiagonal matrix. More...
Public Member Functions | |
integer(kind(rocblas_status_success)) function | rocsolver_ssteqr_ (handle, evect, n, D, E, C, ldc, myInfo) |
integer(kind(rocblas_status_success)) function | rocsolver_ssteqr_full_rank (handle, evect, n, D, E, C, ldc, myInfo) |
integer(kind(rocblas_status_success)) function | rocsolver_ssteqr_rank_0 (handle, evect, n, D, E, C, ldc, myInfo) |
integer(kind(rocblas_status_success)) function | rocsolver_ssteqr_rank_1 (handle, evect, n, D, E, C, ldc, myInfo) |
Detailed Description
STEQR computes the eigenvalues and (optionally) eigenvectors of a symmetric tridiagonal matrix.
The eigenvalues of the symmetric tridiagonal matrix are computed by the implicit QL/QR algorithm, and returned in increasing order.
The matrix is not represented explicitly, but rather as the array of diagonal elements D and the array of symmetric off-diagonal elements E. When D and E correspond to the tridiagonal form of a full symmetric/Hermitian matrix, as returned by, e.g., SYTRD or HETRD, the eigenvectors of the original matrix can also be computed, depending on the value of evect.
- Parameters
-
[in] handle rocblas_handle. [in] evect rocblas_evect.
Specifies how the eigenvectors are computed.[in] n rocblas_int. n >= 0.
The number of rows and columns of the tridiagonal matrix.[in,out] D pointer to real type. Array on the GPU of dimension n.
On entry, the diagonal elements of the tridiagonal matrix. On exit, if info = 0, the eigenvalues in increasing order. If info > 0, the diagonal elements of a tridiagonal matrix that is similar to the original matrix (i.e. has the same eigenvalues).[in,out] E pointer to real type. Array on the GPU of dimension n-1.
On entry, the off-diagonal elements of the tridiagonal matrix. On exit, if info = 0, this array converges to zero. If info > 0, the off-diagonal elements of a tridiagonal matrix that is similar to the original matrix (i.e. has the same eigenvalues).[in,out] C pointer to type. Array on the GPU of dimension ldc*n.
On entry, if evect is original, the orthogonal/unitary matrix used for the reduction to tridiagonal form as returned by, e.g., ORGTR or UNGTR. On exit, it is overwritten with the eigenvectors of the original symmetric/Hermitian matrix (if evect is original), or the eigenvectors of the tridiagonal matrix (if evect is tridiagonal). (Not referenced if evect is none).[in] ldc rocblas_int. ldc >= n if evect is original or tridiagonal.
Specifies the leading dimension of C. (Not referenced if evect is none).[out] info pointer to a rocblas_int on the GPU.
If info = 0, successful exit. If info = i > 0, STEQR did not converge. i elements of E did not converge to zero.
Member Function/Subroutine Documentation
◆ rocsolver_ssteqr_()
integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_ssteqr::rocsolver_ssteqr_ | ( | type(c_ptr), value | handle, |
integer(kind(rocblas_evect_original)), value | evect, | ||
integer(c_int), value | n, | ||
type(c_ptr), value | D, | ||
type(c_ptr), value | E, | ||
type(c_ptr), value | C, | ||
integer(c_int), value | ldc, | ||
integer(c_int) | myInfo | ||
) |
◆ rocsolver_ssteqr_full_rank()
integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_ssteqr::rocsolver_ssteqr_full_rank | ( | type(c_ptr) | handle, |
integer(kind(rocblas_evect_original)) | evect, | ||
integer(c_int) | n, | ||
real(c_float), dimension(:), target | D, | ||
real(c_float), dimension(:), target | E, | ||
real(c_float), dimension(:,:), target | C, | ||
integer(c_int) | ldc, | ||
integer(c_int) | myInfo | ||
) |
◆ rocsolver_ssteqr_rank_0()
integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_ssteqr::rocsolver_ssteqr_rank_0 | ( | type(c_ptr) | handle, |
integer(kind(rocblas_evect_original)) | evect, | ||
integer(c_int) | n, | ||
real(c_float), target | D, | ||
real(c_float), target | E, | ||
real(c_float), target | C, | ||
integer(c_int) | ldc, | ||
integer(c_int) | myInfo | ||
) |
◆ rocsolver_ssteqr_rank_1()
integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_ssteqr::rocsolver_ssteqr_rank_1 | ( | type(c_ptr) | handle, |
integer(kind(rocblas_evect_original)) | evect, | ||
integer(c_int) | n, | ||
real(c_float), dimension(:), target | D, | ||
real(c_float), dimension(:), target | E, | ||
real(c_float), dimension(:), target | C, | ||
integer(c_int) | ldc, | ||
integer(c_int) | myInfo | ||
) |
The documentation for this interface was generated from the following file: