rocsolver_sgehd2 Interface Reference#
The GEHD2 functions compute the upper Hessenberg form of a general square matrix A.
More...
Public Member Functions | |
| integer(c_int) function | rocsolver_sgehd2_ (handle, n, ilo, ihi, a, lda, tau) |
| integer(kind(rocblas_status_success)) function | rocsolver_sgehd2_rank_0 (handle, n, ilo, ihi, a, lda, tau) |
| integer(kind(rocblas_status_success)) function | rocsolver_sgehd2_rank_1 (handle, n, ilo, ihi, a, lda, tau) |
| integer(kind(rocblas_status_success)) function | rocsolver_sgehd2_full_rank (handle, n, ilo, ihi, a, lda, tau) |
Detailed Description
The GEHD2 functions compute the upper Hessenberg form of a general square matrix A.
(This is the unblocked version of the algorithm.)
The upper Hessenberg form is given by:
\[ H = Q^H A Q \]
where \(H\) is an upper Hessenberg matrix, and \(Q\) is an n -by-n orthogonal/unitary matrix represented as the product of \((ihi-ilo)\) Householder matrices
\[ Q = H(ilo)H(ilo+1)\cdots H(ihi-1) \]
Each Householder matrix \(H(i)\) is given by
\[ H(i) = I - \text{tau}[i] \cdot v_i^{} v_i^H \]
where the first i elements of the Householder vector \(v_i\) are zero, and \(v_i[i+1] = 1\).
- Parameters
-
[in] handle - rocblas_handle. [in] n - rocblas_int. n >= 0. The number of rows and columns of the matrix A. [in] ilo - rocblas_int. 1 <= ilo <= ihi. The starting 1-based index of the row and column to be reduced. [in] ihi - rocblas_int. ilo <= ihi <= n. The ending 1-based index of the row and column to be reduced. [in,out] A - pointer to type. Array on the GPU of dimension lda*n. On entry, the n-by-n matrix to be reduced. On exit, the elements on and above the first subdiagonal contain the upper Hessenberg form H, and the elements below the first subdiagonal are the last ihi - i - 1 elements of Householder vector v_i. [in] lda - rocblas_int. lda >= n. Specifies the leading dimension of A. [out] tau - pointer to type. Array on the GPU of dimension n-1. The Householder scalars.
Member Function/Subroutine Documentation
◆ rocsolver_sgehd2_()
| integer(c_int) function hipfort_rocsolver::rocsolver_sgehd2::rocsolver_sgehd2_ | ( | type(c_ptr), value | handle, |
| integer(c_int), value | n, | ||
| integer(c_int), value | ilo, | ||
| integer(c_int), value | ihi, | ||
| type(c_ptr), value | a, | ||
| integer(c_int), value | lda, | ||
| type(c_ptr), value | tau | ||
| ) |
◆ rocsolver_sgehd2_full_rank()
| integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_sgehd2::rocsolver_sgehd2_full_rank | ( | type(c_ptr), value | handle, |
| integer(c_int) | n, | ||
| integer(c_int) | ilo, | ||
| integer(c_int) | ihi, | ||
| real(c_float), dimension(:,:), target | a, | ||
| integer(c_int) | lda, | ||
| real(c_float), dimension(:), target | tau | ||
| ) |
◆ rocsolver_sgehd2_rank_0()
| integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_sgehd2::rocsolver_sgehd2_rank_0 | ( | type(c_ptr), value | handle, |
| integer(c_int) | n, | ||
| integer(c_int) | ilo, | ||
| integer(c_int) | ihi, | ||
| real(c_float), target | a, | ||
| integer(c_int) | lda, | ||
| real(c_float), target | tau | ||
| ) |
◆ rocsolver_sgehd2_rank_1()
| integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_sgehd2::rocsolver_sgehd2_rank_1 | ( | type(c_ptr), value | handle, |
| integer(c_int) | n, | ||
| integer(c_int) | ilo, | ||
| integer(c_int) | ihi, | ||
| real(c_float), dimension(:), target | a, | ||
| integer(c_int) | lda, | ||
| real(c_float), dimension(:), target | tau | ||
| ) |
The documentation for this interface was generated from the following file: