Visible to Intel only — GUID: GUID-D033DE50-2471-422A-B144-FF6CD37B2472
Visible to Intel only — GUID: GUID-D033DE50-2471-422A-B144-FF6CD37B2472
?larfx
Applies an elementary reflector to a general rectangular matrix, with loop unrolling when the reflector has order less than or equal to 10.
Syntax
call slarfx( side, m, n, v, tau, c, ldc, work )
call dlarfx( side, m, n, v, tau, c, ldc, work )
call clarfx( side, m, n, v, tau, c, ldc, work )
call zlarfx( side, m, n, v, tau, c, ldc, work )
Include Files
- mkl.fi
Description
The routine ?larfx applies a real/complex elementary reflector H to a real/complex m-by-n matrix C, from either the left or the right.
H is represented in the following forms:
H = I - tau*v*vT, where tau is a real scalar and v is a real vector.
H = I - tau*v*vH, where tau is a complex scalar and v is a complex vector.
If tau = 0, then H is taken to be the unit matrix.
Input Parameters
The data types are given for the Fortran interface.
- side
-
CHARACTER*1.
If side = 'L': form H*C
If side = 'R': form C*H.
- m
-
INTEGER. The number of rows of the matrix C.
- n
-
INTEGER. The number of columns of the matrix C.
- v
-
REAL for slarfx
DOUBLE PRECISION for dlarfx
COMPLEX for clarfx
DOUBLE COMPLEX for zlarfx
Array, size
(m) if side = 'L' or
(n) if side = 'R'.
The vector v in the representation of H.
- tau
-
REAL for slarfx
DOUBLE PRECISION for dlarfx
COMPLEX for clarfx
DOUBLE COMPLEX for zlarfx
The value tau in the representation of H.
- c
-
REAL for slarfx
DOUBLE PRECISION for dlarfx
COMPLEX for clarfx
DOUBLE COMPLEX for zlarfx
Array, size ldc by n. On entry, the m-by-n matrix C.
- ldc
-
INTEGER. The leading dimension of the array c. lda≥ (1,m).
- work
-
REAL for slarfx
DOUBLE PRECISION for dlarfx
COMPLEX for clarfx
DOUBLE COMPLEX for zlarfx
Workspace array, size
(n) if side = 'L' or
(m) if side = 'R'.
work is not referenced if H has order < 11.
Output Parameters
- c
-
On exit, C is overwritten by the matrix H*C if side = 'L', or C*H if side = 'R'.