rocsolver_sgehd2 Interface Reference

rocsolver_sgehd2 Interface Reference#

hipFORT API Reference: hipfort_rocsolver::rocsolver_sgehd2 Interface Reference
hipfort_rocsolver::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: