Applies an elementary reflector (as returned by ?tzrzf) to a general matrix.
call slarz( side, m, n, l, v, incv, tau, c, ldc, work )
call dlarz( side, m, n, l, v, incv, tau, c, ldc, work )
call clarz( side, m, n, l, v, incv, tau, c, ldc, work )
call zlarz( side, m, n, l, v, incv, tau, c, ldc, work )
The FORTRAN 77 interfaces are specified in the mkl_lapack.fi include file (to be used in Fortran programs) and in the mkl_lapack.h include file (to be used in C programs).
The routine ?larz 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 form
H = I-tau*v*v',
where tau is a real/complex scalar and v is a real/complex vector.
If tau = 0, then H is taken to be the unit matrix.
For complex flavors, to apply HH (the conjugate transpose of H), supply conjg(tau) instead of tau.
H is a product of k elementary reflectors as returned by ?tzrzf.
CHARACTER*1.
If side = 'L': form H*C
If side = 'R': form C*H
INTEGER. The number of rows of the matrix C.
INTEGER. The number of columns of the matrix C.
INTEGER. The number of entries of the vector v containing the meaningful part of the Householder vectors.
If side = 'L', m ≥ L ≥ 0,
if side = 'R', n ≥ L ≥ 0.
REAL for slarz
DOUBLE PRECISION for dlarz
COMPLEX for clarz
COMPLEX*16 for zlarz
Array, DIMENSION (1+(l-1)*abs(incv)).
The vector v in the representation of H as returned by ?tzrzf.
v is not used if tau = 0.
INTEGER. The increment between elements of v.
incv ≠ 0.
REAL for slarz
DOUBLE PRECISION for dlarz
COMPLEX for clarz
COMPLEX*16 for zlarz
The value tau in the representation of H.
REAL for slarz
DOUBLE PRECISION for dlarz
COMPLEX for clarz
COMPLEX*16 for zlarz
Array, DIMENSION (ldc,n).
On entry, the m-by-n matrix C.
INTEGER. The leading dimension of the array c.
ldc ≥ max(1,m).
REAL for slarz
DOUBLE PRECISION for dlarz
COMPLEX for clarz
COMPLEX*16 for zlarz
Workspace array, DIMENSION
(n) if side = 'L' or
(m) if side = 'R'.
Copyright © 1994 - 2010, Intel Corporation. All rights reserved.