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
lapack_int LAPACKE_slarfx (int matrix_layout , char side , lapack_int m , lapack_int n , const float * v , float tau , float * c , lapack_int ldc , float * work );
lapack_int LAPACKE_dlarfx (int matrix_layout , char side , lapack_int m , lapack_int n , const double * v , double tau , double * c , lapack_int ldc , double * work );
lapack_int LAPACKE_clarfx (int matrix_layout , char side , lapack_int m , lapack_int n , const lapack_complex_float * v , lapack_complex_float tau , lapack_complex_float * c , lapack_int ldc , lapack_complex_float * work );
lapack_int LAPACKE_zlarfx (int matrix_layout , char side , lapack_int m , lapack_int n , const lapack_complex_double * v , lapack_complex_double tau , lapack_complex_double * c , lapack_int ldc , lapack_complex_double * work );
Include Files
- mkl.h
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
A <datatype> placeholder, if present, is used for the C interface data types in the C interface section above. See C Interface Conventions for the C interface principal conventions and type definitions.
- side
-
If side = 'L': form H*C
If side = 'R': form C*H.
- m
-
The number of rows of the matrix C.
- n
-
The number of columns of the matrix C.
- v
-
Array, size
(m) if side = 'L' or
(n) if side = 'R'.
The vector v in the representation of H.
- tau
-
The value tau in the representation of H.
- c
-
Array, size at least max(1, ldc*n) for column major layout and max (1, ldc*m) for row major layout. On entry, the m-by-n matrix C.
- ldc
-
The leading dimension of the array c. lda≥ (1,m).
- work
-
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'.