Developer Reference for Intel® oneAPI Math Kernel Library for Fortran
?larfy
Applies an elementary reflector, or Householder matrix, H, to an n by n symmetric or Hermitian matrix C, from both the left and the right.
Syntax
call slarfy(uplo, n, v, incv, tau, C, ldc, work)
call dlarfy(uplo, n, v, incv, tau, C, ldc, work)
call clarfy(uplo, n, v, incv, tau, C, ldc, work)
call zlarfy(uplo, n, v, incv, tau, C, ldc, work)
Description
?larfy applies an elementary reflector, or Householder matrix, H, to an n by n symmetric or Hermitian matrix C, from both the left and the right. H is represented in the form H = I - tau * v * vT (for real flavors) or H = I - tau * v * vH (for complex flavors), where tau is a scalar and v is a vector. If tau is zero, H is taken to be the unit matrix.
Input Parameters
- uplo
-
CHARACTER*1 Specifies whether the upper or lower triangular part of the symmetric or Hermitian matrix C is stored.
- n
-
INTEGER The number of rows and columns of the matrix C. n ≥ 0.
- v
-
REAL for slarfy DOUBLE PRECISION for dlarfy COMPLEX for clarfy COMPLEX*16 for zlarfy Array, dimension (1 + ( n- 1)*abs( incv )). The vector v as described above.
- incv
-
INTEGER The increment between successive elements of v. incv must not be zero.
- tau
-
REAL for slarfy DOUBLE PRECISION for dlarfy COMPLEX for clarfy COMPLEX*16 for zlarfy The value tau as described above.
- C
-
REAL for slarfy DOUBLE PRECISION for dlarfy COMPLEX for clarfy COMPLEX*16 for zlarfy Array, dimension ( ldc , n ). On entry, the matrix C.
- ldc
-
INTEGER The leading dimension of the array C . ldc ≥ max( 1, n ).
Output Parameters
- C
-
REAL for slarfy DOUBLE PRECISION for dlarfy COMPLEX for clarfy COMPLEX*16 for zlarfy On exit, C is overwritten by H * C * H T (for real flavors) or H * C * H H (for complex flavors).
- work
-
REAL for slarfy DOUBLE PRECISION for dlarfy COMPLEX for clarfy COMPLEX*16 for zlarfy Array, dimension ( n ).